decocms 4.170.6 → 4.170.7
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/client/assets/{AlertCircle-BGl5ighK.js → AlertCircle-CulgZ8QJ.js} +1 -1
- package/dist/client/assets/{AreaChart-T2w6v7ql.js → AreaChart-CjNWeGy-.js} +1 -1
- package/dist/client/assets/{ArrowUp-CFKeYwqA.js → ArrowUp-BNlXyeba.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-Dt7ni8hD.js → ArrowUpRight-LKpl92jJ.js} +1 -1
- package/dist/client/assets/{Check-XFhUqf8U.js → Check-BARPKH4i.js} +1 -1
- package/dist/client/assets/{CheckCircle-Beg-_WPP.js → CheckCircle-D1nzBDyQ.js} +1 -1
- package/dist/client/assets/{ChevronDown-50yl4oIw.js → ChevronDown-DWFAk7Sj.js} +1 -1
- package/dist/client/assets/{ChevronRight-O2B2rAg8.js → ChevronRight-D2we6V0w.js} +1 -1
- package/dist/client/assets/{ChevronUp-C_V9zxcD.js → ChevronUp-BUAALiuR.js} +1 -1
- package/dist/client/assets/{Copy01-CAs5aPtG.js → Copy01-BfeEcGku.js} +1 -1
- package/dist/client/assets/{CpuChip01-B5F79sww.js → CpuChip01-T6rvb3sG.js} +1 -1
- package/dist/client/assets/{DotsVertical-_UckeHmI.js → DotsVertical-B-CRgbLm.js} +1 -1
- package/dist/client/assets/{Eye-B6aQvm7I.js → Eye-BCIudvRR.js} +1 -1
- package/dist/client/assets/{FilterLines-O8vfNPK0.js → FilterLines-P6wvStsn.js} +1 -1
- package/dist/client/assets/{HardDrive-CSF6kWer.js → HardDrive-BTCEoaQS.js} +1 -1
- package/dist/client/assets/{Key01-Boase60D.js → Key01-BgjJ_7Tp.js} +1 -1
- package/dist/client/assets/{LayoutLeft-B1QA8TOx.js → LayoutLeft-BXm6OADq.js} +1 -1
- package/dist/client/assets/{LinkExternal01-wcFp3Fli.js → LinkExternal01-BSoFyTEM.js} +1 -1
- package/dist/client/assets/{LogOut01-Do_0Tqip.js → LogOut01-BFFFOC3O.js} +1 -1
- package/dist/client/assets/{Monitor01--21gWGku.js → Monitor01-vTIk29qo.js} +1 -1
- package/dist/client/assets/{Palette-BRQYUWid.js → Palette-Bj8tHSPy.js} +1 -1
- package/dist/client/assets/{Play-BpEYYFMZ.js → Play-C7jD9LUn.js} +1 -1
- package/dist/client/assets/{Plus-KCSkpE7B.js → Plus-C0UcTMnT.js} +1 -1
- package/dist/client/assets/{SearchLg-weNBVZ4Z.js → SearchLg-CmIsAQ3X.js} +1 -1
- package/dist/client/assets/{SearchMd-9t27WW0h.js → SearchMd-D9uAX6WE.js} +1 -1
- package/dist/client/assets/{Settings02-DXgUkSaK.js → Settings02-DlOlugQT.js} +1 -1
- package/dist/client/assets/{Shield01-CQrsE2Tq.js → Shield01-CL48sD_B.js} +1 -1
- package/dist/client/assets/{Star01-CyHWKvpI.js → Star01-3tCE1-gw.js} +1 -1
- package/dist/client/assets/{Stars01-Bfwum3J3.js → Stars01-9A2GWUug.js} +1 -1
- package/dist/client/assets/{Stars02-hzTJtSUN.js → Stars02-DDwOVsF7.js} +1 -1
- package/dist/client/assets/{Sun-_y1aT31G.js → Sun-JQjP1oZn.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-B1iilh1T.js → SwitchHorizontal01-Dhz2JYYr.js} +1 -1
- package/dist/client/assets/{Tool01-DtW2gfBS.js → Tool01-CdS8kLw-.js} +1 -1
- package/dist/client/assets/{Tool02-Dt0sAKBi.js → Tool02-BBoyH47I.js} +1 -1
- package/dist/client/assets/{Trash01-B3C_Qnqh.js → Trash01-CbhzcTt3.js} +1 -1
- package/dist/client/assets/{TrendUp01-BNK9-fkG.js → TrendUp01-CbREjIPK.js} +1 -1
- package/dist/client/assets/{Upload01-CxqBazIa.js → Upload01-BdeHM4jD.js} +1 -1
- package/dist/client/assets/{User01-BgnTJii8.js → User01-onkDisHt.js} +1 -1
- package/dist/client/assets/{Users01-CjGi1sKt.js → Users01-LJDrZYeK.js} +1 -1
- package/dist/client/assets/{Users03-CrZ8BG5V.js → Users03-DlmIRsEe.js} +1 -1
- package/dist/client/assets/{X-D-91LUkr.js → X-Bnb6DHrx.js} +1 -1
- package/dist/client/assets/{XCircle-Dqfs6zJW.js → XCircle-BN8DdobH.js} +1 -1
- package/dist/client/assets/{XClose-DkfDI0Ya.js → XClose-BvANZj6r.js} +1 -1
- package/dist/client/assets/{Zap-BGpFnOwn.js → Zap-BAm5KmZ-.js} +1 -1
- package/dist/client/assets/{ZapSquare-COK8Z6p_.js → ZapSquare-ISMHG_Ar.js} +1 -1
- package/dist/client/assets/{access-gate-CMzKna09.js → access-gate-B3wLJ69M.js} +1 -1
- package/dist/client/assets/{add-section-modal-0gB0am5u.js → add-section-modal-BnhGEfv-.js} +1 -1
- package/dist/client/assets/{agent-icon-DTWpfaUv.js → agent-icon-DtkqR39Z.js} +1 -1
- package/dist/client/assets/{agents-list-bnG-f-4w.js → agents-list-PJ_bNLJj.js} +1 -1
- package/dist/client/assets/{ai-providers-D1_DYk1t.js → ai-providers-C4NY0EwA.js} +1 -1
- package/dist/client/assets/{alert-DXKluUF_.js → alert-CHK1X07R.js} +1 -1
- package/dist/client/assets/{alert-dialog-m68nyvLc.js → alert-dialog-CK85XiHH.js} +1 -1
- package/dist/client/assets/{app-editor-KzORC3cY.js → app-editor-Cj7ZjZIH.js} +1 -1
- package/dist/client/assets/{auth-D1K3kq5l.js → auth-CUkNJsYC.js} +1 -1
- package/dist/client/assets/{auth-catchall-BEuCYqxb.js → auth-catchall-DdjpG5hQ.js} +1 -1
- package/dist/client/assets/{auth-entry-DK-xLjz3.js → auth-entry-DjFBaL_w.js} +1 -1
- package/dist/client/assets/{auth-split-layout-DSlsQB4t.js → auth-split-layout-Bz3Ntgbd.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-BJZGpecB.js → authenticate-and-persist-oauth--qKVSpxv.js} +1 -1
- package/dist/client/assets/{automation-list-row-Bx08NGLt.js → automation-list-row-CX3W9QjV.js} +1 -1
- package/dist/client/assets/{automation-runs-YVjmznzu.js → automation-runs-B8ZpZPVI.js} +1 -1
- package/dist/client/assets/{automations-BPeRBEjq.js → automations-Bzc-usOW.js} +1 -1
- package/dist/client/assets/{avatar-DvWDftqB.js → avatar-aQxHuIYg.js} +1 -1
- package/dist/client/assets/{badge-BUMIf0Ml.js → badge-CoVICL7-.js} +1 -1
- package/dist/client/assets/{block-document-bt-1D3OT.js → block-document-Ddgx5l89.js} +1 -1
- package/dist/client/assets/{brand-context-DLbvsuZl.js → brand-context-DV2evLJc.js} +1 -1
- package/dist/client/assets/{buckets-PzW-4bBS.js → buckets-CO8ytaDl.js} +1 -1
- package/dist/client/assets/{bulk-category-panel-CyUoOi7H.js → bulk-category-panel-Z-ncC8dg.js} +1 -1
- package/dist/client/assets/{calendar-BDXgO3W8.js → calendar-CPOzEjNP.js} +1 -1
- package/dist/client/assets/{capability-load-error-AvDtCdwA.js → capability-load-error-DEcgvDg0.js} +1 -1
- package/dist/client/assets/{card-DzGTj8nC.js → card-DkOcnaGU.js} +1 -1
- package/dist/client/assets/{category-editor-C3U1qk3_.js → category-editor-D7hycPUc.js} +1 -1
- package/dist/client/assets/{chat-context-DNbdUqx6.js → chat-context-ClBVfA1X.js} +1 -1
- package/dist/client/assets/{checkbox-CawHejtp.js → checkbox-DQk7Hn7H.js} +1 -1
- package/dist/client/assets/{cli-auth-success-D4d43DD2.js → cli-auth-success-DfFnrNz5.js} +1 -1
- package/dist/client/assets/{collection-detail-DNl-FNkp.js → collection-detail-C9mrOEh9.js} +1 -1
- package/dist/client/assets/{collection-display-button-D6yvS7Dq.js → collection-display-button-CsVUXmTq.js} +1 -1
- package/dist/client/assets/{collection-search-Dvzr6bxB.js → collection-search-BBHvvNML.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-D2Rrhmg5.js → collection-table-wrapper-BitF3J_w.js} +1 -1
- package/dist/client/assets/{collection-tabs-BmRzx03c.js → collection-tabs-33-bqtiz.js} +1 -1
- package/dist/client/assets/{command-DpSfg7db.js → command-mKOrJzrZ.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-o97RlK8d.js → commerce-onboarding-BdFh7WdD.js} +1 -1
- package/dist/client/assets/{companions-core-Ckx3OWvB.js → companions-core-B3zttn60.js} +1 -1
- package/dist/client/assets/{connect-BuTZtRg9.js → connect-DJcsNXGq.js} +1 -1
- package/dist/client/assets/{connection-DQpKO4Xe.js → connection-Dvuv7or_.js} +1 -1
- package/dist/client/assets/{connection-card-CD9NKO3K.js → connection-card-Cb2sDtSe.js} +1 -1
- package/dist/client/assets/{connection-detail-BYPDCNsG.js → connection-detail-DWiKqpES.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-BkdXd-D2.js → connection-form-helpers-BNRb0RFO.js} +1 -1
- package/dist/client/assets/{connections-zQBJyLGd.js → connections-CZxmMVwl.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-Dnihfra3.js → decopilot-sse-pool-qN274emC.js} +1 -1
- package/dist/client/assets/{dialog-CtnwWKwM.js → dialog-OnmvFj6U.js} +1 -1
- package/dist/client/assets/{domain-settings-CI1CQcUd.js → domain-settings-CzTLtd6K.js} +1 -1
- package/dist/client/assets/{drawer-BVqquu4q.js → drawer-Bbx4sGLc.js} +1 -1
- package/dist/client/assets/{dropdown-menu-BGugK2qR.js → dropdown-menu-BLoiIT66.js} +1 -1
- package/dist/client/assets/{empty-state-CBSpE2Uj.js → empty-state-B7EoOp90.js} +1 -1
- package/dist/client/assets/{extract-connection-data-DL70rQ_6.js → extract-connection-data-DPxnrIHs.js} +1 -1
- package/dist/client/assets/{file-explorer-Dbf1s_sD.js → file-explorer-DV-Ii_1B.js} +1 -1
- package/dist/client/assets/{form-DR38KL2W.js → form-B1FGpjqQ.js} +1 -1
- package/dist/client/assets/{general-DUeYXSMD.js → general-CevDlV2t.js} +1 -1
- package/dist/client/assets/{github-repo-picker-BhD2Zo7-.js → github-repo-picker-8IfA3bqL.js} +1 -1
- package/dist/client/assets/{hooks-CXYFKnXM.js → hooks-DkiICRiM.js} +4 -4
- package/dist/client/assets/{index-BWWLh4Um.js → index-0NQAslei.js} +1 -1
- package/dist/client/assets/{index-Zdp2cEyF.js → index-55ijbTTK.js} +1 -1
- package/dist/client/assets/{index-CNeG9xZE.js → index-Btt82SFt.js} +1 -1
- package/dist/client/assets/{index-AV5Q0w_h.js → index-C5Cl4k32.js} +1 -1
- package/dist/client/assets/{index-DArsFur5.js → index-CYXzKIGv.js} +1 -1
- package/dist/client/assets/{index-DcyJ_KTy.js → index-Cb4Y0Iqz.js} +1 -1
- package/dist/client/assets/{index-BtXaZS8G.js → index-CzLUG8CI.js} +5 -5
- package/dist/client/assets/{index-Ce0Auruj.js → index-DD19Xgi9.js} +3 -3
- package/dist/client/assets/{index-CUjzC1oW.js → index-DYJY_3X1.js} +3 -3
- package/dist/client/assets/{index-DBaKGixC.js → index-Dp2RJDLw.js} +1 -1
- package/dist/client/assets/{index-RRmkJud_.js → index-WRi6IFVD.js} +1 -1
- package/dist/client/assets/{index-redirect-Bruk5RBp.js → index-redirect-DHYukAPh.js} +1 -1
- package/dist/client/assets/{input-DnnpGkKX.js → input-B-xxZOKU.js} +1 -1
- package/dist/client/assets/{integration-icon-CYI0UnJJ.js → integration-icon-B63LIXOn.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-B0SWKt2Q.js → invite-member-dialog-CzB9sdOr.js} +1 -1
- package/dist/client/assets/{label-8sQd9VGH.js → label-DVBVPZn_.js} +1 -1
- package/dist/client/assets/{layout-Bw6vv6l4.js → layout-D-p7eb8T.js} +1 -1
- package/dist/client/assets/{login-Q8JCy4Gk.js → login-Cb_sr0ld.js} +1 -1
- package/dist/client/assets/{mcp-oauth-f9iD4BaF.js → mcp-oauth-DSZxQ3KG.js} +1 -1
- package/dist/client/assets/{members-C0ZHT_1Z.js → members-CpL2kgGq.js} +1 -1
- package/dist/client/assets/{monaco-editor-CD6O6U38.js → monaco-editor-DOx5PZhj.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-CCCQZ9Fn.js → monitoring-stats-row-WdbL1buD.js} +1 -1
- package/dist/client/assets/{multi-select-B5c9Yhpu.js → multi-select-CmB0E9HL.js} +1 -1
- package/dist/client/assets/{oauth-callback-wIiufHVT.js → oauth-callback-DC7VgOoE.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-DX_L_tfv.js → oauth-callback-ai-provider-DkHQn1xC.js} +1 -1
- package/dist/client/assets/{onboarding-CafiWazF.js → onboarding-CP4Xl5BT.js} +1 -1
- package/dist/client/assets/{org-layout-BOoVf_Q6.js → org-layout-Bp_cOzYu.js} +1 -1
- package/dist/client/assets/{organization-choice-DUrOxfld.js → organization-choice-DEYQjW76.js} +1 -1
- package/dist/client/assets/{orgs-B4QfxaeH.js → orgs-Cg-7TNHk.js} +1 -1
- package/dist/client/assets/{page-seo-form-DtVU0PxG.js → page-seo-form-D8Jl7JDX.js} +1 -1
- package/dist/client/assets/{popover-Cj0KqrSY.js → popover-CN7lQbJb.js} +1 -1
- package/dist/client/assets/{post-editor-lA9sctPj.js → post-editor-DnAqMACi.js} +1 -1
- package/dist/client/assets/{primitives-B16QDSRq.js → primitives-DM0CO-PV.js} +1 -1
- package/dist/client/assets/{profile-DJXWamrw.js → profile-TxFzmEwf.js} +1 -1
- package/dist/client/assets/project-app-view-wfKsnkAj.js +1 -0
- package/dist/client/assets/record-editor-BhH6MPJd.js +1 -0
- package/dist/client/assets/{redirect-editor-rZkCvwF2.js → redirect-editor-DI1TVrRf.js} +1 -1
- package/dist/client/assets/{registry-layout-CicvdeGP.js → registry-layout-Dd9v-lxw.js} +1 -1
- package/dist/client/assets/registry-xKh7pW67.js +2 -0
- package/dist/client/assets/{reports-BZr3N1to.js → reports-DT7pxKAL.js} +1 -1
- package/dist/client/assets/{require-capability-CBnKsCv5.js → require-capability-DEPjYfTb.js} +1 -1
- package/dist/client/assets/{required-auth-layout-BfzAS318.js → required-auth-layout-CvEEOnW2.js} +1 -1
- package/dist/client/assets/{reset-password-DUp4DNkx.js → reset-password-Zr4erJ5H.js} +1 -1
- package/dist/client/assets/{roles-CMtafLvT.js → roles-D4AXY1O0.js} +1 -1
- package/dist/client/assets/{search-input-iCXBXliJ.js → search-input-B7HrisdG.js} +1 -1
- package/dist/client/assets/{secrets-CiQQtYAp.js → secrets-BiVb_h2W.js} +1 -1
- package/dist/client/assets/{sections-editor-mDkErbzS.js → sections-editor-B4XrZ9ZW.js} +1 -1
- package/dist/client/assets/{select-Cf5sw-NL.js → select-Bo0WA9yd.js} +1 -1
- package/dist/client/assets/{select-model-MEvU5FyF.js → select-model-UN_W2kWz.js} +1 -1
- package/dist/client/assets/{self-tool-result-CNtN1Cfa.js → self-tool-result-ofSJsTC6.js} +1 -1
- package/dist/client/assets/{seo-editor-D2Hi7OjJ.js → seo-editor-EBMN1tFp.js} +1 -1
- package/dist/client/assets/{settings-layout-DtiIg5Rj.js → settings-layout-CTCpMgqD.js} +1 -1
- package/dist/client/assets/{settings-section-B4on_fER.js → settings-section-SjYGvsuZ.js} +1 -1
- package/dist/client/assets/{shell-controls-CV46q6o7.js → shell-controls-BAqugCQv.js} +1 -1
- package/dist/client/assets/{shell-layout-C9fpq0V8.js → shell-layout-ygdVGNeq.js} +1 -1
- package/dist/client/assets/{sidebar-DZRyO9Fu.js → sidebar-Cw1n8cPE.js} +1 -1
- package/dist/client/assets/{skeleton-mVQ5yppY.js → skeleton-C3mqHUgK.js} +1 -1
- package/dist/client/assets/{spinner-CxW_9APv.js → spinner-JIyCKCZR.js} +1 -1
- package/dist/client/assets/{sso-CQ8uPY5L.js → sso-DxGDFKtg.js} +1 -1
- package/dist/client/assets/{store-B1BmZjZW.js → store-UE0DxGe6.js} +1 -1
- package/dist/client/assets/store-registry-CsVvMWKp.js +2 -0
- package/dist/client/assets/{studio-tools-CmS7BNcR.js → studio-tools-BuHDDhrj.js} +1 -1
- package/dist/client/assets/{switch-7TQFddVf.js → switch-D0rt9_tw.js} +1 -1
- package/dist/client/assets/{tab-id-D2XJFPyy.js → tab-id-DojsBlVG.js} +1 -1
- package/dist/client/assets/{table-BOa6JWXF.js → table-B9vqd95o.js} +1 -1
- package/dist/client/assets/{tabs-ZJAwmfUK.js → tabs-D_KaPDCJ.js} +1 -1
- package/dist/client/assets/{textarea-DsocCxeK.js → textarea-DyydMtzS.js} +1 -1
- package/dist/client/assets/{toggle-group-DJaxlxEL.js → toggle-group-_sacxwJk.js} +1 -1
- package/dist/client/assets/{toolbar-Cx92eLpk.js → toolbar-Bnk-Y6Bk.js} +1 -1
- package/dist/client/assets/{tooltip-CArfcpnk.js → tooltip-Bg4lifNX.js} +1 -1
- package/dist/client/assets/{use-ai-providers-CqJWs_4B.js → use-ai-providers-BdqwOZhV.js} +1 -1
- package/dist/client/assets/{use-automations-D7xHpKWL.js → use-automations-DPh61wGk.js} +1 -1
- package/dist/client/assets/{use-autosave-B-xTTeYd.js → use-autosave-CNMKkcAa.js} +1 -1
- package/dist/client/assets/{use-capability-BLJUv44U.js → use-capability-C6EbtzXu.js} +1 -1
- package/dist/client/assets/{use-clock-tick-2avMlm_f.js → use-clock-tick-DIxeJR8K.js} +1 -1
- package/dist/client/assets/{use-connection-CAsaJp9E.js → use-connection-DEaoKOVa.js} +1 -1
- package/dist/client/assets/{use-copy-Dt4p5QOr.js → use-copy-BId4eX5b.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-BnYBn_4i.js → use-create-virtual-mcp-D9UPJWo2.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-C7nZBt3f.js → use-debounced-autosave-B3VRqTYF.js} +1 -1
- package/dist/client/assets/{use-debounced-value-C1QOQAtO.js → use-debounced-value-i9ZCSUX-.js} +1 -1
- package/dist/client/assets/{use-deco-credits-DA84JKXH.js → use-deco-credits-B_NEq58J.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-DZsviPrS.js → use-decopilot-events-CYCBMba3.js} +1 -1
- package/dist/client/assets/{use-delete-connection-BdLq1wVF.js → use-delete-connection-DGEuPXeT.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-BpF3NIMd.js → use-deployment-admin-CUuCBSxD.js} +1 -1
- package/dist/client/assets/{use-file-configs-daU8vwWC.js → use-file-configs-OhwXVJ_Q.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-Dc3N52L4.js → use-infinite-scroll-BwgDaFz3.js} +1 -1
- package/dist/client/assets/{use-join-requests-Cx3hJ6wX.js → use-join-requests-BtZRjEAs.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-MEBh8zA_.js → use-mcp-auth-status-DIV1qXsR.js} +1 -1
- package/dist/client/assets/{use-mcp-client-UeAQ9YgN.js → use-mcp-client-C6u6uWMn.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-wmaa4DjL.js → use-mcp-tools-BKnN90LQ.js} +1 -1
- package/dist/client/assets/{use-members-DUgeLbCs.js → use-members-BhDGuSrv.js} +1 -1
- package/dist/client/assets/{use-mobile-CV-pNUb6.js → use-mobile-CuBbFzjG.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-ChzrB1ZD.js → use-navigate-to-agent-CfiKyTiO.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-yxuFw5uC.js → use-org-auth-client-BdUdgOJA.js} +1 -1
- package/dist/client/assets/{use-org-sso-aU764qAJ.js → use-org-sso-BeUUySr2.js} +1 -1
- package/dist/client/assets/{use-organization-roles-Bfv_iU-9.js → use-organization-roles-DWzU2COa.js} +1 -1
- package/dist/client/assets/{use-organization-settings-C7tDUbh-.js → use-organization-settings-DCilCh9D.js} +1 -1
- package/dist/client/assets/{use-registry-connections-45HurGxs.js → use-registry-connections-DY5HXeca.js} +1 -1
- package/dist/client/assets/{use-secrets-CJgGQHsH.js → use-secrets-DyfpPIKJ.js} +1 -1
- package/dist/client/assets/{use-status-sounds-iy7R43uR.js → use-status-sounds-CtR-iJrK.js} +1 -1
- package/dist/client/assets/{use-tags-CO1WM3yG.js → use-tags-DB7y1K_X.js} +1 -1
- package/dist/client/assets/{use-view-mode--B0d8AL9.js → use-view-mode-D8FPxdi1.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-DJsJxcgI.js → use-virtual-mcp-CtAFuCva.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-CXglgl_n.js +1 -0
- package/dist/client/assets/{useQueries-MNq4iErN.js → useQueries--YSCqaIN.js} +1 -1
- package/dist/client/assets/{useRouterState-Bkw7ytQh.js → useRouterState-DTAdOPb-.js} +1 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-B6E2NwfD.js +1 -0
- package/dist/client/assets/{users-BPF-0qLg.js → users-DWvE_C1K.js} +1 -1
- package/dist/client/assets/{variant-calendar-DOdhXcS5.js → variant-calendar-CGU8zbxv.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-BTgX_5Kn.js → view-mode-toggle-DlDm54jJ.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +5 -5
- package/dist/server/server.js +5 -5
- package/package.json +1 -1
- package/dist/client/assets/project-app-view-BKRSMom2.js +0 -1
- package/dist/client/assets/record-editor-B9hwvS4r.js +0 -1
- package/dist/client/assets/registry-B49leyHW.js +0 -2
- package/dist/client/assets/store-registry-Ckp7aprw.js +0 -2
- package/dist/client/assets/useInfiniteQuery-BKVS2juv.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-CtHEFnp7.js +0 -1
package/dist/server/server.js
CHANGED
|
@@ -76,7 +76,7 @@ Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.ht
|
|
|
76
76
|
However, a future version may change this behavior to prefer the ENV static credentials.
|
|
77
77
|
Please ensure that your environment only sets either the AWS_PROFILE or the
|
|
78
78
|
AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
|
|
79
|
-
`),QE1=!0}throw new Ke.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.",{logger:$.logger,tryNextLink:!0})}return $.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),LR0($)()},async(Z)=>{$.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");let{ssoStartUrl:X,ssoAccountId:G,ssoRegion:Q,ssoRoleName:Y,ssoSession:J}=$;if(!X&&!G&&!Q&&!Y&&!J)throw new Ke.CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:$.logger});let{fromSSO:K}=await Promise.resolve().then(() => (kI0(),MI0));return K($)(Z)},async(Z)=>{$.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:X}=await Promise.resolve().then(() => (GE1(),XE1));return X($)(Z)},async(Z)=>{$.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:X}=await Promise.resolve().then(() => (V20(),S20));return X($)(Z)},async(Z)=>{$.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:X}=await Promise.resolve().then(() => (x20(),f20));return X($)(Z)},async()=>{return $.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await PF1($))()},async()=>{throw new Ke.CredentialsProviderError("Could not load credentials from any providers",{tryNextLink:!1,logger:$.logger})}],pH8),pH8=($)=>$?.expiration!==void 0&&$.expiration.getTime()-Date.now()<300000;var KE1=B(()=>{ER0();AF1();Ke=M(k6(),1),YE1=M(KX(),1)});var WE1=B(()=>{KE1()});var NE1=()=>{};var v_,tH8="AWS_S3_USE_ARN_REGION",oH8="s3_use_arn_region",HE1;var FE1=B(()=>{v_=M(jh(),1),HE1={environmentVariableSelector:($)=>v_.booleanSelector($,tH8,v_.SelectorType.ENV),configFileSelector:($)=>v_.booleanSelector($,oH8,v_.SelectorType.CONFIG),default:void 0}});var UE1=()=>{};var wE1=()=>{};var OE1=B(()=>{NE1();FE1();wE1();UE1()});class b_{bytes;constructor($){if(this.bytes=$,$.byteLength!==8)throw Error("Int64 buffers must be exactly 8 bytes")}static fromNumber($){if($>9223372036854776000||$<-9223372036854776000)throw Error(`${$} is too large (or, if negative, too small) to represent as an Int64`);let Z=new Uint8Array(8);for(let X=7,G=Math.abs(Math.round($));X>-1&&G>0;X--,G/=256)Z[X]=G;if($<0)BE1(Z);return new b_(Z)}valueOf(){let $=this.bytes.slice(0),Z=$[0]&128;if(Z)BE1($);return parseInt(DE1.toHex($),16)*(Z?-1:1)}toString(){return String(this.valueOf())}}function BE1($){for(let Z=0;Z<8;Z++)$[Z]^=255;for(let Z=7;Z>-1;Z--)if($[Z]++,$[Z]!==0)break}var DE1;var g20=B(()=>{DE1=M(og(),1)});class h20{toUtf8;fromUtf8;constructor($,Z){this.toUtf8=$,this.fromUtf8=Z}format($){let Z=[];for(let Q of Object.keys($)){let Y=this.fromUtf8(Q);Z.push(Uint8Array.from([Y.byteLength]),Y,this.formatHeaderValue($[Q]))}let X=new Uint8Array(Z.reduce((Q,Y)=>Q+Y.byteLength,0)),G=0;for(let Q of Z)X.set(Q,G),G+=Q.byteLength;return X}formatHeaderValue($){switch($.type){case"boolean":return Uint8Array.from([$.value?0:1]);case"byte":return Uint8Array.from([2,$.value]);case"short":let Z=new DataView(new ArrayBuffer(3));return Z.setUint8(0,3),Z.setInt16(1,$.value,!1),new Uint8Array(Z.buffer);case"integer":let X=new DataView(new ArrayBuffer(5));return X.setUint8(0,4),X.setInt32(1,$.value,!1),new Uint8Array(X.buffer);case"long":let G=new Uint8Array(9);return G[0]=5,G.set($.value.bytes,1),G;case"binary":let Q=new DataView(new ArrayBuffer(3+$.value.byteLength));Q.setUint8(0,6),Q.setUint16(1,$.value.byteLength,!1);let Y=new Uint8Array(Q.buffer);return Y.set($.value,3),Y;case"string":let J=this.fromUtf8($.value),K=new DataView(new ArrayBuffer(3+J.byteLength));K.setUint8(0,7),K.setUint16(1,J.byteLength,!1);let W=new Uint8Array(K.buffer);return W.set(J,3),W;case"timestamp":let N=new Uint8Array(9);return N[0]=8,N.set(b_.fromNumber($.value.valueOf()).bytes,1),N;case"uuid":if(!QF8.test($.value))throw Error(`Invalid UUID received: ${$.value}`);let H=new Uint8Array(17);return H[0]=9,H.set(YF.fromHex($.value.replace(/\-/g,"")),1),H}}parse($){let Z={},X=0;while(X<$.byteLength){let G=$.getUint8(X++),Q=this.toUtf8(new Uint8Array($.buffer,$.byteOffset+X,G));switch(X+=G,$.getUint8(X++)){case 0:Z[Q]={type:EE1,value:!0};break;case 1:Z[Q]={type:EE1,value:!1};break;case 2:Z[Q]={type:rH8,value:$.getInt8(X++)};break;case 3:Z[Q]={type:aH8,value:$.getInt16(X,!1)},X+=2;break;case 4:Z[Q]={type:sH8,value:$.getInt32(X,!1)},X+=4;break;case 5:Z[Q]={type:eH8,value:new b_(new Uint8Array($.buffer,$.byteOffset+X,8))},X+=8;break;case 6:let Y=$.getUint16(X,!1);X+=2,Z[Q]={type:$F8,value:new Uint8Array($.buffer,$.byteOffset+X,Y)},X+=Y;break;case 7:let J=$.getUint16(X,!1);X+=2,Z[Q]={type:ZF8,value:this.toUtf8(new Uint8Array($.buffer,$.byteOffset+X,J))},X+=J;break;case 8:Z[Q]={type:XF8,value:new Date(new b_(new Uint8Array($.buffer,$.byteOffset+X,8)).valueOf())},X+=8;break;case 9:let K=new Uint8Array($.buffer,$.byteOffset+X,16);X+=16,Z[Q]={type:GF8,value:`${YF.toHex(K.subarray(0,4))}-${YF.toHex(K.subarray(4,6))}-${YF.toHex(K.subarray(6,8))}-${YF.toHex(K.subarray(8,10))}-${YF.toHex(K.subarray(10))}`};break;default:throw Error("Unrecognized header type tag")}}return Z}}var YF,LE1,EE1="boolean",rH8="byte",aH8="short",sH8="integer",eH8="long",$F8="binary",ZF8="string",XF8="timestamp",GF8="uuid",QF8;var u20=B(()=>{g20();YF=M(og(),1);(function($){$[$.boolTrue=0]="boolTrue",$[$.boolFalse=1]="boolFalse",$[$.byte=2]="byte",$[$.short=3]="short",$[$.integer=4]="integer",$[$.long=5]="long",$[$.byteArray=6]="byteArray",$[$.string=7]="string",$[$.timestamp=8]="timestamp",$[$.uuid=9]="uuid"})(LE1||(LE1={}));QF8=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/});function PE1({byteLength:$,byteOffset:Z,buffer:X}){if($<YF8)throw Error("Provided message too short to accommodate event stream message overhead");let G=new DataView(X,Z,$),Q=G.getUint32(0,!1);if($!==Q)throw Error("Reported message length does not match received message length");let Y=G.getUint32(jE1,!1),J=G.getUint32(JF,!1),K=G.getUint32($-BB,!1),W=new zE1.Crc32().update(new Uint8Array(X,Z,JF));if(J!==W.digest())throw Error(`The prelude checksum specified in the message (${J}) does not match the calculated CRC32 checksum (${W.digest()})`);if(W.update(new Uint8Array(X,Z+JF,$-(JF+BB))),K!==W.digest())throw Error(`The message checksum (${W.digest()}) did not match the expected value of ${K}`);return{headers:new DataView(X,Z+JF+BB,Y),body:new Uint8Array(X,Z+JF+BB+Y,Q-Y-(JF+BB+BB))}}var zE1,jE1=4,JF,BB=4,YF8;var AE1=B(()=>{zE1=M(fO(),1),JF=jE1*2,YF8=JF+BB*2});class c20{headerMarshaller;messageBuffer;isEndOfStream;constructor($,Z){this.headerMarshaller=new h20($,Z),this.messageBuffer=[],this.isEndOfStream=!1}feed($){this.messageBuffer.push(this.decode($))}endOfStream(){this.isEndOfStream=!0}getMessage(){let $=this.messageBuffer.pop(),Z=this.isEndOfStream;return{getMessage(){return $},isEndOfStream(){return Z}}}getAvailableMessages(){let $=this.messageBuffer;this.messageBuffer=[];let Z=this.isEndOfStream;return{getMessages(){return $},isEndOfStream(){return Z}}}encode({headers:$,body:Z}){let X=this.headerMarshaller.format($),G=X.byteLength+Z.byteLength+16,Q=new Uint8Array(G),Y=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),J=new TE1.Crc32;return Y.setUint32(0,G,!1),Y.setUint32(4,X.byteLength,!1),Y.setUint32(8,J.update(Q.subarray(0,8)).digest(),!1),Q.set(X,12),Q.set(Z,X.byteLength+12),Y.setUint32(G-4,J.update(Q.subarray(8,G-4)).digest(),!1),Q}decode($){let{headers:Z,body:X}=PE1($);return{headers:this.headerMarshaller.parse(Z),body:X}}formatHeaders($){return this.headerMarshaller.format($)}}var TE1;var RE1=B(()=>{u20();AE1();TE1=M(fO(),1)});var IE1=()=>{};var l20;var qE1=B(()=>{l20=class l20{options;constructor($){this.options=$}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let $ of this.options.inputStream)yield this.options.decoder.decode($)}}});var d20;var ME1=B(()=>{d20=class d20{options;constructor($){this.options=$}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let $ of this.options.messageStream)yield this.options.encoder.encode($);if(this.options.includeEndFrame)yield new Uint8Array(0)}}});var m20;var kE1=B(()=>{m20=class m20{options;constructor($){this.options=$}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let $ of this.options.messageStream){let Z=await this.options.deserializer($);if(Z===void 0)continue;yield Z}}}});var i20;var SE1=B(()=>{i20=class i20{options;constructor($){this.options=$}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let $ of this.options.inputStream)yield this.options.serializer($)}}});var VE1=B(()=>{RE1();u20();g20();IE1();qE1();ME1();kE1();SE1()});function CE1($){let Z=0,X=0,G=null,Q=null,Y=(K)=>{if(typeof K!=="number")throw Error("Attempted to allocate an event message where size was not a number: "+K);Z=K,X=4,G=new Uint8Array(K),new DataView(G.buffer).setUint32(0,K,!1)},J=async function*(){let K=$[Symbol.asyncIterator]();while(!0){let{value:W,done:N}=await K.next();if(N){if(!Z)return;else if(Z===X)yield G;else throw Error("Truncated event message received.");return}let H=W.length,F=0;while(F<H){if(!G){let w=H-F;if(!Q)Q=new Uint8Array(4);let O=Math.min(4-X,w);if(Q.set(W.slice(F,F+O),X),X+=O,F+=O,X<4)break;Y(new DataView(Q.buffer).getUint32(0,!1)),Q=null}let U=Math.min(Z-X,H-F);if(G.set(W.slice(F,F+U),X),X+=U,F+=U,Z&&Z===X)yield G,G=null,Z=0,X=0}}};return{[Symbol.asyncIterator]:J}}function _E1($,Z){return async function(X){let{value:G}=X.headers[":message-type"];if(G==="error"){let Q=Error(X.headers[":error-message"].value||"UnknownError");throw Q.name=X.headers[":error-code"].value,Q}else if(G==="exception"){let Q=X.headers[":exception-type"].value,Y={[Q]:X},J=await $(Y);if(J.$unknown){let K=Error(Z(X.body));throw K.name=Q,K}throw J[Q]}else if(G==="event"){let Q={[X.headers[":event-type"].value]:X},Y=await $(Q);if(Y.$unknown)return;return Y}else throw Error(`Unrecognizable event type: ${X.headers[":event-type"].value}`)}}class n20{eventStreamCodec;utfEncoder;constructor({utf8Encoder:$,utf8Decoder:Z}){this.eventStreamCodec=new c20($,Z),this.utfEncoder=$}deserialize($,Z){let X=CE1($);return new m20({messageStream:new l20({inputStream:X,decoder:this.eventStreamCodec}),deserializer:_E1(Z,this.utfEncoder)})}serialize($,Z){return new d20({messageStream:new i20({inputStream:$,serializer:Z}),encoder:this.eventStreamCodec,includeEndFrame:!0})}}var vE1=B(()=>{VE1()});var bE1=()=>{};var fE1=B(()=>{vE1();bE1()});async function*xE1($){let Z=!1,X=!1,G=[];$.on("error",(Q)=>{if(!Z)Z=!0;if(Q)throw Q}),$.on("data",(Q)=>{G.push(Q)}),$.on("end",()=>{Z=!0});while(!X){let Q=await new Promise((Y)=>setTimeout(()=>Y(G.shift()),0));if(Q)yield Q;X=Z&&G.length===0}}import{Readable as JF8}from"stream";class p20{universalMarshaller;constructor({utf8Encoder:$,utf8Decoder:Z}){this.universalMarshaller=new n20({utf8Decoder:Z,utf8Encoder:$})}deserialize($,Z){let X=typeof $[Symbol.asyncIterator]==="function"?$:xE1($);return this.universalMarshaller.deserialize(X,Z)}serialize($,Z){return JF8.from(this.universalMarshaller.serialize($,Z))}}var t20=B(()=>{fE1()});var yE1=($)=>new p20($);var gE1=B(()=>{t20()});var hE1=B(()=>{t20();gE1()});import{Writable as KF8}from"stream";var uE1,o20;var cE1=B(()=>{uE1=M(fZ(),1);o20=class o20 extends KF8{hash;constructor($,Z){super(Z);this.hash=$}_write($,Z,X){try{this.hash.update(uE1.toUint8Array($))}catch(G){return X(G)}X()}}});var lE1=()=>{};var dE1=($,Z)=>{if(Z.readableFlowing!==null)throw Error("Unable to calculate hash for flowing readable stream");let X=new $,G=new o20(X);return Z.pipe(G),new Promise((Q,Y)=>{Z.on("error",(J)=>{G.end(),Y(J)}),G.on("error",Y),G.on("finish",()=>{X.digest().then(Q).catch(Y)})})};var mE1=B(()=>{cE1()});var iE1=B(()=>{lE1();mE1()});var We,nE1,pE1,tE1,oE1,Ne,He,Fe,rE1=($)=>{return{apiVersion:"2006-03-01",base64Decoder:$?.base64Decoder??Ne.fromBase64,base64Encoder:$?.base64Encoder??Ne.toBase64,disableHostPrefix:$?.disableHostPrefix??!1,endpointProvider:$?.endpointProvider??la,extensions:$?.extensions??[],getAwsChunkedEncodingStream:$?.getAwsChunkedEncodingStream??He.getAwsChunkedEncodingStream,httpAuthSchemeProvider:$?.httpAuthSchemeProvider??eK1,httpAuthSchemes:$?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:(Z)=>Z.getIdentityProvider("aws.auth#sigv4"),signer:new We.AwsSdkSigV4Signer},{schemeId:"aws.auth#sigv4a",identityProvider:(Z)=>Z.getIdentityProvider("aws.auth#sigv4a"),signer:new We.AwsSdkSigV4ASigner}],logger:$?.logger??new tE1.NoOpLogger,protocol:$?.protocol??nE1.S3RestXmlProtocol,protocolSettings:$?.protocolSettings??{defaultNamespace:"com.amazonaws.s3",errorTypeRegistries:YW1,xmlNamespace:"http://s3.amazonaws.com/doc/2006-03-01/",version:"2006-03-01",serviceTarget:"AmazonS3"},sdkStreamMixin:$?.sdkStreamMixin??He.sdkStreamMixin,serviceId:$?.serviceId??"S3",signerConstructor:$?.signerConstructor??pE1.SignatureV4MultiRegion,signingEscapePath:$?.signingEscapePath??!1,urlParser:$?.urlParser??oE1.parseUrl,useArnRegion:$?.useArnRegion??void 0,utf8Decoder:$?.utf8Decoder??Fe.fromUtf8,utf8Encoder:$?.utf8Encoder??Fe.toUtf8}};var aE1=B(()=>{QR0();GR0();X1();We=M(D7(),1),nE1=M(h1(),1),pE1=M(w_(),1),tE1=M(h0(),1),oE1=M(M3(),1),Ne=M(uX(),1),He=M(uC(),1),Fe=M(fZ(),1)});var sE1,we,eE1,Oe,KF,Ue,Be,rG,De,Le,$z1,Zz1,Xz1,Gz1=($)=>{Le.emitWarningIfUnsupportedVersion(process.version);let Z=Zz1.resolveDefaultsModeConfig($),X=()=>Z().then(Le.loadConfigsForDefaultMode),G=rE1($);sE1.emitWarningIfUnsupportedVersion(process.version);let Q={profile:$?.profile,logger:G.logger};return{...G,...$,runtime:"node",defaultsMode:Z,authSchemePreference:$?.authSchemePreference??rG.loadConfig(we.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,Q),bodyLengthChecker:$?.bodyLengthChecker??$z1.calculateBodyLength,credentialDefaultProvider:$?.credentialDefaultProvider??JE1,defaultUserAgentProvider:$?.defaultUserAgentProvider??Oe.createDefaultUserAgentProvider({serviceId:G.serviceId,clientVersion:fH1.version}),disableS3ExpressSessionAuth:$?.disableS3ExpressSessionAuth??rG.loadConfig(eE1.NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS,Q),eventStreamSerdeProvider:$?.eventStreamSerdeProvider??yE1,maxAttempts:$?.maxAttempts??rG.loadConfig(Be.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,$),md5:$?.md5??Ue.Hash.bind(null,"md5"),region:$?.region??rG.loadConfig(KF.NODE_REGION_CONFIG_OPTIONS,{...KF.NODE_REGION_CONFIG_FILE_OPTIONS,...Q}),requestChecksumCalculation:$?.requestChecksumCalculation??rG.loadConfig(m91,Q),requestHandler:De.NodeHttpHandler.create($?.requestHandler??X),responseChecksumValidation:$?.responseChecksumValidation??rG.loadConfig(n91,Q),retryMode:$?.retryMode??rG.loadConfig({...Be.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await X()).retryMode||Xz1.DEFAULT_RETRY_MODE},$),sha1:$?.sha1??Ue.Hash.bind(null,"sha1"),sha256:$?.sha256??Ue.Hash.bind(null,"sha256"),sigv4aSigningRegionSet:$?.sigv4aSigningRegionSet??rG.loadConfig(we.NODE_SIGV4A_CONFIG_OPTIONS,Q),streamCollector:$?.streamCollector??De.streamCollector,streamHasher:$?.streamHasher??dE1,useArnRegion:$?.useArnRegion??rG.loadConfig(HE1,Q),useDualstackEndpoint:$?.useDualstackEndpoint??rG.loadConfig(KF.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,Q),useFipsEndpoint:$?.useFipsEndpoint??rG.loadConfig(KF.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,Q),userAgentAppId:$?.userAgentAppId??rG.loadConfig(Oe.NODE_APP_ID_CONFIG_OPTIONS,Q)}};var Qz1=B(()=>{bH1();WE1();OE1();v4();hE1();iE1();aE1();sE1=M(p6(),1),we=M(D7(),1),eE1=M(h1(),1),Oe=M(j_(),1),KF=M(dX(),1),Ue=M(P_(),1),Be=M($J(),1),rG=M(eY(),1),De=M(gH(),1),Le=M(h0(),1),$z1=M(A_(),1),Zz1=M(T_(),1),Xz1=M(TW(),1)});var Yz1=($)=>{let{httpAuthSchemes:Z,httpAuthSchemeProvider:X,credentials:G}=$;return{setHttpAuthScheme(Q){let Y=Z.findIndex((J)=>J.schemeId===Q.schemeId);if(Y===-1)Z.push(Q);else Z.splice(Y,1,Q)},httpAuthSchemes(){return Z},setHttpAuthSchemeProvider(Q){X=Q},httpAuthSchemeProvider(){return X},setCredentials(Q){G=Q},credentials(){return G}}},Jz1=($)=>{return{httpAuthSchemes:$.httpAuthSchemes(),httpAuthSchemeProvider:$.httpAuthSchemeProvider(),credentials:$.credentials()}};var Ee,ze,je,Kz1=($,Z)=>{let X=Object.assign(Ee.getAwsRegionExtensionConfiguration($),je.getDefaultExtensionConfiguration($),ze.getHttpHandlerExtensionConfiguration($),Yz1($));return Z.forEach((G)=>G.configure(X)),Object.assign($,Ee.resolveAwsRegionExtensionConfiguration(X),je.resolveDefaultRuntimeConfig(X),ze.resolveHttpHandlerRuntimeConfig(X),Jz1(X))};var Wz1=B(()=>{Ee=M(sO(),1),ze=M(M6(),1),je=M(h0(),1)});var Pe,Nz1,Hz1,_3,Ae,Fz1,f_,Uz1,wz1,Oz1,Te,Bz1,HX;var DB=B(()=>{l91();v4();pJ1();QR0();Ks();G1();Qz1();Wz1();Pe=M(nC(),1),Nz1=M(pC(),1),Hz1=M(tC(),1),_3=M(h1(),1),Ae=M(nO(),1),Fz1=M(dX(),1),f_=M(g9(),1),Uz1=M(w7(),1),wz1=M(N_(),1),Oz1=M(r0(),1),Te=M($J(),1),Bz1=M(h0(),1);HX=class HX extends Bz1.Client{config;constructor(...[$]){let Z=Gz1($||{});super(Z);this.initConfig=Z;let X=ZW1(Z),G=Ae.resolveUserAgentConfig(X),Q=zG1(G),Y=Te.resolveRetryConfig(Q),J=Fz1.resolveRegionConfig(Y),K=Pe.resolveHostHeaderConfig(J),W=Oz1.resolveEndpointConfig(K),N=nJ1(W),H=$W1(N),F=_3.resolveS3Config(H,{session:[()=>this,_h]}),U=Kz1(F,$?.extensions||[]);this.config=U,this.middlewareStack.use(Uz1.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(Ae.getUserAgentPlugin(this.config)),this.middlewareStack.use(Te.getRetryPlugin(this.config)),this.middlewareStack.use(wz1.getContentLengthPlugin(this.config)),this.middlewareStack.use(Pe.getHostHeaderPlugin(this.config)),this.middlewareStack.use(Nz1.getLoggerPlugin(this.config)),this.middlewareStack.use(Hz1.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(f_.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:rK1,identityProviderConfigProvider:async(w)=>new f_.DefaultIdentityProviderConfig({"aws.auth#sigv4":w.credentials,"aws.auth#sigv4a":w.credentials})})),this.middlewareStack.use(f_.getHttpSigningPlugin(this.config)),this.middlewareStack.use(_3.getValidateBucketNamePlugin(this.config)),this.middlewareStack.use(c91(this.config)),this.middlewareStack.use(_3.getRegionRedirectMiddlewarePlugin(this.config)),this.middlewareStack.use(_3.getS3ExpressPlugin(this.config)),this.middlewareStack.use(_3.getS3ExpressHttpSigningPlugin(this.config))}destroy(){super.destroy()}}});var Dz1,Lz1,Ez1,eh;var r20=B(()=>{G1();X1();Dz1=M(h1(),1),Lz1=M(r0(),1),Ez1=M(h0(),1);eh=class eh extends Ez1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[Lz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Dz1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","AbortMultipartUpload",{}).n("S3Client","AbortMultipartUploadCommand").sc(_W1).build(){}});function WF8($){return(Z)=>async(X)=>{let G={...X.input},Q=[{target:"SSECustomerKey",hash:"SSECustomerKeyMD5"},{target:"CopySourceSSECustomerKey",hash:"CopySourceSSECustomerKeyMD5"}];for(let Y of Q){let J=G[Y.target];if(J){let K;if(typeof J==="string")if(HF8(J,$))K=$.base64Decoder(J);else K=$.utf8Decoder(J),G[Y.target]=$.base64Encoder(K);else K=ArrayBuffer.isView(J)?new Uint8Array(J.buffer,J.byteOffset,J.byteLength):new Uint8Array(J),G[Y.target]=$.base64Encoder(K);let W=new $.md5;W.update(K),G[Y.hash]=$.base64Encoder(await W.digest())}}return Z({...X,input:G})}}function HF8($,Z){if(!/^(?:[A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test($))return!1;try{return Z.base64Decoder($).length===32}catch{return!1}}var NF8,g5=($)=>({applyToStack:(Z)=>{Z.add(WF8($),NF8)}});var pQ=B(()=>{NF8={name:"ssecMiddleware",step:"initialize",tags:["SSE"],override:!0}});var zz1,jz1,Pz1,$u;var a20=B(()=>{pQ();G1();X1();zz1=M(h1(),1),jz1=M(r0(),1),Pz1=M(h0(),1);$u=class $u extends Pz1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[jz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),zz1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","CompleteMultipartUpload",{}).n("S3Client","CompleteMultipartUploadCommand").sc(vW1).build(){}});var Az1,Tz1,Rz1,s20;var e20=B(()=>{pQ();G1();X1();Az1=M(h1(),1),Tz1=M(r0(),1),Rz1=M(h0(),1);s20=class s20 extends Rz1.Command.classBuilder().ep({...Q0,DisableS3ExpressSessionAuth:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"},CopySource:{type:"contextParams",name:"CopySource"}}).m(function($,Z,X,G){return[Tz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Az1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","CopyObject",{}).n("S3Client","CopyObjectCommand").sc(bW1).build(){}});function FF8($){return(Z)=>async(X)=>{let{CreateBucketConfiguration:G}=X.input,Q=await $.region();if(!G?.LocationConstraint&&!G?.Location){if(Q!=="us-east-1")X.input.CreateBucketConfiguration=X.input.CreateBucketConfiguration??{},X.input.CreateBucketConfiguration.LocationConstraint=Q}return Z(X)}}var UF8,Iz1=($)=>({applyToStack:(Z)=>{Z.add(FF8($),UF8)}});var qz1=B(()=>{UF8={step:"initialize",tags:["LOCATION_CONSTRAINT","CREATE_BUCKET_CONFIGURATION"],name:"locationConstraintMiddleware",override:!0}});var Mz1,kz1,Sz1,$q0;var Zq0=B(()=>{qz1();G1();X1();Mz1=M(h1(),1),kz1=M(r0(),1),Sz1=M(h0(),1);$q0=class $q0 extends Sz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},DisableAccessPoints:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[kz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Mz1.getThrow200ExceptionsPlugin(X),Iz1(X)]}).s("AmazonS3","CreateBucket",{}).n("S3Client","CreateBucketCommand").sc(fW1).build(){}});var Vz1,Cz1,Xq0;var Gq0=B(()=>{v4();G1();X1();Vz1=M(r0(),1),Cz1=M(h0(),1);Xq0=class Xq0 extends Cz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Vz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","CreateBucketMetadataConfiguration",{}).n("S3Client","CreateBucketMetadataConfigurationCommand").sc(xW1).build(){}});var _z1,vz1,Qq0;var Yq0=B(()=>{v4();G1();X1();_z1=M(r0(),1),vz1=M(h0(),1);Qq0=class Qq0 extends vz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[_z1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","CreateBucketMetadataTableConfiguration",{}).n("S3Client","CreateBucketMetadataTableConfigurationCommand").sc(yW1).build(){}});var bz1,fz1,xz1,Zu;var Jq0=B(()=>{pQ();G1();X1();bz1=M(h1(),1),fz1=M(r0(),1),xz1=M(h0(),1);Zu=class Zu extends xz1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[fz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),bz1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","CreateMultipartUpload",{}).n("S3Client","CreateMultipartUploadCommand").sc(gW1).build(){}});var yz1,gz1,Kq0;var Wq0=B(()=>{G1();X1();yz1=M(r0(),1),gz1=M(h0(),1);Kq0=class Kq0 extends gz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[yz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketAnalyticsConfiguration",{}).n("S3Client","DeleteBucketAnalyticsConfigurationCommand").sc(cW1).build(){}});var hz1,uz1,Nq0;var Hq0=B(()=>{G1();X1();hz1=M(r0(),1),uz1=M(h0(),1);Nq0=class Nq0 extends uz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[hz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucket",{}).n("S3Client","DeleteBucketCommand").sc(uW1).build(){}});var cz1,lz1,Fq0;var Uq0=B(()=>{G1();X1();cz1=M(r0(),1),lz1=M(h0(),1);Fq0=class Fq0 extends lz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[cz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketCors",{}).n("S3Client","DeleteBucketCorsCommand").sc(lW1).build(){}});var dz1,mz1,wq0;var Oq0=B(()=>{G1();X1();dz1=M(r0(),1),mz1=M(h0(),1);wq0=class wq0 extends mz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[dz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketEncryption",{}).n("S3Client","DeleteBucketEncryptionCommand").sc(dW1).build(){}});var iz1,nz1,Bq0;var Dq0=B(()=>{G1();X1();iz1=M(r0(),1),nz1=M(h0(),1);Bq0=class Bq0 extends nz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[iz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketIntelligentTieringConfiguration",{}).n("S3Client","DeleteBucketIntelligentTieringConfigurationCommand").sc(mW1).build(){}});var pz1,tz1,Lq0;var Eq0=B(()=>{G1();X1();pz1=M(r0(),1),tz1=M(h0(),1);Lq0=class Lq0 extends tz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[pz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketInventoryConfiguration",{}).n("S3Client","DeleteBucketInventoryConfigurationCommand").sc(iW1).build(){}});var oz1,rz1,zq0;var jq0=B(()=>{G1();X1();oz1=M(r0(),1),rz1=M(h0(),1);zq0=class zq0 extends rz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[oz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketLifecycle",{}).n("S3Client","DeleteBucketLifecycleCommand").sc(nW1).build(){}});var az1,sz1,Pq0;var Aq0=B(()=>{G1();X1();az1=M(r0(),1),sz1=M(h0(),1);Pq0=class Pq0 extends sz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[az1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetadataConfiguration",{}).n("S3Client","DeleteBucketMetadataConfigurationCommand").sc(pW1).build(){}});var ez1,$j1,Tq0;var Rq0=B(()=>{G1();X1();ez1=M(r0(),1),$j1=M(h0(),1);Tq0=class Tq0 extends $j1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[ez1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetadataTableConfiguration",{}).n("S3Client","DeleteBucketMetadataTableConfigurationCommand").sc(tW1).build(){}});var Zj1,Xj1,Iq0;var qq0=B(()=>{G1();X1();Zj1=M(r0(),1),Xj1=M(h0(),1);Iq0=class Iq0 extends Xj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Zj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetricsConfiguration",{}).n("S3Client","DeleteBucketMetricsConfigurationCommand").sc(oW1).build(){}});var Gj1,Qj1,Mq0;var kq0=B(()=>{G1();X1();Gj1=M(r0(),1),Qj1=M(h0(),1);Mq0=class Mq0 extends Qj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Gj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketOwnershipControls",{}).n("S3Client","DeleteBucketOwnershipControlsCommand").sc(rW1).build(){}});var Yj1,Jj1,Sq0;var Vq0=B(()=>{G1();X1();Yj1=M(r0(),1),Jj1=M(h0(),1);Sq0=class Sq0 extends Jj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Yj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketPolicy",{}).n("S3Client","DeleteBucketPolicyCommand").sc(aW1).build(){}});var Kj1,Wj1,Cq0;var _q0=B(()=>{G1();X1();Kj1=M(r0(),1),Wj1=M(h0(),1);Cq0=class Cq0 extends Wj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Kj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketReplication",{}).n("S3Client","DeleteBucketReplicationCommand").sc(sW1).build(){}});var Nj1,Hj1,vq0;var bq0=B(()=>{G1();X1();Nj1=M(r0(),1),Hj1=M(h0(),1);vq0=class vq0 extends Hj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Nj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketTagging",{}).n("S3Client","DeleteBucketTaggingCommand").sc(eW1).build(){}});var Fj1,Uj1,fq0;var xq0=B(()=>{G1();X1();Fj1=M(r0(),1),Uj1=M(h0(),1);fq0=class fq0 extends Uj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Fj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketWebsite",{}).n("S3Client","DeleteBucketWebsiteCommand").sc($N1).build(){}});var wj1,Oj1,Bj1,Xu;var yq0=B(()=>{G1();X1();wj1=M(h1(),1),Oj1=M(r0(),1),Bj1=M(h0(),1);Xu=class Xu extends Bj1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[Oj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),wj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","DeleteObject",{}).n("S3Client","DeleteObjectCommand").sc(ZN1).build(){}});var Dj1,Lj1,Ej1,gq0;var hq0=B(()=>{v4();G1();X1();Dj1=M(h1(),1),Lj1=M(r0(),1),Ej1=M(h0(),1);gq0=class gq0 extends Ej1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Lj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),Dj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","DeleteObjects",{}).n("S3Client","DeleteObjectsCommand").sc(XN1).build(){}});var zj1,jj1,Pj1,uq0;var cq0=B(()=>{G1();X1();zj1=M(h1(),1),jj1=M(r0(),1),Pj1=M(h0(),1);uq0=class uq0 extends Pj1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[jj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),zj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","DeleteObjectTagging",{}).n("S3Client","DeleteObjectTaggingCommand").sc(GN1).build(){}});var Aj1,Tj1,lq0;var dq0=B(()=>{G1();X1();Aj1=M(r0(),1),Tj1=M(h0(),1);lq0=class lq0 extends Tj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Aj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeletePublicAccessBlock",{}).n("S3Client","DeletePublicAccessBlockCommand").sc(QN1).build(){}});var Rj1,Ij1,qj1,mq0;var iq0=B(()=>{G1();X1();Rj1=M(h1(),1),Ij1=M(r0(),1),qj1=M(h0(),1);mq0=class mq0 extends qj1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Ij1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Rj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketAbac",{}).n("S3Client","GetBucketAbacCommand").sc(YN1).build(){}});var Mj1,kj1,Sj1,nq0;var pq0=B(()=>{G1();X1();Mj1=M(h1(),1),kj1=M(r0(),1),Sj1=M(h0(),1);nq0=class nq0 extends Sj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[kj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Mj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketAccelerateConfiguration",{}).n("S3Client","GetBucketAccelerateConfigurationCommand").sc(JN1).build(){}});var Vj1,Cj1,_j1,tq0;var oq0=B(()=>{G1();X1();Vj1=M(h1(),1),Cj1=M(r0(),1),_j1=M(h0(),1);tq0=class tq0 extends _j1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Cj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Vj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketAcl",{}).n("S3Client","GetBucketAclCommand").sc(KN1).build(){}});var vj1,bj1,fj1,rq0;var aq0=B(()=>{G1();X1();vj1=M(h1(),1),bj1=M(r0(),1),fj1=M(h0(),1);rq0=class rq0 extends fj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[bj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),vj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketAnalyticsConfiguration",{}).n("S3Client","GetBucketAnalyticsConfigurationCommand").sc(WN1).build(){}});var xj1,yj1,gj1,sq0;var eq0=B(()=>{G1();X1();xj1=M(h1(),1),yj1=M(r0(),1),gj1=M(h0(),1);sq0=class sq0 extends gj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[yj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),xj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketCors",{}).n("S3Client","GetBucketCorsCommand").sc(NN1).build(){}});var hj1,uj1,cj1,$M0;var ZM0=B(()=>{G1();X1();hj1=M(h1(),1),uj1=M(r0(),1),cj1=M(h0(),1);$M0=class $M0 extends cj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[uj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),hj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketEncryption",{}).n("S3Client","GetBucketEncryptionCommand").sc(HN1).build(){}});var lj1,dj1,mj1,XM0;var GM0=B(()=>{G1();X1();lj1=M(h1(),1),dj1=M(r0(),1),mj1=M(h0(),1);XM0=class XM0 extends mj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[dj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),lj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketIntelligentTieringConfiguration",{}).n("S3Client","GetBucketIntelligentTieringConfigurationCommand").sc(FN1).build(){}});var ij1,nj1,pj1,QM0;var YM0=B(()=>{G1();X1();ij1=M(h1(),1),nj1=M(r0(),1),pj1=M(h0(),1);QM0=class QM0 extends pj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[nj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),ij1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketInventoryConfiguration",{}).n("S3Client","GetBucketInventoryConfigurationCommand").sc(UN1).build(){}});var tj1,oj1,rj1,JM0;var KM0=B(()=>{G1();X1();tj1=M(h1(),1),oj1=M(r0(),1),rj1=M(h0(),1);JM0=class JM0 extends rj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[oj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),tj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketLifecycleConfiguration",{}).n("S3Client","GetBucketLifecycleConfigurationCommand").sc(wN1).build(){}});var aj1,sj1,ej1,WM0;var NM0=B(()=>{G1();X1();aj1=M(h1(),1),sj1=M(r0(),1),ej1=M(h0(),1);WM0=class WM0 extends ej1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[sj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),aj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketLocation",{}).n("S3Client","GetBucketLocationCommand").sc(ON1).build(){}});var $P1,ZP1,XP1,HM0;var FM0=B(()=>{G1();X1();$P1=M(h1(),1),ZP1=M(r0(),1),XP1=M(h0(),1);HM0=class HM0 extends XP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[ZP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),$P1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketLogging",{}).n("S3Client","GetBucketLoggingCommand").sc(BN1).build(){}});var GP1,QP1,YP1,UM0;var wM0=B(()=>{G1();X1();GP1=M(h1(),1),QP1=M(r0(),1),YP1=M(h0(),1);UM0=class UM0 extends YP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[QP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),GP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketMetadataConfiguration",{}).n("S3Client","GetBucketMetadataConfigurationCommand").sc(DN1).build(){}});var JP1,KP1,WP1,OM0;var BM0=B(()=>{G1();X1();JP1=M(h1(),1),KP1=M(r0(),1),WP1=M(h0(),1);OM0=class OM0 extends WP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[KP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),JP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketMetadataTableConfiguration",{}).n("S3Client","GetBucketMetadataTableConfigurationCommand").sc(LN1).build(){}});var NP1,HP1,FP1,DM0;var LM0=B(()=>{G1();X1();NP1=M(h1(),1),HP1=M(r0(),1),FP1=M(h0(),1);DM0=class DM0 extends FP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[HP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),NP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketMetricsConfiguration",{}).n("S3Client","GetBucketMetricsConfigurationCommand").sc(EN1).build(){}});var UP1,wP1,OP1,EM0;var zM0=B(()=>{G1();X1();UP1=M(h1(),1),wP1=M(r0(),1),OP1=M(h0(),1);EM0=class EM0 extends OP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[wP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),UP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketNotificationConfiguration",{}).n("S3Client","GetBucketNotificationConfigurationCommand").sc(zN1).build(){}});var BP1,DP1,LP1,jM0;var PM0=B(()=>{G1();X1();BP1=M(h1(),1),DP1=M(r0(),1),LP1=M(h0(),1);jM0=class jM0 extends LP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[DP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),BP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketOwnershipControls",{}).n("S3Client","GetBucketOwnershipControlsCommand").sc(jN1).build(){}});var EP1,zP1,AM0;var TM0=B(()=>{G1();X1();EP1=M(r0(),1),zP1=M(h0(),1);AM0=class AM0 extends zP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[EP1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","GetBucketPolicy",{}).n("S3Client","GetBucketPolicyCommand").sc(PN1).build(){}});var jP1,PP1,AP1,RM0;var IM0=B(()=>{G1();X1();jP1=M(h1(),1),PP1=M(r0(),1),AP1=M(h0(),1);RM0=class RM0 extends AP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[PP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),jP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketPolicyStatus",{}).n("S3Client","GetBucketPolicyStatusCommand").sc(AN1).build(){}});var TP1,RP1,IP1,qM0;var MM0=B(()=>{G1();X1();TP1=M(h1(),1),RP1=M(r0(),1),IP1=M(h0(),1);qM0=class qM0 extends IP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[RP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),TP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketReplication",{}).n("S3Client","GetBucketReplicationCommand").sc(TN1).build(){}});var qP1,MP1,kP1,kM0;var SM0=B(()=>{G1();X1();qP1=M(h1(),1),MP1=M(r0(),1),kP1=M(h0(),1);kM0=class kM0 extends kP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[MP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),qP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketRequestPayment",{}).n("S3Client","GetBucketRequestPaymentCommand").sc(RN1).build(){}});var SP1,VP1,CP1,VM0;var CM0=B(()=>{G1();X1();SP1=M(h1(),1),VP1=M(r0(),1),CP1=M(h0(),1);VM0=class VM0 extends CP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[VP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),SP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketTagging",{}).n("S3Client","GetBucketTaggingCommand").sc(IN1).build(){}});var _P1,vP1,bP1,_M0;var vM0=B(()=>{G1();X1();_P1=M(h1(),1),vP1=M(r0(),1),bP1=M(h0(),1);_M0=class _M0 extends bP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[vP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),_P1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketVersioning",{}).n("S3Client","GetBucketVersioningCommand").sc(qN1).build(){}});var fP1,xP1,yP1,bM0;var fM0=B(()=>{G1();X1();fP1=M(h1(),1),xP1=M(r0(),1),yP1=M(h0(),1);bM0=class bM0 extends yP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[xP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),fP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketWebsite",{}).n("S3Client","GetBucketWebsiteCommand").sc(MN1).build(){}});var gP1,hP1,uP1,xM0;var yM0=B(()=>{G1();X1();gP1=M(h1(),1),hP1=M(r0(),1),uP1=M(h0(),1);xM0=class xM0 extends uP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[hP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),gP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectAcl",{}).n("S3Client","GetObjectAclCommand").sc(SN1).build(){}});var cP1,lP1,dP1,gM0;var hM0=B(()=>{pQ();G1();X1();cP1=M(h1(),1),lP1=M(r0(),1),dP1=M(h0(),1);gM0=class gM0 extends dP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[lP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),cP1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","GetObjectAttributes",{}).n("S3Client","GetObjectAttributesCommand").sc(VN1).build(){}});var mP1,iP1,nP1,WF;var uM0=B(()=>{v4();pQ();G1();X1();mP1=M(h1(),1),iP1=M(r0(),1),nP1=M(h0(),1);WF=class WF extends nP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[iP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestChecksumRequired:!1,requestValidationModeMember:"ChecksumMode",responseAlgorithms:["CRC64NVME","CRC32","CRC32C","SHA256","SHA1","SHA512","MD5","XXHASH64","XXHASH3","XXHASH128"]}),g5(X),mP1.getS3ExpiresMiddlewarePlugin(X)]}).s("AmazonS3","GetObject",{}).n("S3Client","GetObjectCommand").sc(kN1).build(){}});var pP1,tP1,oP1,cM0;var lM0=B(()=>{G1();X1();pP1=M(h1(),1),tP1=M(r0(),1),oP1=M(h0(),1);cM0=class cM0 extends oP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[tP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),pP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectLegalHold",{}).n("S3Client","GetObjectLegalHoldCommand").sc(CN1).build(){}});var rP1,aP1,sP1,dM0;var mM0=B(()=>{G1();X1();rP1=M(h1(),1),aP1=M(r0(),1),sP1=M(h0(),1);dM0=class dM0 extends sP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[aP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),rP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectLockConfiguration",{}).n("S3Client","GetObjectLockConfigurationCommand").sc(_N1).build(){}});var eP1,$A1,ZA1,iM0;var nM0=B(()=>{G1();X1();eP1=M(h1(),1),$A1=M(r0(),1),ZA1=M(h0(),1);iM0=class iM0 extends ZA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[$A1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),eP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectRetention",{}).n("S3Client","GetObjectRetentionCommand").sc(vN1).build(){}});var XA1,GA1,QA1,pM0;var tM0=B(()=>{G1();X1();XA1=M(h1(),1),GA1=M(r0(),1),QA1=M(h0(),1);pM0=class pM0 extends QA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[GA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),XA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectTagging",{}).n("S3Client","GetObjectTaggingCommand").sc(bN1).build(){}});var YA1,JA1,oM0;var rM0=B(()=>{G1();X1();YA1=M(r0(),1),JA1=M(h0(),1);oM0=class oM0 extends JA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[YA1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","GetObjectTorrent",{}).n("S3Client","GetObjectTorrentCommand").sc(fN1).build(){}});var KA1,WA1,NA1,aM0;var sM0=B(()=>{G1();X1();KA1=M(h1(),1),WA1=M(r0(),1),NA1=M(h0(),1);aM0=class aM0 extends NA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[WA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),KA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetPublicAccessBlock",{}).n("S3Client","GetPublicAccessBlockCommand").sc(xN1).build(){}});var HA1,FA1,UA1,LB;var Gu=B(()=>{G1();X1();HA1=M(h1(),1),FA1=M(r0(),1),UA1=M(h0(),1);LB=class LB extends UA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[FA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),HA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","HeadBucket",{}).n("S3Client","HeadBucketCommand").sc(yN1).build(){}});var Re,wA1,OA1,v3;var Qu=B(()=>{pQ();G1();X1();Re=M(h1(),1),wA1=M(r0(),1),OA1=M(h0(),1);v3=class v3 extends OA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[wA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Re.getThrow200ExceptionsPlugin(X),g5(X),Re.getS3ExpiresMiddlewarePlugin(X)]}).s("AmazonS3","HeadObject",{}).n("S3Client","HeadObjectCommand").sc(gN1).build(){}});var BA1,DA1,LA1,eM0;var $k0=B(()=>{G1();X1();BA1=M(h1(),1),DA1=M(r0(),1),LA1=M(h0(),1);eM0=class eM0 extends LA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[DA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),BA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBucketAnalyticsConfigurations",{}).n("S3Client","ListBucketAnalyticsConfigurationsCommand").sc(hN1).build(){}});var EA1,zA1,jA1,Zk0;var Xk0=B(()=>{G1();X1();EA1=M(h1(),1),zA1=M(r0(),1),jA1=M(h0(),1);Zk0=class Zk0 extends jA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[zA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),EA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBucketIntelligentTieringConfigurations",{}).n("S3Client","ListBucketIntelligentTieringConfigurationsCommand").sc(uN1).build(){}});var PA1,AA1,TA1,Gk0;var Qk0=B(()=>{G1();X1();PA1=M(h1(),1),AA1=M(r0(),1),TA1=M(h0(),1);Gk0=class Gk0 extends TA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[AA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),PA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBucketInventoryConfigurations",{}).n("S3Client","ListBucketInventoryConfigurationsCommand").sc(cN1).build(){}});var RA1,IA1,qA1,Yk0;var Jk0=B(()=>{G1();X1();RA1=M(h1(),1),IA1=M(r0(),1),qA1=M(h0(),1);Yk0=class Yk0 extends qA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[IA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),RA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBucketMetricsConfigurations",{}).n("S3Client","ListBucketMetricsConfigurationsCommand").sc(lN1).build(){}});var MA1,kA1,SA1,Yu;var Ie=B(()=>{G1();X1();MA1=M(h1(),1),kA1=M(r0(),1),SA1=M(h0(),1);Yu=class Yu extends SA1.Command.classBuilder().ep(Q0).m(function($,Z,X,G){return[kA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),MA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBuckets",{}).n("S3Client","ListBucketsCommand").sc(dN1).build(){}});var VA1,CA1,_A1,Ju;var qe=B(()=>{G1();X1();VA1=M(h1(),1),CA1=M(r0(),1),_A1=M(h0(),1);Ju=class Ju extends _A1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0}}).m(function($,Z,X,G){return[CA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),VA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListDirectoryBuckets",{}).n("S3Client","ListDirectoryBucketsCommand").sc(mN1).build(){}});var vA1,bA1,fA1,Kk0;var Wk0=B(()=>{G1();X1();vA1=M(h1(),1),bA1=M(r0(),1),fA1=M(h0(),1);Kk0=class Kk0 extends fA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function($,Z,X,G){return[bA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),vA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListMultipartUploads",{}).n("S3Client","ListMultipartUploadsCommand").sc(iN1).build(){}});var xA1,yA1,gA1,Nk0;var Hk0=B(()=>{G1();X1();xA1=M(h1(),1),yA1=M(r0(),1),gA1=M(h0(),1);Nk0=class Nk0 extends gA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function($,Z,X,G){return[yA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),xA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListObjects",{}).n("S3Client","ListObjectsCommand").sc(nN1).build(){}});var hA1,uA1,cA1,tQ;var Me=B(()=>{G1();X1();hA1=M(h1(),1),uA1=M(r0(),1),cA1=M(h0(),1);tQ=class tQ extends cA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function($,Z,X,G){return[uA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),hA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListObjectsV2",{}).n("S3Client","ListObjectsV2Command").sc(pN1).build(){}});var lA1,dA1,mA1,Fk0;var Uk0=B(()=>{G1();X1();lA1=M(h1(),1),dA1=M(r0(),1),mA1=M(h0(),1);Fk0=class Fk0 extends mA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function($,Z,X,G){return[dA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),lA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListObjectVersions",{}).n("S3Client","ListObjectVersionsCommand").sc(tN1).build(){}});var iA1,nA1,pA1,Ku;var ke=B(()=>{pQ();G1();X1();iA1=M(h1(),1),nA1=M(r0(),1),pA1=M(h0(),1);Ku=class Ku extends pA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[nA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),iA1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","ListParts",{}).n("S3Client","ListPartsCommand").sc(oN1).build(){}});var tA1,oA1,wk0;var Ok0=B(()=>{v4();G1();X1();tA1=M(r0(),1),oA1=M(h0(),1);wk0=class wk0 extends oA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[tA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1})]}).s("AmazonS3","PutBucketAbac",{}).n("S3Client","PutBucketAbacCommand").sc(rN1).build(){}});var rA1,aA1,Bk0;var Dk0=B(()=>{v4();G1();X1();rA1=M(r0(),1),aA1=M(h0(),1);Bk0=class Bk0 extends aA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[rA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1})]}).s("AmazonS3","PutBucketAccelerateConfiguration",{}).n("S3Client","PutBucketAccelerateConfigurationCommand").sc(aN1).build(){}});var sA1,eA1,Lk0;var Ek0=B(()=>{v4();G1();X1();sA1=M(r0(),1),eA1=M(h0(),1);Lk0=class Lk0 extends eA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[sA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketAcl",{}).n("S3Client","PutBucketAclCommand").sc(sN1).build(){}});var $T1,ZT1,zk0;var jk0=B(()=>{G1();X1();$T1=M(r0(),1),ZT1=M(h0(),1);zk0=class zk0 extends ZT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[$T1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketAnalyticsConfiguration",{}).n("S3Client","PutBucketAnalyticsConfigurationCommand").sc(eN1).build(){}});var XT1,GT1,Pk0;var Ak0=B(()=>{v4();G1();X1();XT1=M(r0(),1),GT1=M(h0(),1);Pk0=class Pk0 extends GT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[XT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketCors",{}).n("S3Client","PutBucketCorsCommand").sc($H1).build(){}});var QT1,YT1,Tk0;var Rk0=B(()=>{v4();G1();X1();QT1=M(r0(),1),YT1=M(h0(),1);Tk0=class Tk0 extends YT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[QT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketEncryption",{}).n("S3Client","PutBucketEncryptionCommand").sc(ZH1).build(){}});var JT1,KT1,Ik0;var qk0=B(()=>{G1();X1();JT1=M(r0(),1),KT1=M(h0(),1);Ik0=class Ik0 extends KT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[JT1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketIntelligentTieringConfiguration",{}).n("S3Client","PutBucketIntelligentTieringConfigurationCommand").sc(XH1).build(){}});var WT1,NT1,Mk0;var kk0=B(()=>{G1();X1();WT1=M(r0(),1),NT1=M(h0(),1);Mk0=class Mk0 extends NT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[WT1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketInventoryConfiguration",{}).n("S3Client","PutBucketInventoryConfigurationCommand").sc(GH1).build(){}});var HT1,FT1,UT1,Sk0;var Vk0=B(()=>{v4();G1();X1();HT1=M(h1(),1),FT1=M(r0(),1),UT1=M(h0(),1);Sk0=class Sk0 extends UT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[FT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),HT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutBucketLifecycleConfiguration",{}).n("S3Client","PutBucketLifecycleConfigurationCommand").sc(QH1).build(){}});var wT1,OT1,Ck0;var _k0=B(()=>{v4();G1();X1();wT1=M(r0(),1),OT1=M(h0(),1);Ck0=class Ck0 extends OT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[wT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketLogging",{}).n("S3Client","PutBucketLoggingCommand").sc(YH1).build(){}});var BT1,DT1,vk0;var bk0=B(()=>{G1();X1();BT1=M(r0(),1),DT1=M(h0(),1);vk0=class vk0 extends DT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[BT1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketMetricsConfiguration",{}).n("S3Client","PutBucketMetricsConfigurationCommand").sc(JH1).build(){}});var LT1,ET1,fk0;var xk0=B(()=>{G1();X1();LT1=M(r0(),1),ET1=M(h0(),1);fk0=class fk0 extends ET1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[LT1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketNotificationConfiguration",{}).n("S3Client","PutBucketNotificationConfigurationCommand").sc(KH1).build(){}});var zT1,jT1,yk0;var gk0=B(()=>{v4();G1();X1();zT1=M(r0(),1),jT1=M(h0(),1);yk0=class yk0 extends jT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[zT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketOwnershipControls",{}).n("S3Client","PutBucketOwnershipControlsCommand").sc(WH1).build(){}});var PT1,AT1,hk0;var uk0=B(()=>{v4();G1();X1();PT1=M(r0(),1),AT1=M(h0(),1);hk0=class hk0 extends AT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[PT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketPolicy",{}).n("S3Client","PutBucketPolicyCommand").sc(NH1).build(){}});var TT1,RT1,ck0;var lk0=B(()=>{v4();G1();X1();TT1=M(r0(),1),RT1=M(h0(),1);ck0=class ck0 extends RT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[TT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketReplication",{}).n("S3Client","PutBucketReplicationCommand").sc(HH1).build(){}});var IT1,qT1,dk0;var mk0=B(()=>{v4();G1();X1();IT1=M(r0(),1),qT1=M(h0(),1);dk0=class dk0 extends qT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[IT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketRequestPayment",{}).n("S3Client","PutBucketRequestPaymentCommand").sc(FH1).build(){}});var MT1,kT1,ik0;var nk0=B(()=>{v4();G1();X1();MT1=M(r0(),1),kT1=M(h0(),1);ik0=class ik0 extends kT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[MT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketTagging",{}).n("S3Client","PutBucketTaggingCommand").sc(UH1).build(){}});var ST1,VT1,pk0;var tk0=B(()=>{v4();G1();X1();ST1=M(r0(),1),VT1=M(h0(),1);pk0=class pk0 extends VT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[ST1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketVersioning",{}).n("S3Client","PutBucketVersioningCommand").sc(wH1).build(){}});var CT1,_T1,ok0;var rk0=B(()=>{v4();G1();X1();CT1=M(r0(),1),_T1=M(h0(),1);ok0=class ok0 extends _T1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[CT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketWebsite",{}).n("S3Client","PutBucketWebsiteCommand").sc(OH1).build(){}});var vT1,bT1,fT1,ak0;var sk0=B(()=>{v4();G1();X1();vT1=M(h1(),1),bT1=M(r0(),1),fT1=M(h0(),1);ak0=class ak0 extends fT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[bT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),vT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectAcl",{}).n("S3Client","PutObjectAclCommand").sc(DH1).build(){}});var Se,xT1,yT1,pW;var ek0=B(()=>{v4();pQ();G1();X1();Se=M(h1(),1),xT1=M(r0(),1),yT1=M(h0(),1);pW=class pW extends yT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[xT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),Se.getCheckContentLengthHeaderPlugin(X),Se.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","PutObject",{}).n("S3Client","PutObjectCommand").sc(BH1).build(){}});var gT1,hT1,uT1,$S0;var ZS0=B(()=>{v4();G1();X1();gT1=M(h1(),1),hT1=M(r0(),1),uT1=M(h0(),1);$S0=class $S0 extends uT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[hT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),gT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectLegalHold",{}).n("S3Client","PutObjectLegalHoldCommand").sc(LH1).build(){}});var cT1,lT1,dT1,XS0;var GS0=B(()=>{v4();G1();X1();cT1=M(h1(),1),lT1=M(r0(),1),dT1=M(h0(),1);XS0=class XS0 extends dT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[lT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),cT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectLockConfiguration",{}).n("S3Client","PutObjectLockConfigurationCommand").sc(EH1).build(){}});var mT1,iT1,nT1,QS0;var YS0=B(()=>{v4();G1();X1();mT1=M(h1(),1),iT1=M(r0(),1),nT1=M(h0(),1);QS0=class QS0 extends nT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[iT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),mT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectRetention",{}).n("S3Client","PutObjectRetentionCommand").sc(zH1).build(){}});var pT1,tT1,oT1,Wu;var JS0=B(()=>{v4();G1();X1();pT1=M(h1(),1),tT1=M(r0(),1),oT1=M(h0(),1);Wu=class Wu extends oT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[tT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),pT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectTagging",{}).n("S3Client","PutObjectTaggingCommand").sc(jH1).build(){}});var rT1,aT1,KS0;var WS0=B(()=>{v4();G1();X1();rT1=M(r0(),1),aT1=M(h0(),1);KS0=class KS0 extends aT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[rT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutPublicAccessBlock",{}).n("S3Client","PutPublicAccessBlockCommand").sc(PH1).build(){}});var sT1,eT1,$R1,NS0;var HS0=B(()=>{G1();X1();sT1=M(h1(),1),eT1=M(r0(),1),$R1=M(h0(),1);NS0=class NS0 extends $R1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[eT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),sT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","RenameObject",{}).n("S3Client","RenameObjectCommand").sc(AH1).build(){}});var ZR1,XR1,GR1,FS0;var US0=B(()=>{v4();G1();X1();ZR1=M(h1(),1),XR1=M(r0(),1),GR1=M(h0(),1);FS0=class FS0 extends GR1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[XR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),ZR1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","RestoreObject",{}).n("S3Client","RestoreObjectCommand").sc(TH1).build(){}});var QR1,YR1,wS0;var OS0=B(()=>{pQ();G1();X1();QR1=M(r0(),1),YR1=M(h0(),1);wS0=class wS0 extends YR1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[QR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),g5(X)]}).s("AmazonS3","SelectObjectContent",{eventStream:{output:!0}}).n("S3Client","SelectObjectContentCommand").sc(RH1).build(){}});var JR1,KR1,BS0;var DS0=B(()=>{v4();G1();X1();JR1=M(r0(),1),KR1=M(h0(),1);BS0=class BS0 extends KR1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[JR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","UpdateBucketMetadataInventoryTableConfiguration",{}).n("S3Client","UpdateBucketMetadataInventoryTableConfigurationCommand").sc(IH1).build(){}});var WR1,NR1,LS0;var ES0=B(()=>{v4();G1();X1();WR1=M(r0(),1),NR1=M(h0(),1);LS0=class LS0 extends NR1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[WR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","UpdateBucketMetadataJournalTableConfiguration",{}).n("S3Client","UpdateBucketMetadataJournalTableConfigurationCommand").sc(qH1).build(){}});var HR1,FR1,UR1,zS0;var jS0=B(()=>{v4();G1();X1();HR1=M(h1(),1),FR1=M(r0(),1),UR1=M(h0(),1);zS0=class zS0 extends UR1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[FR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),HR1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","UpdateObjectEncryption",{}).n("S3Client","UpdateObjectEncryptionCommand").sc(MH1).build(){}});var wR1,OR1,BR1,Nu;var PS0=B(()=>{v4();pQ();G1();X1();wR1=M(h1(),1),OR1=M(r0(),1),BR1=M(h0(),1);Nu=class Nu extends BR1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[OR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),wR1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","UploadPart",{}).n("S3Client","UploadPartCommand").sc(kH1).build(){}});var DR1,LR1,ER1,AS0;var TS0=B(()=>{pQ();G1();X1();DR1=M(h1(),1),LR1=M(r0(),1),ER1=M(h0(),1);AS0=class AS0 extends ER1.Command.classBuilder().ep({...Q0,DisableS3ExpressSessionAuth:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[LR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),DR1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","UploadPartCopy",{}).n("S3Client","UploadPartCopyCommand").sc(SH1).build(){}});var zR1,jR1,RS0;var IS0=B(()=>{G1();X1();zR1=M(r0(),1),jR1=M(h0(),1);RS0=class RS0 extends jR1.Command.classBuilder().ep({...Q0,UseObjectLambdaEndpoint:{type:"staticContextParams",value:!0}}).m(function($,Z,X,G){return[zR1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","WriteGetObjectResponse",{}).n("S3Client","WriteGetObjectResponseCommand").sc(VH1).build(){}});var PR1,AR1;var qS0=B(()=>{Ie();DB();PR1=M(g9(),1),AR1=PR1.createPaginator(HX,Yu,"ContinuationToken","ContinuationToken","MaxBuckets")});var TR1,RR1;var MS0=B(()=>{qe();DB();TR1=M(g9(),1),RR1=TR1.createPaginator(HX,Ju,"ContinuationToken","ContinuationToken","MaxDirectoryBuckets")});var IR1,qR1;var kS0=B(()=>{Me();DB();IR1=M(g9(),1),qR1=IR1.createPaginator(HX,tQ,"ContinuationToken","NextContinuationToken","MaxKeys")});var MR1,kR1;var SS0=B(()=>{ke();DB();MR1=M(g9(),1),kR1=MR1.createPaginator(HX,Ku,"PartNumberMarker","NextPartNumberMarker","MaxParts")});var x_=()=>{let $=new WeakSet;return(Z,X)=>{if(typeof X==="object"&&X!==null){if($.has(X))return"[Circular]";$.add(X)}return X}};var SR1=($)=>{return new Promise((Z)=>setTimeout(Z,$*1000))};var VR1,t6,NF=($)=>{if($.state===t6.ABORTED){let Z=Error(`${JSON.stringify({...$,reason:"Request was aborted"},x_())}`);throw Z.name="AbortError",Z}else if($.state===t6.TIMEOUT){let Z=Error(`${JSON.stringify({...$,reason:"Waiter has timed out"},x_())}`);throw Z.name="TimeoutError",Z}else if($.state!==t6.SUCCESS)throw Error(`${JSON.stringify($,x_())}`);return $};var Ve=B(()=>{VR1={minDelay:2,maxDelay:120};(function($){$.ABORTED="ABORTED",$.FAILURE="FAILURE",$.SUCCESS="SUCCESS",$.RETRY="RETRY",$.TIMEOUT="TIMEOUT"})(t6||(t6={}))});var CR1=async({minDelay:$,maxDelay:Z,maxWaitTime:X,abortController:G,client:Q,abortSignal:Y},J,K)=>{let W={},[N,H]=[$*1000,Z*1000],F=0,U=Date.now()+X*1000,w=Date.now()+60000,O=!1;while(!0){if(F>0){let E=BF8(N,H,F,U);if(G?.signal?.aborted||Y?.aborted)return W["AbortController signal aborted."]|=0,W["AbortController signal aborted."]+=1,{state:t6.ABORTED,observedResponses:W};if(Date.now()+E>U)return{state:t6.TIMEOUT,observedResponses:W};await SR1(E/1000)}let{state:D,reason:L}=await K(Q,J);if(L){let E=OF8(L);W[E]|=0,W[E]+=1}if(D!==t6.RETRY)return{state:D,reason:L,final:L,observedResponses:W};if(F+=1,!O&&Date.now()>=w)wF8(W,Q),O=!0}},wF8=($={},Z)=>{let X=Object.keys($),G=0,Q=0;for(let K of X){let W=$[K]|0;if(G=Math.max(W,G),K.startsWith("403:"))Q+=W}let Y=Z?.config?.logger,J=typeof Y?.warn==="function"&&!Y.constructor?.name?.includes?.("NoOpLogger")?Y:console;if(Q>=3||X[X.length-1].startsWith("403:"))J.warn("@smithy/util-waiter WARN - 403 status code encountered during waiter polling.")},OF8=($)=>{let Z=$?.$response?.statusCode??$?.$metadata?.httpStatusCode;if($?.$responseBodyText)return`${Z?Z+": ":""}Deserialization error for body: ${$.$responseBodyText}`;if(Z){if($?.$response||$?.message)return`${Z??"Unknown"}: ${$?.message}`;return`${Z}: OK`}return String($?.message??JSON.stringify($,x_())??"Unknown")},BF8=($,Z,X,G)=>{let Q=Math.log(Z/$)/Math.log(2)+1;if(X>Q)return Z;let Y=$*2**(X-1),J=Math.min(Y,Z),K=DF8($,J);if(Date.now()+K>G){let W=G-Date.now();return Math.max(0,W-500)}return K},DF8=($,Z)=>$+Math.random()*(Z-$);var _R1=B(()=>{Ve()});var vR1=($)=>{if($.maxWaitTime<=0)throw Error("WaiterConfiguration.maxWaitTime must be greater than 0");else if($.minDelay<=0)throw Error("WaiterConfiguration.minDelay must be greater than 0");else if($.maxDelay<=0)throw Error("WaiterConfiguration.maxDelay must be greater than 0");else if($.maxWaitTime<=$.minDelay)throw Error(`WaiterConfiguration.maxWaitTime [${$.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${$.minDelay}] for this waiter`);else if($.maxDelay<$.minDelay)throw Error(`WaiterConfiguration.maxDelay [${$.maxDelay}] must be greater than WaiterConfiguration.minDelay [${$.minDelay}] for this waiter`)};var bR1=()=>{};var fR1=($)=>{let Z,X=new Promise((G)=>{if(Z=()=>G({state:t6.ABORTED}),typeof $.addEventListener==="function")$.addEventListener("abort",Z);else $.onabort=Z});return{clearListener(){if(typeof $.removeEventListener==="function")$.removeEventListener("abort",Z)},aborted:X}},HF=async($,Z,X)=>{let G={...VR1,...$};vR1(G);let Q=[CR1(G,Z,X)],Y=[];if($.abortSignal){let{aborted:J,clearListener:K}=fR1($.abortSignal);Y.push(K),Q.push(J)}if($.abortController?.signal){let{aborted:J,clearListener:K}=fR1($.abortController.signal);Y.push(K),Q.push(J)}return Promise.race(Q).then((J)=>{for(let K of Y)K();return J})};var xR1=B(()=>{_R1();bR1();Ve()});var Hu=B(()=>{xR1();Ve()});var LF8=async($,Z)=>{let X;try{return X=await $.send(new LB(Z)),{state:t6.SUCCESS,reason:X}}catch(G){if(X=G,G.name==="NotFound")return{state:t6.RETRY,reason:X}}return{state:t6.RETRY,reason:X}},yR1=async($,Z)=>{let G=await HF({...{minDelay:5,maxDelay:120},...$},Z,LF8);return NF(G)};var VS0=B(()=>{Hu();Gu()});var EF8=async($,Z)=>{let X;try{X=await $.send(new LB(Z))}catch(G){if(X=G,G.name==="NotFound")return{state:t6.SUCCESS,reason:X}}return{state:t6.RETRY,reason:X}},gR1=async($,Z)=>{let G=await HF({...{minDelay:5,maxDelay:120},...$},Z,EF8);return NF(G)};var CS0=B(()=>{Hu();Gu()});var zF8=async($,Z)=>{let X;try{return X=await $.send(new v3(Z)),{state:t6.SUCCESS,reason:X}}catch(G){if(X=G,G.name==="NotFound")return{state:t6.RETRY,reason:X}}return{state:t6.RETRY,reason:X}},hR1=async($,Z)=>{let G=await HF({...{minDelay:5,maxDelay:120},...$},Z,zF8);return NF(G)};var _S0=B(()=>{Hu();Qu()});var jF8=async($,Z)=>{let X;try{X=await $.send(new v3(Z))}catch(G){if(X=G,G.name==="NotFound")return{state:t6.SUCCESS,reason:X}}return{state:t6.RETRY,reason:X}},uR1=async($,Z)=>{let G=await HF({...{minDelay:5,maxDelay:120},...$},Z,jF8);return NF(G)};var vS0=B(()=>{Hu();Qu()});var cR1,PF8,AF8,TF8,lR1;var dR1=B(()=>{r20();a20();e20();Zq0();Gq0();Yq0();Jq0();Ks();Wq0();Hq0();Uq0();Oq0();Dq0();Eq0();jq0();Aq0();Rq0();qq0();kq0();Vq0();_q0();bq0();xq0();yq0();hq0();cq0();dq0();iq0();pq0();oq0();aq0();eq0();ZM0();GM0();YM0();KM0();NM0();FM0();wM0();BM0();LM0();zM0();PM0();TM0();IM0();MM0();SM0();CM0();vM0();fM0();yM0();hM0();uM0();lM0();mM0();nM0();tM0();rM0();sM0();Gu();Qu();$k0();Xk0();Qk0();Jk0();Ie();qe();Wk0();Hk0();Me();Uk0();ke();Ok0();Dk0();Ek0();jk0();Ak0();Rk0();qk0();kk0();Vk0();_k0();bk0();xk0();gk0();uk0();lk0();mk0();nk0();tk0();rk0();sk0();ek0();ZS0();GS0();YS0();JS0();WS0();HS0();US0();OS0();DS0();ES0();jS0();PS0();TS0();IS0();qS0();MS0();kS0();SS0();DB();VS0();CS0();_S0();vS0();cR1=M(h0(),1),PF8={AbortMultipartUploadCommand:eh,CompleteMultipartUploadCommand:$u,CopyObjectCommand:s20,CreateBucketCommand:$q0,CreateBucketMetadataConfigurationCommand:Xq0,CreateBucketMetadataTableConfigurationCommand:Qq0,CreateMultipartUploadCommand:Zu,CreateSessionCommand:_h,DeleteBucketCommand:Nq0,DeleteBucketAnalyticsConfigurationCommand:Kq0,DeleteBucketCorsCommand:Fq0,DeleteBucketEncryptionCommand:wq0,DeleteBucketIntelligentTieringConfigurationCommand:Bq0,DeleteBucketInventoryConfigurationCommand:Lq0,DeleteBucketLifecycleCommand:zq0,DeleteBucketMetadataConfigurationCommand:Pq0,DeleteBucketMetadataTableConfigurationCommand:Tq0,DeleteBucketMetricsConfigurationCommand:Iq0,DeleteBucketOwnershipControlsCommand:Mq0,DeleteBucketPolicyCommand:Sq0,DeleteBucketReplicationCommand:Cq0,DeleteBucketTaggingCommand:vq0,DeleteBucketWebsiteCommand:fq0,DeleteObjectCommand:Xu,DeleteObjectsCommand:gq0,DeleteObjectTaggingCommand:uq0,DeletePublicAccessBlockCommand:lq0,GetBucketAbacCommand:mq0,GetBucketAccelerateConfigurationCommand:nq0,GetBucketAclCommand:tq0,GetBucketAnalyticsConfigurationCommand:rq0,GetBucketCorsCommand:sq0,GetBucketEncryptionCommand:$M0,GetBucketIntelligentTieringConfigurationCommand:XM0,GetBucketInventoryConfigurationCommand:QM0,GetBucketLifecycleConfigurationCommand:JM0,GetBucketLocationCommand:WM0,GetBucketLoggingCommand:HM0,GetBucketMetadataConfigurationCommand:UM0,GetBucketMetadataTableConfigurationCommand:OM0,GetBucketMetricsConfigurationCommand:DM0,GetBucketNotificationConfigurationCommand:EM0,GetBucketOwnershipControlsCommand:jM0,GetBucketPolicyCommand:AM0,GetBucketPolicyStatusCommand:RM0,GetBucketReplicationCommand:qM0,GetBucketRequestPaymentCommand:kM0,GetBucketTaggingCommand:VM0,GetBucketVersioningCommand:_M0,GetBucketWebsiteCommand:bM0,GetObjectCommand:WF,GetObjectAclCommand:xM0,GetObjectAttributesCommand:gM0,GetObjectLegalHoldCommand:cM0,GetObjectLockConfigurationCommand:dM0,GetObjectRetentionCommand:iM0,GetObjectTaggingCommand:pM0,GetObjectTorrentCommand:oM0,GetPublicAccessBlockCommand:aM0,HeadBucketCommand:LB,HeadObjectCommand:v3,ListBucketAnalyticsConfigurationsCommand:eM0,ListBucketIntelligentTieringConfigurationsCommand:Zk0,ListBucketInventoryConfigurationsCommand:Gk0,ListBucketMetricsConfigurationsCommand:Yk0,ListBucketsCommand:Yu,ListDirectoryBucketsCommand:Ju,ListMultipartUploadsCommand:Kk0,ListObjectsCommand:Nk0,ListObjectsV2Command:tQ,ListObjectVersionsCommand:Fk0,ListPartsCommand:Ku,PutBucketAbacCommand:wk0,PutBucketAccelerateConfigurationCommand:Bk0,PutBucketAclCommand:Lk0,PutBucketAnalyticsConfigurationCommand:zk0,PutBucketCorsCommand:Pk0,PutBucketEncryptionCommand:Tk0,PutBucketIntelligentTieringConfigurationCommand:Ik0,PutBucketInventoryConfigurationCommand:Mk0,PutBucketLifecycleConfigurationCommand:Sk0,PutBucketLoggingCommand:Ck0,PutBucketMetricsConfigurationCommand:vk0,PutBucketNotificationConfigurationCommand:fk0,PutBucketOwnershipControlsCommand:yk0,PutBucketPolicyCommand:hk0,PutBucketReplicationCommand:ck0,PutBucketRequestPaymentCommand:dk0,PutBucketTaggingCommand:ik0,PutBucketVersioningCommand:pk0,PutBucketWebsiteCommand:ok0,PutObjectCommand:pW,PutObjectAclCommand:ak0,PutObjectLegalHoldCommand:$S0,PutObjectLockConfigurationCommand:XS0,PutObjectRetentionCommand:QS0,PutObjectTaggingCommand:Wu,PutPublicAccessBlockCommand:KS0,RenameObjectCommand:NS0,RestoreObjectCommand:FS0,SelectObjectContentCommand:wS0,UpdateBucketMetadataInventoryTableConfigurationCommand:BS0,UpdateBucketMetadataJournalTableConfigurationCommand:LS0,UpdateObjectEncryptionCommand:zS0,UploadPartCommand:Nu,UploadPartCopyCommand:AS0,WriteGetObjectResponseCommand:RS0},AF8={paginateListBuckets:AR1,paginateListDirectoryBuckets:RR1,paginateListObjectsV2:qR1,paginateListParts:kR1},TF8={waitUntilBucketExists:yR1,waitUntilBucketNotExists:gR1,waitUntilObjectExists:hR1,waitUntilObjectNotExists:uR1};lR1=class lR1 extends HX{};cR1.createAggregatedClient(PF8,lR1,{paginators:AF8,waiters:TF8})});var mR1=B(()=>{r20();a20();e20();Zq0();Gq0();Yq0();Jq0();Ks();Wq0();Hq0();Uq0();Oq0();Dq0();Eq0();jq0();Aq0();Rq0();qq0();kq0();Vq0();_q0();bq0();xq0();yq0();cq0();hq0();dq0();iq0();pq0();oq0();aq0();eq0();ZM0();GM0();YM0();KM0();NM0();FM0();wM0();BM0();LM0();zM0();PM0();TM0();IM0();MM0();SM0();CM0();vM0();fM0();yM0();hM0();uM0();lM0();mM0();nM0();tM0();rM0();sM0();Gu();Qu();$k0();Xk0();Qk0();Jk0();Ie();qe();Wk0();Uk0();Hk0();Me();ke();Ok0();Dk0();Ek0();jk0();Ak0();Rk0();qk0();kk0();Vk0();_k0();bk0();xk0();gk0();uk0();lk0();mk0();nk0();tk0();rk0();sk0();ek0();ZS0();GS0();YS0();JS0();WS0();HS0();US0();OS0();DS0();ES0();jS0();PS0();TS0();IS0()});var iR1=()=>{};var nR1=B(()=>{iR1();qS0();MS0();kS0();SS0()});var pR1=B(()=>{VS0();CS0();_S0();vS0()});var tR1;var oR1=B(()=>{tR1={CRC32:"CRC32",CRC32C:"CRC32C",CRC64NVME:"CRC64NVME",MD5:"MD5",SHA1:"SHA1",SHA256:"SHA256",SHA512:"SHA512",XXHASH128:"XXHASH128",XXHASH3:"XXHASH3",XXHASH64:"XXHASH64"}});var rR1=()=>{};var aR1=()=>{};var Ce=B(()=>{DB();dR1();mR1();X1();nR1();pR1();oR1();JR0();rR1();aR1()});function eR1($){let{port:Z,query:X}=$,{protocol:G,path:Q,hostname:Y}=$;if(G&&G.slice(-1)!==":")G+=":";if(Z)Y+=`:${Z}`;if(Q&&Q.charAt(0)!=="/")Q=`/${Q}`;let J=X?sR1.buildQueryString(X):"";if(J&&J[0]!=="?")J=`?${J}`;let K="";if($.username!=null||$.password!=null){let N=$.username??"",H=$.password??"";K=`${N}:${H}@`}let W="";if($.fragment)W=`#${$.fragment}`;return`${G}//${K}${Y}${Q}${J}${W}`}var sR1;var $I1=B(()=>{sR1=M(Ur(),1)});var ZI1="UNSIGNED-PAYLOAD",XI1="X-Amz-Content-Sha256";class _e{signer;constructor($){let Z={service:$.signingName||$.service||"s3",uriEscapePath:$.uriEscapePath||!1,applyChecksum:$.applyChecksum||!1,...$};this.signer=new GI1.SignatureV4MultiRegion(Z)}presign($,{unsignableHeaders:Z=new Set,hoistableHeaders:X=new Set,unhoistableHeaders:G=new Set,...Q}={}){return this.prepareRequest($,{unsignableHeaders:Z,unhoistableHeaders:G,hoistableHeaders:X}),this.signer.presign($,{expiresIn:900,unsignableHeaders:Z,unhoistableHeaders:G,...Q})}presignWithCredentials($,Z,{unsignableHeaders:X=new Set,hoistableHeaders:G=new Set,unhoistableHeaders:Q=new Set,...Y}={}){return this.prepareRequest($,{unsignableHeaders:X,unhoistableHeaders:Q,hoistableHeaders:G}),this.signer.presignWithCredentials($,Z,{expiresIn:900,unsignableHeaders:X,unhoistableHeaders:Q,...Y})}prepareRequest($,{unsignableHeaders:Z=new Set,unhoistableHeaders:X=new Set,hoistableHeaders:G=new Set}={}){Z.add("content-type"),Object.keys($.headers).map((K)=>K.toLowerCase()).filter((K)=>K.startsWith("x-amz-server-side-encryption")).forEach((K)=>{if(!G.has(K))X.add(K)}),$.headers[XI1]=ZI1;let Q=$.headers.host,Y=$.port,J=`${$.hostname}${$.port!=null?":"+Y:""}`;if(!Q||Q===$.hostname&&$.port!=null)$.headers.host=J}}var GI1;var bS0=B(()=>{GI1=M(w_(),1)});var QI1,YI1,ve=async($,Z,X={})=>{let G,Q;if(typeof $.config.endpointProvider==="function"){let U=(await QI1.getEndpointFromInstructions(Z.input,Z.constructor,$.config)).properties?.authSchemes?.[0];if(U?.name==="sigv4a")Q=U?.signingRegionSet?.join(",");else Q=U?.signingRegion;G=new _e({...$.config,signingName:U?.signingName,region:async()=>Q})}else G=new _e($.config);let Y=(F,U)=>async(w)=>{let{request:O}=w;if(!YI1.HttpRequest.isInstance(O))throw Error("Request to be presigned is not an valid HTTP request.");delete O.headers["amz-sdk-invocation-id"],delete O.headers["amz-sdk-request"],delete O.headers["x-amz-user-agent"];let D,L={...X,signingRegion:X.signingRegion??U.signing_region??Q,signingService:X.signingService??U.signing_service};if(U.s3ExpressIdentity)D=await G.presignWithCredentials(O,U.s3ExpressIdentity,L);else D=await G.presign(O,L);return{response:{},output:{$metadata:{httpStatusCode:200},presigned:D}}},J="presignInterceptMiddleware",K=$.middlewareStack.clone();K.addRelativeTo(Y,{name:J,relation:"before",toMiddleware:"awsAuthMiddleware",override:!0});let W=Z.resolveMiddleware(K,$.config,{}),{output:N}=await W({input:Z.input}),{presigned:H}=N;return eR1(H)};var JI1=B(()=>{$I1();bS0();QI1=M(r0(),1),YI1=M(M6(),1)});var KI1=B(()=>{JI1();bS0()});import{extname as RF8}from"path";function b3($){let Z;try{Z=decodeURIComponent($)}catch{Z=$}let G=Z.replace(/\0/g,"").replace(/[\x00-\x1f\x7f]/g,"").replace(/\\/g,"/").split("/"),Q=[];for(let Y of G)if(Y==="..")Q.pop();else if(Y!=="."&&Y!=="")Q.push(Y);return Q.join("/")}function FF($,Z){let X=b3(Z);if(!X)throw Error("Key is empty after sanitization");return`${$}/${X}`}function WI1($,Z){if(!Z)return`${$}/`;let X=b3(Z);return`${$}/${X}${X.endsWith("/")?"":"/"}`}function y_($,Z,X){let G=X.split("/").map(encodeURIComponent).join("/");return`${$}/api/${encodeURIComponent(Z)}/files/${G}`}function fS0($,Z){let X=`${$}/`;if(Z.startsWith(X))return Z.slice(X.length);return Z}function HZ($){let Z=RF8($).toLowerCase();return IF8[Z]??"application/octet-stream"}function be($){let Z=$.split(";")[0].trim();if(qF8.has(Z))return!0;if(Z.startsWith("text/"))return!0;return!1}var IF8,qF8;var f3=B(()=>{IF8={".json":"application/json",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".mjs":"application/javascript",".ts":"text/typescript",".txt":"text/plain",".md":"text/markdown",".csv":"text/csv",".xml":"application/xml",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".pdf":"application/pdf",".zip":"application/zip",".gz":"application/gzip",".tar":"application/x-tar",".wasm":"application/wasm",".yaml":"application/yaml",".yml":"application/yaml",".toml":"application/toml"};qF8=new Set(["application/json","text/html","text/css","application/javascript","text/typescript","text/plain","text/markdown","text/csv","application/xml","image/svg+xml","application/yaml","application/toml"])});class xS0{client;bucket;constructor($){this.bucket=$.bucket,this.client=new HX({endpoint:$.endpoint,region:$.region,credentials:{accessKeyId:$.accessKeyId,secretAccessKey:$.secretAccessKey},forcePathStyle:$.forcePathStyle})}async getBytesOrPresign($,Z,X){let G=FF($,Z),Q=await this.client.send(new v3({Bucket:this.bucket,Key:G})),Y=Q.ContentLength??0,J=Q.ContentType??HZ(Z);if(Y>X.presignWhenLargerThan){let H=await ve(this.client,new WF({Bucket:this.bucket,Key:G}),{expiresIn:X.presignExpiresIn??3600});return{error:"FILE_TOO_LARGE",size:Y,maxInlineSize:X.presignWhenLargerThan,presignedUrl:H,contentType:J}}let W=await(await this.client.send(new WF({Bucket:this.bucket,Key:G}))).Body.transformToByteArray(),N=be(J);return{content:N?new TextDecoder().decode(W):Buffer.from(W).toString("base64"),contentType:J,encoding:N?"utf-8":"base64",size:Y,lastModified:Q.LastModified,etag:Q.ETag}}async getBytes($,Z){let X=FF($,Z);return(await this.client.send(new WF({Bucket:this.bucket,Key:X}))).Body.transformToByteArray()}async put($,Z,X,G){let Q=FF($,Z),Y=G?.contentType??HZ(Z);return{etag:(await this.client.send(new pW({Bucket:this.bucket,Key:Q,Body:typeof X==="string"?Buffer.from(X,"utf-8"):X,ContentType:Y}))).ETag,key:Z}}async list($,Z){let X=WI1($,Z?.prefix),G=await this.client.send(new tQ({Bucket:this.bucket,Prefix:X,MaxKeys:Z?.maxKeys??1000,ContinuationToken:Z?.continuationToken,Delimiter:Z?.delimiter})),Q=G.CommonPrefixes?.map((Y)=>fS0($,Y.Prefix??"")).filter(Boolean);return{objects:(G.Contents??[]).map((Y)=>({key:fS0($,Y.Key??""),size:Y.Size??0,lastModified:Y.LastModified,etag:Y.ETag})),isTruncated:G.IsTruncated??!1,nextContinuationToken:G.NextContinuationToken,commonPrefixes:Q&&Q.length>0?Q:void 0}}async delete($,Z){let X=FF($,Z);await this.client.send(new Xu({Bucket:this.bucket,Key:X}))}async head($,Z){let X=FF($,Z),G=await this.client.send(new v3({Bucket:this.bucket,Key:X}));return{contentType:G.ContentType??HZ(Z),size:G.ContentLength??0,lastModified:G.LastModified,etag:G.ETag}}async presignedGetUrl($,Z,X=3600,G){let Q=FF($,Z);return ve(this.client,new WF({Bucket:this.bucket,Key:Q}),{expiresIn:X})}async presignedPutUrl($,Z,X=3600,G){let Q=FF($,Z);return ve(this.client,new pW({Bucket:this.bucket,Key:Q,ContentType:G}),{expiresIn:X})}}var NI1=B(()=>{Ce();KI1();f3()});function MF8(){let $=n0();return!!($.s3Endpoint&&$.s3Bucket&&$.s3AccessKeyId&&$.s3SecretAccessKey)}function aG(){if(Fu!==void 0)return Fu;if(!MF8())return Fu=null,null;let $=n0();return Fu=new xS0({endpoint:$.s3Endpoint,bucket:$.s3Bucket,region:$.s3Region,accessKeyId:$.s3AccessKeyId,secretAccessKey:$.s3SecretAccessKey,forcePathStyle:$.s3ForcePathStyle}),Fu}var Fu;var EB=B(()=>{f$();NI1()});function WJ($,Z){return{getBytesOrPresign:(X,G)=>$.getBytesOrPresign(Z,X,G),getBytes:(X)=>$.getBytes(Z,X),put:(X,G,Q)=>$.put(Z,X,G,Q),list:(X)=>$.list(Z,X),delete:(X)=>$.delete(Z,X),head:(X)=>$.head(Z,X),presignedGetUrl:(X,G,Q)=>$.presignedGetUrl(Z,X,G,Q),presignedPutUrl:(X,G,Q)=>$.presignedPutUrl(Z,X,G,Q)}}import{mkdir as kF8,readdir as SF8,readFile as yS0,stat as fe,unlink as VF8,writeFile as CF8}from"fs/promises";import{createHmac as _F8}from"crypto";import{dirname as vF8,join as Uu}from"path";function gS0($){let Z=$.replace(/[^a-zA-Z0-9_-]/g,"_");return Uu(bF8,Z)}function g_($,Z){return Uu(gS0($),b3(Z))}class x3{orgId;baseUrl;constructor($,Z){this.orgId=$;this.baseUrl=Z}async getBytesOrPresign($,Z){let X=g_(this.orgId,$),G=await fe(X),Q=HZ($);if(G.size>Z.presignWhenLargerThan)return{error:"FILE_TOO_LARGE",size:G.size,maxInlineSize:Z.presignWhenLargerThan,presignedUrl:await this.presignedGetUrl($),contentType:Q};let Y=await yS0(X),J=be(Q);return{content:J?new TextDecoder().decode(Y):Buffer.from(Y).toString("base64"),contentType:Q,encoding:J?"utf-8":"base64",size:G.size,lastModified:G.mtime}}async getBytes($){let Z=await yS0(g_(this.orgId,$));return new Uint8Array(Z)}async put($,Z,X){let G=g_(this.orgId,$);return await kF8(vF8(G),{recursive:!0}),await CF8(G,typeof Z==="string"?Buffer.from(Z,"utf-8"):Z),{key:$}}async list($){let Z=$?.prefix?Uu(gS0(this.orgId),b3($.prefix)):gS0(this.orgId),X;try{X=await SF8(Z,{withFileTypes:!0})}catch{return{objects:[],isTruncated:!1}}let G=$?.maxKeys??1000,Q=$?.prefix,Y=X.filter((K)=>K.isFile());if($?.delimiter){let K=[],W=X.filter((O)=>O.isDirectory());for(let O of W){let D=Q?`${Q}/${O.name}/`:`${O.name}/`;K.push(D)}K.sort();let N=G,H=K.slice(0,N);N-=H.length;let F=Y.slice(0,N),U=K.length+Y.length;return{objects:await Promise.all(F.map(async(O)=>{let D=await fe(Uu(Z,O.name));return{key:Q?`${Q}/${O.name}`:O.name,size:D.size,lastModified:D.mtime}})),isTruncated:U>G,commonPrefixes:H.length>0?H:void 0}}return{objects:await Promise.all(Y.slice(0,G).map(async(K)=>{let W=await fe(Uu(Z,K.name));return{key:Q?`${Q}/${K.name}`:K.name,size:W.size,lastModified:W.mtime}})),isTruncated:Y.length>G}}async delete($){await VF8(g_(this.orgId,$))}async head($){let Z=await fe(g_(this.orgId,$));return{contentType:HZ($),size:Z.size,lastModified:Z.mtime}}async presignedGetUrl($,Z,X){if(X?.requireFetchable)throw Error("object storage returned a not fetchable (data:) URL; configure real S3/R2/MinIO for large-payload offload");let G=g_(this.orgId,$),Q=await yS0(G),Y=HZ($),J=Buffer.from(Q).toString("base64");return`data:${Y};base64,${J}`}async presignedPutUrl($,Z=3600){if(!this.baseUrl)throw Error("baseUrl required for presigned PUT URLs in dev mode");let X=b3($),G=Math.floor(Date.now()/1000)+Z,Q=n0().encryptionKey||"dev-secret",Y=`${this.orgId}:${X}:${G}:PUT`,J=_F8("sha256",Q).update(Y).digest("hex"),K=new URL(`/api/dev-assets/${this.orgId}/${X}`,this.baseUrl);return K.searchParams.set("expires",G.toString()),K.searchParams.set("signature",J),K.searchParams.set("method","PUT"),K.toString()}}var bF8="./data/assets";var wu=B(()=>{f3();f$()});function h_($){return fF8.test($)&&$!=="."&&$!==".."}function FZ($){if(!h_($))throw Error(`Invalid org-fs volume name: ${JSON.stringify($)}`)}function UZ($){return b3($)}function u_($){let Z=$.lastIndexOf("/");return Z===-1?"":$.slice(0,Z)}function UF($){let Z=u_($);if(Z==="")return[];let X=Z.split("/"),G=[],Q="";for(let Y of X)Q=Q===""?Y:`${Q}/${Y}`,G.push(Q);return G}function y3($,Z){return`${HI1}/${$}/${Z}`}function FI1($){return`${HI1}/${$}/`}var fF8,HI1="_fs";var Ou=B(()=>{f3();fF8=/^[A-Za-z0-9_.-]{1,128}$/});import{createHmac as hS0,randomBytes as uS0,scrypt as xF8,timingSafeEqual as UI1}from"crypto";import{promisify as yF8}from"util";async function OI1($){let Z=uS0(16),X=await wI1($,Z,gF8);return`scrypt$${Z.toString("hex")}$${X.toString("hex")}`}async function BI1($,Z){let X=Z.split("$");if(X.length!==3||X[0]!=="scrypt")return!1;let G=Buffer.from(X[1],"hex"),Q=Buffer.from(X[2],"hex");if(G.length===0||Q.length===0)return!1;let Y;try{Y=await wI1($,G,Q.length)}catch{return!1}return Q.length===Y.length&&UI1(Q,Y)}function DI1(){return uS0(16).toString("hex")}function LI1(){if(xe)return xe;let $;try{let Z=n0();$=Z.studioJwtSecret??Z.betterAuthSecret}catch{$=void 0}return xe=$?Buffer.from($):uS0(32),xe}function EI1($){let Z=Buffer.from(JSON.stringify($)).toString("base64url"),X=hS0("sha256",LI1()).update(Z).digest("base64url");return`${Z}.${X}`}function zI1($,Z){let X=$.indexOf(".");if(X<0)return null;let G=$.slice(0,X),Q=Buffer.from($.slice(X+1)),Y=Buffer.from(hS0("sha256",LI1()).update(G).digest("base64url"));if(Q.length!==Y.length||!UI1(Q,Y))return null;let J;try{J=JSON.parse(Buffer.from(G,"base64url").toString())}catch{return null}if(J.o!==Z.org||J.v!==Z.volume||J.s!==Z.secret||typeof J.e!=="number"||J.e<Z.nowSec)return null;return{govPath:J.p}}function cS0($,Z,X){return`fsu_${hS0("sha256","fsunlock-name").update(`${$}:${Z}:${X}`).digest("hex").slice(0,16)}`}var gF8=64,wI1,xe=null;var lS0=B(()=>{f$();wI1=yF8(xF8)});import{createHash as hF8}from"crypto";function jI1($){return hF8("sha256").update($).digest("hex")}class g3{storage;manifest;organizationId;maxFileBytes;volumeQuotaBytes;constructor($,Z,X,G={}){this.storage=$;this.manifest=Z;this.organizationId=X;this.maxFileBytes=G.maxFileBytes??lF8,this.volumeQuotaBytes=G.volumeQuotaBytes??dF8}async usage($){return FZ($),this.manifest.usage(this.organizationId,$)}async stat($,Z){return FZ($),this.manifest.get(this.organizationId,$,UZ(Z))}async listDir($,Z){return FZ($),this.manifest.listDir(this.organizationId,$,UZ(Z))}async read($,Z){let X=await this.requireFile($,Z);return this.storage.getBytes(y3($,X.path))}async setShareMode($,Z,X,G){FZ($);let Q=UZ(Z),Y=await this.manifest.get(this.organizationId,$,Q);if(!Y)throw new zB(`No such path: ${Q}`);let J=null,K=null;if(X==="password"){if(!G.password)throw new NJ("A password is required to set password mode");J=await OI1(G.password),K=DI1()}let W=await this.manifest.setShareMode({organizationId:this.organizationId,volume:$,path:Y.path,readPublic:X!=="private",passwordHash:J,shareSecret:K,actor:G.actor});if(!W)throw new zB(`No such path: ${Y.path}`);return W}async setReadPublic($,Z,X,G){return this.setShareMode($,Z,X?"public":"private",{actor:G.actor})}async resolveReadAccess($,Z){FZ($);let X=UZ(Z),G=await this.manifest.get(this.organizationId,$,X);if(!G||G.kind!=="file")return{access:"private"};let Q=await this.manifest.resolveGoverningShare({organizationId:this.organizationId,volume:$,candidatePaths:[X,...UF(X)]});if(!Q)return{access:"private"};if(!Q.passwordHash)return{access:"public"};return{access:"password",govPath:Q.path,secret:Q.secret??"",passwordHash:Q.passwordHash}}async isPubliclyReadable($,Z){FZ($);let X=UZ(Z),G=await this.manifest.get(this.organizationId,$,X);if(!G||G.kind!=="file")return!1;if(G.readPublic)return!0;return this.manifest.hasPublicAncestorDir(this.organizationId,$,UF(X))}async inheritsPublic($,Z){return FZ($),this.manifest.hasPublicAncestorDir(this.organizationId,$,UF(UZ(Z)))}async childrenInheritPublic($,Z){FZ($);let X=UZ(Z);if(X==="")return!1;return this.manifest.hasPublicAncestorDir(this.organizationId,$,[...UF(X),X])}async recentWithEffectivePublic($){return this.withEffectivePublic(await this.recent($))}async searchWithEffectivePublic($,Z,X,G){return this.withEffectivePublic(await this.manifest.searchFiles({organizationId:this.organizationId,query:$,limit:Z,volumes:X,pathPrefix:G?UZ(G):void 0}))}async withEffectivePublic($){let Z=new Map;for(let G of $){let Q=Z.get(G.volume);if(!Q)Q=new Set,Z.set(G.volume,Q);for(let Y of UF(G.path))Q.add(Y)}let X=new Map;return await Promise.all([...Z].map(async([G,Q])=>{let Y=await this.manifest.publicDirPaths({organizationId:this.organizationId,volume:G,paths:[...Q]});X.set(G,new Set(Y))})),$.map((G)=>{let Q=X.get(G.volume),Y=!!Q&&UF(G.path).some((J)=>Q.has(J));return{...G,effectivePublic:G.readPublic||Y}})}async presignRead($,Z,X){let G=await this.requireFile($,Z);return this.storage.presignedGetUrl(y3($,G.path),X)}async write($,Z,X,G){FZ($);let Q=UZ(Z);if(Q==="")throw new NJ("Cannot write to the volume root");let Y=typeof X==="string"?new TextEncoder().encode(X):X;if(Y.byteLength>this.maxFileBytes)throw new Bu(`File exceeds the ${this.maxFileBytes}-byte per-file limit`);let[J,K]=await Promise.all([G.skipVolumeQuota?Promise.resolve(null):this.manifest.usage(this.organizationId,$),this.manifest.get(this.organizationId,$,Q)]);if(K?.kind==="dir")throw new NJ(`Cannot write a file at ${Q}: a directory exists there`);if(J){let W=K?.kind==="file"?K.size:0;if(J.bytes-W+Y.byteLength>this.volumeQuotaBytes)throw new Bu(`Write would exceed the volume quota of ${this.volumeQuotaBytes} bytes`)}return await this.ensureDirs($,Q,G.actor),await this.storage.put(y3($,Q),Y,{contentType:G.contentType??HZ(Q)}),this.manifest.putFile({organizationId:this.organizationId,volume:$,path:Q,parent:u_(Q),contentHash:jI1(Y),size:Y.byteLength,actor:G.actor,threadId:G.threadId??null})}async mkdir($,Z,X){FZ($);let G=UZ(Z);if(G==="")return;if((await this.manifest.get(this.organizationId,$,G))?.kind==="file")throw new NJ(`Cannot create a directory at ${G}: a file exists there`);await this.ensureDirs($,G,X.actor),await this.manifest.putDir({organizationId:this.organizationId,volume:$,path:G,parent:u_(G),actor:X.actor})}async delete($,Z,X){FZ($);let G=UZ(Z);if(G==="")throw new NJ("Cannot delete the volume root");let Q=await this.manifest.get(this.organizationId,$,G);if(!Q)return;if(Q.kind==="dir"){let Y=await this.manifest.listSubtreeFiles(this.organizationId,$,G);await Promise.all(Y.map((J)=>this.storage.delete(y3($,J.path)))),await this.manifest.tombstoneSubtree(this.organizationId,$,G,X.actor);return}await this.storage.delete(y3($,G)),await this.manifest.tombstone(this.organizationId,$,G,X.actor)}async move($,Z,X,G){FZ($);let Q=UZ(Z),Y=UZ(X);if(Q===""||Y==="")throw new NJ("Cannot move the volume root");if(Y===Q||Y.startsWith(`${Q}/`))throw new NJ(`Cannot move ${Q} onto itself or into its own subtree`);let J=await this.manifest.get(this.organizationId,$,Q);if(!J)throw new zB(`No such path: ${Q}`);if(J.kind==="file"){let N=await this.storage.getBytes(y3($,Q));await this.write($,Y,N,{...G,skipVolumeQuota:!0}),await this.delete($,Q,G);return}let[K,W]=await Promise.all([this.manifest.listSubtreeFiles(this.organizationId,$,Q),this.manifest.listSubtreeDirs(this.organizationId,$,Q)]);await this.mkdir($,Y,G);for(let N of K){let H=N.path.slice(Q.length+1),F=await this.storage.getBytes(y3($,N.path));await this.write($,`${Y}/${H}`,F,{...G,skipVolumeQuota:!0})}for(let N of W){let H=N.path.slice(Q.length+1);await this.mkdir($,`${Y}/${H}`,G)}await this.delete($,Q,G)}async filesExist($,Z){FZ($);let X=await this.manifest.liveFilePaths({organizationId:this.organizationId,volume:$,paths:Z.map((G)=>UZ(G))});return new Set(X)}async recent($){return this.manifest.recentFiles({organizationId:this.organizationId,limit:$})}async changes($,Z,X=uF8){FZ($);let G=Z||"0";if(!/^\d+$/.test(G))throw new NJ(`Invalid cursor: ${Z}`);let Q=await this.manifest.changesSince({organizationId:this.organizationId,volume:$,sinceSeq:G,limit:X}),Y=Q.at(-1);return{entries:Q,cursor:Y?Y.seq:Z||"0",hasMore:Q.length>=X}}async latestSeq($){return FZ($),this.manifest.latestSeq({organizationId:this.organizationId,volume:$})}async backfillFromStorage($,Z){FZ($);let X=FI1($),G,Q=0;do{let Y=await this.storage.list({prefix:X,maxKeys:cF8,continuationToken:G});for(let J of Y.objects){let K=J.key.slice(X.length);if(K==="")continue;await this.ensureDirs($,K,Z.actor);let W=await this.storage.getBytes(J.key);await this.manifest.putFile({organizationId:this.organizationId,volume:$,path:K,parent:u_(K),contentHash:jI1(W),size:W.byteLength,actor:Z.actor}),Q++}G=Y.isTruncated?Y.nextContinuationToken:void 0}while(G);return Q}async requireFile($,Z){FZ($);let X=UZ(Z),G=await this.manifest.get(this.organizationId,$,X);if(!G||G.kind!=="file")throw new zB(`No such file: ${X}`);return G}async ensureDirs($,Z,X){for(let G of UF(Z))await this.manifest.putDir({organizationId:this.organizationId,volume:$,path:G,parent:u_(G),actor:X})}}var uF8=500,cF8=1000,lF8=524288000,dF8=10737418240,Bu,NJ,zB;var c_=B(()=>{f3();Ou();lS0();Bu=class Bu extends Error{constructor($){super($);this.name="OrgFsQuotaError"}};NJ=class NJ extends Error{constructor($){super($);this.name="OrgFsValidationError"}};zB=class zB extends Error{constructor($){super($);this.name="OrgFsNotFoundError"}}});import{z as tW}from"zod";function wF($){return $.startsWith(PI1)}function OF($){return`${PI1}${$}`}function tF8($){let Z=new Map(nF8.map((X)=>[X.set,X]));if($)try{for(let X of pF8.parse(JSON.parse($)))Z.set(X.set,X)}catch(X){console.warn("[org-fs] invalid ORGFS_PUBLIC_SETS \u2014 using built-in defaults only",X)}return[...Z.values()]}function oQ(){return tF8(n0().orgFsPublicSetsJson)}function Du($){let Z=aG(),X=Z?WJ(Z,oW):new x3(oW,$.baseUrl);return new g3(X,$.storage.orgFsEntries,oW)}var oW="org_orgfs_public_skills",PI1="public-",mF8,iF8,nF8,pF8;var l_=B(()=>{f$();EB();wu();c_();mF8=tW.object({from:tW.string(),to:tW.string().optional()}),iF8=tW.object({set:tW.string().regex(/^[a-z0-9][a-z0-9-]{0,40}$/),repo:tW.string().regex(/^[\w.-]+\/[\w.-]+$/),ref:tW.string().min(1),paths:tW.array(mF8).min(1)}),nF8=[{set:"core",repo:"decocms/studio",ref:"main",paths:[{from:"packages/sandbox/image/skills"}]},{set:"storefront",repo:"decocms/storefront-skills",ref:"main",paths:[{from:".claude-seo/skills"},{from:".claude-performance/skills"},{from:".claude-deco/skills"}]}],pF8=tW.array(iF8).refine(($)=>new Set($.map((Z)=>Z.set)).size===$.length,{message:"duplicate set names"})});import{sql as jB}from"kysely";function dS0($){if($===null)return null;return $ instanceof Date?$.toISOString():String($)}function HJ($){return{organizationId:$.organization_id,volume:$.volume,path:$.path,parent:$.parent,kind:$.kind,contentHash:$.content_hash,size:Number($.size),seq:String($.seq),deletedAt:dS0($.deleted_at),createdBy:$.created_by,createdAt:dS0($.created_at)??"",updatedBy:$.updated_by,updatedAt:dS0($.updated_at)??"",threadId:$.thread_id,readPublic:$.read_public,shareMode:!$.read_public?"private":$.share_password_hash?"password":"public"}}class Eu{db;constructor($){this.db=$}async putFile($){let Z=new Date,X=$.threadId??null,G=await this.db.insertInto("org_fs_entry").values({organization_id:$.organizationId,volume:$.volume,path:$.path,parent:$.parent,kind:"file",content_hash:$.contentHash,size:$.size,deleted_at:null,created_by:$.actor,created_at:Z,updated_by:$.actor,updated_at:Z,thread_id:X}).onConflict((Q)=>Q.columns(["organization_id","volume","path"]).doUpdateSet({kind:"file",content_hash:$.contentHash,size:$.size,deleted_at:null,updated_by:$.actor,updated_at:Z,seq:ye,read_public:jB`case when org_fs_entry.deleted_at is not null then false else org_fs_entry.read_public end`,thread_id:jB`coalesce(cast(${X} as text), org_fs_entry.thread_id)`})).returning(FJ).executeTakeFirstOrThrow();return HJ(G)}async putDir($){let Z=new Date;await this.db.insertInto("org_fs_entry").values({organization_id:$.organizationId,volume:$.volume,path:$.path,parent:$.parent,kind:"dir",content_hash:null,size:0,deleted_at:null,created_by:$.actor,created_at:Z,updated_by:$.actor,updated_at:Z}).onConflict((X)=>X.columns(["organization_id","volume","path"]).where("org_fs_entry.deleted_at","is not",null).doUpdateSet({kind:"dir",content_hash:null,size:0,deleted_at:null,updated_by:$.actor,updated_at:Z,seq:ye,read_public:jB`case when org_fs_entry.deleted_at is not null then false else org_fs_entry.read_public end`})).execute()}async get($,Z,X){let G=await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("path","=",X).where("deleted_at","is",null).select(FJ).executeTakeFirst();return G?HJ(G):null}async listDir($,Z,X){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("parent","=",X).where("deleted_at","is",null).select(FJ).orderBy("path","asc").execute()).map((Q)=>HJ(Q))}async listVolumeDirs($,Z){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","dir").where("deleted_at","is",null).select(FJ).execute()).map((G)=>HJ(G))}async listVolumeFiles($,Z){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","file").where("deleted_at","is",null).select(FJ).execute()).map((G)=>HJ(G))}async listSubtreeFiles($,Z,X){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","file").where("deleted_at","is",null).where("path","like",`${Lu(X)}/%`).select(FJ).execute()).map((Q)=>HJ(Q))}async listSubtreeDirs($,Z,X){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","dir").where("deleted_at","is",null).where("path","like",`${Lu(X)}/%`).select(FJ).execute()).map((Q)=>HJ(Q))}async tombstone($,Z,X,G){await this.db.updateTable("org_fs_entry").set({deleted_at:new Date,updated_by:G,updated_at:new Date,seq:ye}).where("organization_id","=",$).where("volume","=",Z).where("path","=",X).where("deleted_at","is",null).execute()}async tombstoneSubtree($,Z,X,G){await this.db.updateTable("org_fs_entry").set({deleted_at:new Date,updated_by:G,updated_at:new Date,seq:ye}).where("organization_id","=",$).where("volume","=",Z).where("deleted_at","is",null).where((Q)=>Q.or([Q("path","=",X),Q("path","like",`${Lu(X)}/%`)])).execute()}async setShareMode($){let Z=new Date,X=await this.db.updateTable("org_fs_entry").set({read_public:$.readPublic,share_password_hash:$.passwordHash,share_secret:$.shareSecret,updated_by:$.actor,updated_at:Z}).where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("path","=",$.path).where("deleted_at","is",null).returning(FJ).executeTakeFirst();return X?HJ(X):null}async resolveGoverningShare($){if($.candidatePaths.length===0)return null;let Z=await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("read_public","=",!0).where("deleted_at","is",null).where("path","in",$.candidatePaths).select(["path","share_password_hash","share_secret"]).execute();if(Z.length===0)return null;Z.sort((G,Q)=>Q.path.length-G.path.length);let X=Z[0];return{path:X.path,passwordHash:X.share_password_hash,secret:X.share_secret}}async hasPublicAncestorDir($,Z,X){if(X.length===0)return!1;return!!await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","dir").where("read_public","=",!0).where("deleted_at","is",null).where("path","in",X).select("path").limit(1).executeTakeFirst()}async publicDirPaths($){if($.paths.length===0)return[];return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("kind","=","dir").where("read_public","=",!0).where("deleted_at","is",null).where("path","in",$.paths).select("path").execute()).map((X)=>X.path)}async usage($,Z){let X=await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","file").where("deleted_at","is",null).select((G)=>[G.fn.countAll().as("files"),G.fn.coalesce(G.fn.sum("size"),jB`0`).as("bytes")]).executeTakeFirst();return{files:Number(X?.files??0),bytes:Number(X?.bytes??0)}}async liveFilePaths($){if($.paths.length===0)return[];return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("kind","=","file").where("deleted_at","is",null).where("path","in",$.paths).select(["path"]).execute()).map((X)=>X.path)}async recentFiles($){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("kind","=","file").where("deleted_at","is",null).select(FJ).orderBy("seq","desc").limit($.limit).execute()).map((X)=>HJ(X))}async searchFiles($){if($.volumes&&$.volumes.length===0)return[];let Z=Lu($.query),X=this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("kind","=","file").where("deleted_at","is",null).where("path","ilike",`%${Z}%`);if($.volumes)X=X.where("volume","in",$.volumes);if($.pathPrefix)X=X.where("path","like",`${Lu($.pathPrefix)}/%`);return(await X.select(FJ).orderBy("seq","desc").limit($.limit).execute()).map((Q)=>HJ(Q))}async changesSince($){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("seq",">",jB`cast(${$.sinceSeq} as bigint)`).select(FJ).orderBy("seq","asc").limit($.limit).execute()).map((X)=>HJ(X))}async latestSeq($){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).select(jB`max(seq)`.as("seq")).executeTakeFirst())?.seq??"0"}}function Lu($){return $.replace(/[\\%_]/g,"\\$&")}var FJ,ye;var mS0=B(()=>{FJ=["organization_id","volume","path","parent","kind","content_hash","size","seq","deleted_at","created_by","created_at","updated_by","updated_at","thread_id","read_public","share_password_hash"],ye=jB`nextval('org_fs_entry_seq')`});import{createHash as oF8}from"crypto";import{gunzipSync as rF8}from"zlib";function nS0($,Z,X){let G=Z,Q=Z+X;while(G<Q&&$[G]!==0)G++;return new TextDecoder().decode($.subarray(Z,G))}function sF8($,Z,X){let G=nS0($,Z,X).trim();return G===""?0:Number.parseInt(G,8)}function eF8($){let Z=new Map,X=0,G=null,Q=null;while(X+512<=$.length){let Y=$.subarray(X,X+512);if(X+=512,Y.every((U)=>U===0))break;let J=nS0(Y,0,100),K=nS0(Y,345,155);if(K)J=`${K}/${J}`;let W=sF8(Y,124,12),N=String.fromCharCode(Y[156]??0),H=$.subarray(X,X+W);if(X+=Math.ceil(W/512)*512,N==="L"){let U=new TextDecoder().decode(H),w=U.indexOf("\x00");G=w===-1?U:U.slice(0,w);continue}if(N==="x"){let U=new TextDecoder().decode(H);Q=/(?:^|\n)\d+ path=([^\n]*)\n/.exec(U)?.[1]??null;continue}if(N==="g")continue;let F=Q??G??J;if(G=null,Q=null,N==="0"||N==="\x00"||N==="")Z.set(F,new Uint8Array(H))}return Z}async function $U8($,Z){let X=`https://codeload.github.com/${$}/tar.gz/${encodeURIComponent(Z)}`,G=await fetch(X,{signal:AbortSignal.timeout(60000)});if(!G.ok)throw Error(`tarball fetch failed for ${$}@${Z}: HTTP ${G.status}`);let Q=Number(G.headers.get("content-length")??0);if(Q>ge)throw Error(`tarball for ${$}@${Z} declares ${Q} bytes (cap ${ge})`);let Y=new Uint8Array(await G.arrayBuffer());if(Y.length>ge)throw Error(`tarball for ${$}@${Z} exceeds ${ge} bytes`);let J=eF8(new Uint8Array(rF8(Y,{maxOutputLength:aF8}))),K=new Map;for(let[W,N]of J){let H=W.indexOf("/");if(H===-1)continue;let F=W.slice(H+1);if(F)K.set(F,N)}return K}function ZU8($,Z){let X=new Map;for(let{from:G,to:Q}of Z){let Y=G===""?"":`${G.replace(/\/+$/,"")}/`;for(let[J,K]of $){if(!J.startsWith(Y))continue;let W=J.slice(Y.length);if(!W)continue;let N=UZ(Q?`${Q}/${W}`:W);if(N)X.set(N,K)}}return X}function XU8($,Z){let X=new Set;for(let Y of $){let J=Y.split("/");for(let K=1;K<J.length;K++)X.add(J.slice(0,K).join("/"))}let G=[...Z].filter((Y)=>!X.has(Y)).sort((Y,J)=>Y.length-J.length),Q=[];for(let Y of G)if(!Q.some((J)=>Y.startsWith(`${J}/`)))Q.push(Y);return Q}function GU8($){return oF8("sha256").update($).digest("hex")}async function QU8($,Z,X){let G=aG(),Q=G?WJ(G,oW):new x3(oW,X.baseUrl),Y=new Eu($),J=new g3(Q,Y,oW),K=OF(Z.set),W=ZU8(await $U8(Z.repo,Z.ref),Z.paths),N=new Map((await Y.listVolumeFiles(oW,K)).map((O)=>[O.path,O.contentHash]));if(W.size===0&&N.size>0)throw Error(`set "${Z.set}" resolved 0 files from ${Z.repo}@${Z.ref} `+`(check paths config) \u2014 refusing to delete the ${N.size} existing files`);let H=0;for(let O of N.keys()){if(W.has(O))continue;await J.delete(K,O,{actor:iS0}),H++}let F=await Y.listVolumeDirs(oW,K);for(let O of XU8(W.keys(),F.map((D)=>D.path)))await J.delete(K,O,{actor:iS0});let U=0,w=0;for(let[O,D]of W){if(N.get(O)===GU8(D)){w++;continue}await J.write(K,O,D,{actor:iS0,contentType:HZ(O),skipVolumeQuota:!0}),U++}return{set:Z.set,written:U,deleted:H,unchanged:w}}async function pS0($,Z,X){try{return await QU8($,Z,X)}catch(G){return{set:Z.set,error:G instanceof Error?G.message:String(G)}}}async function AI1($,Z){let X=[];for(let G of oQ())X.push(await pS0($,G,Z));return X}var iS0="system:skill-set-sync",ge=209715200,aF8=1073741824;var tS0=B(()=>{mS0();wu();EB();f3();c_();Ou();l_()});import{DBOS as he,SchedulerMode as YU8}from"@dbos-inc/dbos-sdk";function TI1($){oS0=$}function KU8(){if(!oS0)throw Error("[org-fs] public-sets sync runtime not initialized \u2014 setPublicSetsSyncRuntime() must run before the workflow fires");return oS0}async function WU8($,Z){for(let X of oQ()){let G=await he.runStep(()=>{let Q=KU8();return pS0(Q.db,X,{baseUrl:Q.baseUrl})},{name:`syncPublicSet:${X.set}`});if("error"in G)console.warn(`[org-fs] public set "${G.set}" sync failed: ${G.error}`);else if(G.written||G.deleted)console.log(`[org-fs] public set "${G.set}" synced: +${G.written} -${G.deleted} (=${G.unchanged})`)}}function RI1(){if(zu)return;zu=he.registerWorkflow(WU8,{name:"publicSetsSyncWorkflow"}),he.registerScheduled(zu,{name:"publicSetsSyncWorkflow",crontab:JU8,mode:YU8.ExactlyOncePerIntervalWhenActive})}async function II1(){if(oQ().length===0||!zu)return;let $=new Date,Z=`public-sets-sync-boot:${$.toISOString().slice(0,13)}`;await he.startWorkflow(zu,{workflowID:Z})($,$)}var JU8="4-59/10 * * * *",oS0=null,zu=null;var qI1=B(()=>{l_();tS0()});function L9(){let $=n0();if($.baseUrl)return $.baseUrl;return`http://localhost:${$.port??3000}`}function MI1(){return`http://localhost:${n0().port??3000}`}function nX(){return n0().publicUrl??L9()}var wZ=B(()=>{f$()});import{z as z$}from"zod";var NU8,HU8,FU8,UU8,wU8,OU8,BU8,DU8,LU8,EU8,zU8,jU8,PB;var ju=B(()=>{NU8=z$.object({prefix:z$.string().optional().describe("Filter objects by prefix (e.g., 'folder/' for folder contents)"),maxKeys:z$.number().optional().default(1000).describe("Maximum number of keys to return (default: 1000)"),continuationToken:z$.string().optional().describe("Token for pagination from previous response"),delimiter:z$.string().optional().describe("Delimiter for grouping keys (typically '/'). When set, commonPrefixes returns folder paths.")}),HU8=z$.object({objects:z$.array(z$.object({key:z$.string().describe("Object key/path"),size:z$.number().describe("Object size in bytes"),lastModified:z$.string().describe("Last modified timestamp"),etag:z$.string().describe("Entity tag for the object")})),nextContinuationToken:z$.string().optional().describe("Token for fetching next page of results"),isTruncated:z$.boolean().describe("Whether there are more results available"),commonPrefixes:z$.array(z$.string()).optional().describe("Folder paths when delimiter is used (e.g., ['photos/2024/', 'photos/2025/'])")}),FU8=z$.object({key:z$.string().describe("Object key/path to get metadata for")}),UU8=z$.object({contentType:z$.string().optional().describe("MIME type of the object"),contentLength:z$.number().describe("Size of the object in bytes"),lastModified:z$.string().describe("Last modified timestamp"),etag:z$.string().describe("Entity tag for the object"),metadata:z$.record(z$.string(),z$.string()).optional().describe("Custom metadata key-value pairs")}),wU8=z$.object({key:z$.string().describe("Object key/path to generate URL for"),expiresIn:z$.number().optional().describe("URL expiration time in seconds (default: from state config or 3600)")}),OU8=z$.object({url:z$.string().describe("Presigned URL for downloading the object"),expiresIn:z$.number().describe("Expiration time in seconds that was used")}),BU8=z$.object({key:z$.string().describe("Object key/path for the upload"),expiresIn:z$.number().optional().describe("URL expiration time in seconds (default: from state config or 3600)"),contentType:z$.string().optional().describe("MIME type for the object being uploaded")}),DU8=z$.object({url:z$.string().describe("Presigned URL for uploading the object"),expiresIn:z$.number().describe("Expiration time in seconds that was used")}),LU8=z$.object({key:z$.string().describe("Object key/path to delete")}),EU8=z$.object({success:z$.boolean().describe("Whether the deletion was successful"),key:z$.string().describe("The key that was deleted")}),zU8=z$.object({keys:z$.array(z$.string()).max(1000).describe("Array of object keys/paths to delete (max 1000)")}),jU8=z$.object({deleted:z$.array(z$.string()).describe("Array of successfully deleted keys"),errors:z$.array(z$.object({key:z$.string(),message:z$.string()})).describe("Array of errors for failed deletions")}),PB=[{name:"LIST_OBJECTS",inputSchema:NU8,outputSchema:HU8},{name:"GET_OBJECT_METADATA",inputSchema:FU8,outputSchema:UU8},{name:"GET_PRESIGNED_URL",inputSchema:wU8,outputSchema:OU8},{name:"PUT_PRESIGNED_URL",inputSchema:BU8,outputSchema:DU8},{name:"DELETE_OBJECT",inputSchema:LU8,outputSchema:EU8},{name:"DELETE_OBJECTS",inputSchema:zU8,outputSchema:jU8}]});import*as v from"zod/v4";function dI1($){if($.params.ref.type!=="ref/prompt")throw TypeError(`Expected CompleteRequestPrompt, but got ${$.params.ref.type}`)}function mI1($){if($.params.ref.type!=="ref/resource")throw TypeError(`Expected CompleteRequestResourceTemplate, but got ${$.params.ref.type}`)}var BF="2025-11-25",kI1="2025-03-26",DF,LF="io.modelcontextprotocol/related-task",ce="2.0",u9,SI1,VI1,ij6,PU8,AU8,rS0,sG,Pu,CI1=($)=>Pu.safeParse($).success,cZ,rQ,aQ,lZ,le,_I1,h3=($)=>_I1.safeParse($).success,vI1,bI1=($)=>vI1.safeParse($).success,aS0,UJ=($)=>aS0.safeParse($).success,T1,sS0,m_=($)=>sS0.safeParse($).success,eG,nj6,rW,TU8,de,RU8,Au,d_,fI1,IU8,qU8,MU8,kU8,SU8,VU8,me,eS0=($)=>me.safeParse($).success,CU8,$V0,ie,xI1=($)=>ie.safeParse($).success,ne,_U8,vU8,pe,bU8,Tu,Ru,fU8,Iu,aW,xU8,qu,te,oe,re,pj6,ae,se,ee,yI1,gI1,hI1,ZV0,uI1,Mu,i_,cI1,yU8,EF,XV0,zF,GV0,QV0,gU8,n_,YV0,JV0,hU8,uU8,cU8,lU8,dU8,mU8,iU8,nU8,jF,KV0,pU8,p_,WV0,NV0,HV0,tU8,oU8,rU8,FV0,aU8,UV0,wV0,sU8,eU8,$00,t_,ku,u3,tj6,$w8,PF,OV0,lI1,Su,Zw8,BV0,Xw8,Gw8,Qw8,Yw8,Jw8,Kw8,Ww8,ue,Nw8,Hw8,DV0,AB,Vu,Fw8,Uw8,ww8,Ow8,Bw8,Dw8,Lw8,Ew8,zw8,jw8,Pw8,Aw8,Tw8,Rw8,Iw8,LV0,qw8,Mw8,AF,kw8,Sw8,Vw8,Z00,EV0,Cw8,_w8,zV0,vw8,oj6,rj6,aj6,sj6,ej6,$P6,O1,iI1;var h5=B(()=>{DF=[BF,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],u9=v.custom(($)=>$!==null&&(typeof $==="object"||typeof $==="function")),SI1=v.union([v.string(),v.number().int()]),VI1=v.string(),ij6=v.looseObject({ttl:v.number().optional(),pollInterval:v.number().optional()}),PU8=v.object({ttl:v.number().optional()}),AU8=v.object({taskId:v.string()}),rS0=v.looseObject({progressToken:SI1.optional(),[LF]:AU8.optional()}),sG=v.object({_meta:rS0.optional()}),Pu=sG.extend({task:PU8.optional()}),cZ=v.object({method:v.string(),params:sG.loose().optional()}),rQ=v.object({_meta:rS0.optional()}),aQ=v.object({method:v.string(),params:rQ.loose().optional()}),lZ=v.looseObject({_meta:rS0.optional()}),le=v.union([v.string(),v.number().int()]),_I1=v.object({jsonrpc:v.literal(ce),id:le,...cZ.shape}).strict(),vI1=v.object({jsonrpc:v.literal(ce),...aQ.shape}).strict(),aS0=v.object({jsonrpc:v.literal(ce),id:le,result:lZ}).strict();(function($){$[$.ConnectionClosed=-32000]="ConnectionClosed",$[$.RequestTimeout=-32001]="RequestTimeout",$[$.ParseError=-32700]="ParseError",$[$.InvalidRequest=-32600]="InvalidRequest",$[$.MethodNotFound=-32601]="MethodNotFound",$[$.InvalidParams=-32602]="InvalidParams",$[$.InternalError=-32603]="InternalError",$[$.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(T1||(T1={}));sS0=v.object({jsonrpc:v.literal(ce),id:le.optional(),error:v.object({code:v.number().int(),message:v.string(),data:v.unknown().optional()})}).strict(),eG=v.union([_I1,vI1,aS0,sS0]),nj6=v.union([aS0,sS0]),rW=lZ.strict(),TU8=rQ.extend({requestId:le.optional(),reason:v.string().optional()}),de=aQ.extend({method:v.literal("notifications/cancelled"),params:TU8}),RU8=v.object({src:v.string(),mimeType:v.string().optional(),sizes:v.array(v.string()).optional(),theme:v.enum(["light","dark"]).optional()}),Au=v.object({icons:v.array(RU8).optional()}),d_=v.object({name:v.string(),title:v.string().optional()}),fI1=d_.extend({...d_.shape,...Au.shape,version:v.string(),websiteUrl:v.string().optional(),description:v.string().optional()}),IU8=v.intersection(v.object({applyDefaults:v.boolean().optional()}),v.record(v.string(),v.unknown())),qU8=v.preprocess(($)=>{if($&&typeof $==="object"&&!Array.isArray($)){if(Object.keys($).length===0)return{form:{}}}return $},v.intersection(v.object({form:IU8.optional(),url:u9.optional()}),v.record(v.string(),v.unknown()).optional())),MU8=v.looseObject({list:u9.optional(),cancel:u9.optional(),requests:v.looseObject({sampling:v.looseObject({createMessage:u9.optional()}).optional(),elicitation:v.looseObject({create:u9.optional()}).optional()}).optional()}),kU8=v.looseObject({list:u9.optional(),cancel:u9.optional(),requests:v.looseObject({tools:v.looseObject({call:u9.optional()}).optional()}).optional()}),SU8=v.object({experimental:v.record(v.string(),u9).optional(),sampling:v.object({context:u9.optional(),tools:u9.optional()}).optional(),elicitation:qU8.optional(),roots:v.object({listChanged:v.boolean().optional()}).optional(),tasks:MU8.optional(),extensions:v.record(v.string(),u9).optional()}),VU8=sG.extend({protocolVersion:v.string(),capabilities:SU8,clientInfo:fI1}),me=cZ.extend({method:v.literal("initialize"),params:VU8}),CU8=v.object({experimental:v.record(v.string(),u9).optional(),logging:u9.optional(),completions:u9.optional(),prompts:v.object({listChanged:v.boolean().optional()}).optional(),resources:v.object({subscribe:v.boolean().optional(),listChanged:v.boolean().optional()}).optional(),tools:v.object({listChanged:v.boolean().optional()}).optional(),tasks:kU8.optional(),extensions:v.record(v.string(),u9).optional()}),$V0=lZ.extend({protocolVersion:v.string(),capabilities:CU8,serverInfo:fI1,instructions:v.string().optional()}),ie=aQ.extend({method:v.literal("notifications/initialized"),params:rQ.optional()}),ne=cZ.extend({method:v.literal("ping"),params:sG.optional()}),_U8=v.object({progress:v.number(),total:v.optional(v.number()),message:v.optional(v.string())}),vU8=v.object({...rQ.shape,..._U8.shape,progressToken:SI1}),pe=aQ.extend({method:v.literal("notifications/progress"),params:vU8}),bU8=sG.extend({cursor:VI1.optional()}),Tu=cZ.extend({params:bU8.optional()}),Ru=lZ.extend({nextCursor:VI1.optional()}),fU8=v.enum(["working","input_required","completed","failed","cancelled"]),Iu=v.object({taskId:v.string(),status:fU8,ttl:v.union([v.number(),v.null()]),createdAt:v.string(),lastUpdatedAt:v.string(),pollInterval:v.optional(v.number()),statusMessage:v.optional(v.string())}),aW=lZ.extend({task:Iu}),xU8=rQ.merge(Iu),qu=aQ.extend({method:v.literal("notifications/tasks/status"),params:xU8}),te=cZ.extend({method:v.literal("tasks/get"),params:sG.extend({taskId:v.string()})}),oe=lZ.merge(Iu),re=cZ.extend({method:v.literal("tasks/result"),params:sG.extend({taskId:v.string()})}),pj6=lZ.loose(),ae=Tu.extend({method:v.literal("tasks/list")}),se=Ru.extend({tasks:v.array(Iu)}),ee=cZ.extend({method:v.literal("tasks/cancel"),params:sG.extend({taskId:v.string()})}),yI1=lZ.merge(Iu),gI1=v.object({uri:v.string(),mimeType:v.optional(v.string()),_meta:v.record(v.string(),v.unknown()).optional()}),hI1=gI1.extend({text:v.string()}),ZV0=v.string().refine(($)=>{try{return atob($),!0}catch{return!1}},{message:"Invalid Base64 string"}),uI1=gI1.extend({blob:ZV0}),Mu=v.enum(["user","assistant"]),i_=v.object({audience:v.array(Mu).optional(),priority:v.number().min(0).max(1).optional(),lastModified:v.iso.datetime({offset:!0}).optional()}),cI1=v.object({...d_.shape,...Au.shape,uri:v.string(),description:v.optional(v.string()),mimeType:v.optional(v.string()),size:v.optional(v.number()),annotations:i_.optional(),_meta:v.optional(v.looseObject({}))}),yU8=v.object({...d_.shape,...Au.shape,uriTemplate:v.string(),description:v.optional(v.string()),mimeType:v.optional(v.string()),annotations:i_.optional(),_meta:v.optional(v.looseObject({}))}),EF=Tu.extend({method:v.literal("resources/list")}),XV0=Ru.extend({resources:v.array(cI1)}),zF=Tu.extend({method:v.literal("resources/templates/list")}),GV0=Ru.extend({resourceTemplates:v.array(yU8)}),QV0=sG.extend({uri:v.string()}),gU8=QV0,n_=cZ.extend({method:v.literal("resources/read"),params:gU8}),YV0=lZ.extend({contents:v.array(v.union([hI1,uI1]))}),JV0=aQ.extend({method:v.literal("notifications/resources/list_changed"),params:rQ.optional()}),hU8=QV0,uU8=cZ.extend({method:v.literal("resources/subscribe"),params:hU8}),cU8=QV0,lU8=cZ.extend({method:v.literal("resources/unsubscribe"),params:cU8}),dU8=rQ.extend({uri:v.string()}),mU8=aQ.extend({method:v.literal("notifications/resources/updated"),params:dU8}),iU8=v.object({name:v.string(),description:v.optional(v.string()),required:v.optional(v.boolean())}),nU8=v.object({...d_.shape,...Au.shape,description:v.optional(v.string()),arguments:v.optional(v.array(iU8)),_meta:v.optional(v.looseObject({}))}),jF=Tu.extend({method:v.literal("prompts/list")}),KV0=Ru.extend({prompts:v.array(nU8)}),pU8=sG.extend({name:v.string(),arguments:v.record(v.string(),v.string()).optional()}),p_=cZ.extend({method:v.literal("prompts/get"),params:pU8}),WV0=v.object({type:v.literal("text"),text:v.string(),annotations:i_.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),NV0=v.object({type:v.literal("image"),data:ZV0,mimeType:v.string(),annotations:i_.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),HV0=v.object({type:v.literal("audio"),data:ZV0,mimeType:v.string(),annotations:i_.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),tU8=v.object({type:v.literal("tool_use"),name:v.string(),id:v.string(),input:v.record(v.string(),v.unknown()),_meta:v.record(v.string(),v.unknown()).optional()}),oU8=v.object({type:v.literal("resource"),resource:v.union([hI1,uI1]),annotations:i_.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),rU8=cI1.extend({type:v.literal("resource_link")}),FV0=v.union([WV0,NV0,HV0,rU8,oU8]),aU8=v.object({role:Mu,content:FV0}),UV0=lZ.extend({description:v.string().optional(),messages:v.array(aU8)}),wV0=aQ.extend({method:v.literal("notifications/prompts/list_changed"),params:rQ.optional()}),sU8=v.object({title:v.string().optional(),readOnlyHint:v.boolean().optional(),destructiveHint:v.boolean().optional(),idempotentHint:v.boolean().optional(),openWorldHint:v.boolean().optional()}),eU8=v.object({taskSupport:v.enum(["required","optional","forbidden"]).optional()}),$00=v.object({...d_.shape,...Au.shape,description:v.string().optional(),inputSchema:v.object({type:v.literal("object"),properties:v.record(v.string(),u9).optional(),required:v.array(v.string()).optional()}).catchall(v.unknown()),outputSchema:v.object({type:v.literal("object"),properties:v.record(v.string(),u9).optional(),required:v.array(v.string()).optional()}).catchall(v.unknown()).optional(),annotations:sU8.optional(),execution:eU8.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),t_=Tu.extend({method:v.literal("tools/list")}),ku=Ru.extend({tools:v.array($00)}),u3=lZ.extend({content:v.array(FV0).default([]),structuredContent:v.record(v.string(),v.unknown()).optional(),isError:v.boolean().optional()}),tj6=u3.or(lZ.extend({toolResult:v.unknown()})),$w8=Pu.extend({name:v.string(),arguments:v.record(v.string(),v.unknown()).optional()}),PF=cZ.extend({method:v.literal("tools/call"),params:$w8}),OV0=aQ.extend({method:v.literal("notifications/tools/list_changed"),params:rQ.optional()}),lI1=v.object({autoRefresh:v.boolean().default(!0),debounceMs:v.number().int().nonnegative().default(300)}),Su=v.enum(["debug","info","notice","warning","error","critical","alert","emergency"]),Zw8=sG.extend({level:Su}),BV0=cZ.extend({method:v.literal("logging/setLevel"),params:Zw8}),Xw8=rQ.extend({level:Su,logger:v.string().optional(),data:v.unknown()}),Gw8=aQ.extend({method:v.literal("notifications/message"),params:Xw8}),Qw8=v.object({name:v.string().optional()}),Yw8=v.object({hints:v.array(Qw8).optional(),costPriority:v.number().min(0).max(1).optional(),speedPriority:v.number().min(0).max(1).optional(),intelligencePriority:v.number().min(0).max(1).optional()}),Jw8=v.object({mode:v.enum(["auto","required","none"]).optional()}),Kw8=v.object({type:v.literal("tool_result"),toolUseId:v.string().describe("The unique identifier for the corresponding tool call."),content:v.array(FV0).default([]),structuredContent:v.object({}).loose().optional(),isError:v.boolean().optional(),_meta:v.record(v.string(),v.unknown()).optional()}),Ww8=v.discriminatedUnion("type",[WV0,NV0,HV0]),ue=v.discriminatedUnion("type",[WV0,NV0,HV0,tU8,Kw8]),Nw8=v.object({role:Mu,content:v.union([ue,v.array(ue)]),_meta:v.record(v.string(),v.unknown()).optional()}),Hw8=Pu.extend({messages:v.array(Nw8),modelPreferences:Yw8.optional(),systemPrompt:v.string().optional(),includeContext:v.enum(["none","thisServer","allServers"]).optional(),temperature:v.number().optional(),maxTokens:v.number().int(),stopSequences:v.array(v.string()).optional(),metadata:u9.optional(),tools:v.array($00).optional(),toolChoice:Jw8.optional()}),DV0=cZ.extend({method:v.literal("sampling/createMessage"),params:Hw8}),AB=lZ.extend({model:v.string(),stopReason:v.optional(v.enum(["endTurn","stopSequence","maxTokens"]).or(v.string())),role:Mu,content:Ww8}),Vu=lZ.extend({model:v.string(),stopReason:v.optional(v.enum(["endTurn","stopSequence","maxTokens","toolUse"]).or(v.string())),role:Mu,content:v.union([ue,v.array(ue)])}),Fw8=v.object({type:v.literal("boolean"),title:v.string().optional(),description:v.string().optional(),default:v.boolean().optional()}),Uw8=v.object({type:v.literal("string"),title:v.string().optional(),description:v.string().optional(),minLength:v.number().optional(),maxLength:v.number().optional(),format:v.enum(["email","uri","date","date-time"]).optional(),default:v.string().optional()}),ww8=v.object({type:v.enum(["number","integer"]),title:v.string().optional(),description:v.string().optional(),minimum:v.number().optional(),maximum:v.number().optional(),default:v.number().optional()}),Ow8=v.object({type:v.literal("string"),title:v.string().optional(),description:v.string().optional(),enum:v.array(v.string()),default:v.string().optional()}),Bw8=v.object({type:v.literal("string"),title:v.string().optional(),description:v.string().optional(),oneOf:v.array(v.object({const:v.string(),title:v.string()})),default:v.string().optional()}),Dw8=v.object({type:v.literal("string"),title:v.string().optional(),description:v.string().optional(),enum:v.array(v.string()),enumNames:v.array(v.string()).optional(),default:v.string().optional()}),Lw8=v.union([Ow8,Bw8]),Ew8=v.object({type:v.literal("array"),title:v.string().optional(),description:v.string().optional(),minItems:v.number().optional(),maxItems:v.number().optional(),items:v.object({type:v.literal("string"),enum:v.array(v.string())}),default:v.array(v.string()).optional()}),zw8=v.object({type:v.literal("array"),title:v.string().optional(),description:v.string().optional(),minItems:v.number().optional(),maxItems:v.number().optional(),items:v.object({anyOf:v.array(v.object({const:v.string(),title:v.string()}))}),default:v.array(v.string()).optional()}),jw8=v.union([Ew8,zw8]),Pw8=v.union([Dw8,Lw8,jw8]),Aw8=v.union([Pw8,Fw8,Uw8,ww8]),Tw8=Pu.extend({mode:v.literal("form").optional(),message:v.string(),requestedSchema:v.object({type:v.literal("object"),properties:v.record(v.string(),Aw8),required:v.array(v.string()).optional()})}),Rw8=Pu.extend({mode:v.literal("url"),message:v.string(),elicitationId:v.string(),url:v.string().url()}),Iw8=v.union([Tw8,Rw8]),LV0=cZ.extend({method:v.literal("elicitation/create"),params:Iw8}),qw8=rQ.extend({elicitationId:v.string()}),Mw8=aQ.extend({method:v.literal("notifications/elicitation/complete"),params:qw8}),AF=lZ.extend({action:v.enum(["accept","decline","cancel"]),content:v.preprocess(($)=>$===null?void 0:$,v.record(v.string(),v.union([v.string(),v.number(),v.boolean(),v.array(v.string())])).optional())}),kw8=v.object({type:v.literal("ref/resource"),uri:v.string()}),Sw8=v.object({type:v.literal("ref/prompt"),name:v.string()}),Vw8=sG.extend({ref:v.union([Sw8,kw8]),argument:v.object({name:v.string(),value:v.string()}),context:v.object({arguments:v.record(v.string(),v.string()).optional()}).optional()}),Z00=cZ.extend({method:v.literal("completion/complete"),params:Vw8});EV0=lZ.extend({completion:v.looseObject({values:v.array(v.string()).max(100),total:v.optional(v.number().int()),hasMore:v.optional(v.boolean())})}),Cw8=v.object({uri:v.string().startsWith("file://"),name:v.string().optional(),_meta:v.record(v.string(),v.unknown()).optional()}),_w8=cZ.extend({method:v.literal("roots/list"),params:sG.optional()}),zV0=lZ.extend({roots:v.array(Cw8)}),vw8=aQ.extend({method:v.literal("notifications/roots/list_changed"),params:rQ.optional()}),oj6=v.union([ne,me,Z00,BV0,p_,jF,EF,zF,n_,uU8,lU8,PF,t_,te,re,ae,ee]),rj6=v.union([de,pe,ie,vw8,qu]),aj6=v.union([rW,AB,Vu,AF,zV0,oe,se,aW]),sj6=v.union([ne,DV0,LV0,_w8,te,re,ae,ee]),ej6=v.union([de,pe,Gw8,mU8,JV0,OV0,wV0,qu,Mw8]),$P6=v.union([rW,$V0,EV0,UV0,KV0,XV0,GV0,YV0,u3,ku,oe,se,aW]);O1=class O1 extends Error{constructor($,Z,X){super(`MCP error ${$}: ${Z}`);this.code=$,this.data=X,this.name="McpError"}static fromError($,Z,X){if($===T1.UrlElicitationRequired&&X){let G=X;if(G.elicitations)return new iI1(G.elicitations,Z)}return new O1($,Z,X)}};iI1=class iI1 extends O1{constructor($,Z=`URL elicitation${$.length>1?"s":""} required`){super(T1.UrlElicitationRequired,Z,{elicitations:$})}get elicitations(){return this.data?.elicitations??[]}}});import{z as H$}from"zod";function c3($){return $!==null&&$!==void 0&&"command"in $}function o_($){if(!$||!$.startsWith("virtual://"))return null;return $.replace("virtual://","")}function r_($){return`virtual://${$}`}var bw8,nI1,fw8,xw8,yw8,j7,X00,G00;var pI1=B(()=>{h5();bw8=H$.object({authorizationEndpoint:H$.string().url(),tokenEndpoint:H$.string().url(),introspectionEndpoint:H$.string().url().optional(),clientId:H$.string(),clientSecret:H$.string().optional(),scopes:H$.array(H$.string()),grantType:H$.enum(["authorization_code","client_credentials"])}),nI1=H$.object({type:H$.literal("object"),properties:H$.record(H$.string(),H$.unknown()).optional(),required:H$.array(H$.string()).optional()}).catchall(H$.unknown()),fw8=$00.extend({inputSchema:nI1,outputSchema:nI1.optional()}),xw8=H$.object({headers:H$.record(H$.string(),H$.string()).optional()}),yw8=H$.object({command:H$.string().describe("Command to run (e.g., 'npx', 'node')"),args:H$.array(H$.string()).optional().describe("Command arguments"),cwd:H$.string().optional().describe("Working directory"),envVars:H$.record(H$.string(),H$.string()).optional().describe("Environment variables (encrypted in storage)")}),j7=H$.object({id:H$.string().describe("Unique identifier for the connection"),title:H$.string().describe("Human-readable name for the connection"),created_at:H$.string().describe("When the connection was created"),updated_at:H$.string().describe("When the connection was last updated"),created_by:H$.string().describe("User ID who created the connection"),updated_by:H$.string().optional().describe("User ID who last updated the connection"),organization_id:H$.string().describe("Organization ID this connection belongs to"),description:H$.string().nullable().describe("Description of the connection"),icon:H$.string().nullable().describe("Icon URL for the connection"),app_name:H$.string().nullable().describe("Associated app name"),app_id:H$.string().nullable().describe("Associated app ID"),slug:H$.string().nullable().optional().describe("URL-safe slug derived from app_name, connection_url, or title"),connection_type:H$.enum(["HTTP","SSE","Websocket","STDIO","VIRTUAL"]).describe("Type of connection"),connection_url:H$.string().nullable().describe("URL for HTTP/SSE/WebSocket connections. virtual://$id for VIRTUAL. Null for STDIO."),connection_token:H$.string().nullable().describe("Authentication token (for HTTP connections)"),connection_headers:H$.union([yw8,xw8]).nullable().describe("Connection parameters. HTTP: { headers }. STDIO: { command, args, cwd, envVars }"),oauth_config:bw8.nullable().describe("OAuth configuration"),configuration_state:H$.record(H$.string(),H$.unknown()).nullable().describe("Configuration state (decrypted)"),configuration_scopes:H$.array(H$.string()).nullable().optional().describe("Configuration scopes"),metadata:H$.record(H$.string(),H$.unknown()).nullable().describe("Additional metadata (includes repository info)"),tools:H$.array(fw8).nullable().describe("Discovered tools from MCP"),bindings:H$.array(H$.string()).nullable().describe("Detected bindings"),status:H$.enum(["active","inactive","error"]).describe("Current status")}),X00=j7.omit({created_at:!0,updated_at:!0,created_by:!0,updated_by:!0,organization_id:!0,tools:!0,bindings:!0,status:!0}).partial({id:!0,description:!0,icon:!0,app_name:!0,app_id:!0,connection_url:!0,connection_token:!0,connection_headers:!0,oauth_config:!0,configuration_state:!0,configuration_scopes:!0,metadata:!0}).extend({icon:H$.string().nullish()}),G00=j7.partial()});import{z as I0}from"zod";function PV0($){let Z=$?.homeTiles;if(Array.isArray(Z)&&Z.length>0)return Z;let X=$?.homeTile;return X?[X]:[]}function RV0($){return $==="cluster"?"agent-sandbox":$}function Z21($){let Z=dw8.parse($);return IV0.parse({...Z,sandboxProviderKind:Z.sandboxProviderKind?RV0(Z.sandboxProviderKind):void 0})}function wJ($){if(!$||typeof $!=="object"||Array.isArray($))return{};let Z=$,X={};for(let[G,Q]of Object.entries(Z)){if(!Q||typeof Q!=="object")continue;if(G!=="cluster"&&G!=="agent-sandbox"&&G!=="user-desktop")continue;let Y=RV0(G);try{if(G==="cluster"&&X[Y])continue;X[Y]=Z21(Q)}catch{}}return X}function qV0($){if(!$||typeof $!=="object"||Array.isArray($))return{};let Z={};for(let[X,G]of Object.entries($)){if(!G||typeof G!=="object"||Array.isArray(G))continue;let Q={};for(let[Y,J]of Object.entries(G)){let K=wJ(J);if(Object.keys(K).length>0)Q[Y]=K}if(Object.keys(Q).length>0)Z[X]=Q}return Z}var Cu,rI1,gw8,aI1,sI1,tI1,jV0,Q00,oI1,hw8,eI1,uw8,AV0,TV0,cw8,lw8,$21,IV0,dw8,Y00,mw8,MV0,iw8,kV0,P7,SV0,J00,K00;var X21=B(()=>{Cu=I0.object({connection_id:I0.string().describe("Connection ID"),selected_tools:I0.array(I0.string()).nullable().describe("Selected tool names. null = all tools included, array = only these tools included"),selected_resources:I0.array(I0.string()).nullable().describe("Selected resource URIs or patterns. Supports * and ** wildcards for pattern matching. null = all resources included, array = only these resources included"),selected_prompts:I0.array(I0.string()).nullable().describe("Selected prompt names. null = all prompts included, array = only these prompts included")}),rI1=Cu.extend({selected_tools:Cu.shape.selected_tools.optional(),selected_resources:Cu.shape.selected_resources.optional(),selected_prompts:Cu.shape.selected_prompts.optional()}),gw8=I0.object({connectionId:I0.string(),toolName:I0.string(),label:I0.string(),icon:I0.string().nullable().optional()}),aI1=I0.object({id:I0.string().describe("Stable id; used as React key and ?tab= value"),title:I0.string().describe("Tab label"),icon:I0.string().optional().describe("Optional lucide icon name"),view:I0.object({type:I0.literal("ext-app"),appId:I0.string(),args:I0.record(I0.string(),I0.unknown()).optional()})}),sI1=I0.object({defaultMainView:I0.object({type:I0.string(),id:I0.string().optional(),toolName:I0.string().optional()}).nullable().optional(),chatDefaultOpen:I0.boolean().nullable().optional(),cmsDefaultOpen:I0.boolean().nullable().optional(),tabs:I0.array(aI1).optional()}),tI1=I0.object({tileId:I0.string().optional(),connectionId:I0.string().optional().describe("Connection that owns the resource \u2014 the host opens a direct MCP client to this connection so the iframe can call tools by their bare names."),resourceUri:I0.string().describe("ui:// resource URI exposed by `connectionId`. Read on the home page and rendered via MCPAppRenderer."),toolName:I0.string().optional().describe("Tool name \u2014 identifies which tool's inputSchema to display when editing tile props."),toolInput:I0.record(I0.string(),I0.unknown()).optional().describe("User-configured input props passed to MCPAppRenderer when rendering the tile."),minHeight:I0.number().int().positive().optional(),maxHeight:I0.number().int().positive().optional()}),jV0=I0.object({banner:I0.string().nullable().optional(),bannerColor:I0.string().nullable().optional(),icon:I0.string().nullable().optional(),themeColor:I0.string().nullable().optional(),pinnedViews:I0.array(gw8).nullable().optional(),layout:sI1.nullable().optional(),homeTile:tI1.nullable().optional(),homeTiles:I0.array(tI1).nullable().optional(),homePrompts:I0.array(I0.string()).nullable().optional()});Q00=/^[A-Za-z_][A-Za-z0-9_]*$/,oI1=I0.string().min(1).regex(Q00,{message:"Env var key must start with a letter or underscore and contain only letters, digits, and underscores."}),hw8=I0.discriminatedUnion("kind",[I0.object({key:oI1,kind:I0.literal("literal"),value:I0.string()}),I0.object({key:oI1,kind:I0.literal("secret"),secretId:I0.string().min(1)})]),eI1=/^[a-zA-Z0-9.-]+(?::[0-9]+)?$/,uw8=I0.object({host:I0.string().min(1).regex(eI1).describe("Submodule host, e.g. 'github.com' (bare hostname, no scheme)."),secretId:I0.string().min(1).describe("Vault secret id holding the PAT used to fetch this host.")}),AV0=I0.object({selected:I0.string().nullable().optional().describe("User-selected package manager (npm | pnpm | yarn | bun | deno). Null/absent means autodetect on next SANDBOX_START."),port:I0.string().nullable().optional().describe("User-selected dev server port as a string (allows '' / null for unset). Null/absent means autodetect."),path:I0.string().nullable().optional().describe("Optional path (relative to repo root) to the directory containing package.json. Null/absent means repo root. Forwarded as `application.packageManager.path` to the daemon config."),env:I0.array(hw8).nullable().optional().describe("Env vars injected on every SANDBOX_START. Literal entries inline their value; secret entries store a secretId that Studio resolves via the credential vault before posting /_sandbox/config."),submoduleCredentials:I0.array(uw8).nullable().optional().describe("Git submodule credentials injected on every SANDBOX_START. Each entry maps a host to a vault secret (PAT) that Studio resolves before posting /_sandbox/config; the daemon uses it to authenticate `git submodule update` for submodules on that host.")}),TV0=I0.object({url:I0.string().describe("GitHub repository URL"),owner:I0.string().describe("Repository owner"),name:I0.string().describe("Repository name"),installationId:I0.number().optional().describe("GitHub App installation ID. Absent when the repo was linked without a GitHub connection (public-clone mode)."),connectionId:I0.string().optional().describe("ID of the mcp-github connection used for authentication. Absent for public repos cloned without credentials.")}),cw8=I0.enum(["agent-sandbox","user-desktop"]),lw8=I0.enum(["agent-sandbox","user-desktop","cluster"]);$21={sandboxHandle:I0.string().describe("Provider-specific handle"),previewUrl:I0.string().nullable().describe("URL where the sandbox's iframe-proxied UI is served, or null when the sandbox has no dev server (blank / tool sandboxes)."),sandboxApiUrl:I0.string().nullable().optional().describe("Daemon's public URL \u2014 what cluster\u2192daemon RPCs target. Equal to previewUrl for user-desktop; null/absent for the agent-sandbox provider (routes through hosted ingress)."),sandboxProviderKind:cw8.optional(),createdAt:I0.number().optional().describe("Epoch ms the entry was first written by SANDBOX_START. Used by the booting overlay to show a stable elapsed timer that survives browser reloads. Optional for backward compatibility with entries written before this field existed."),startedWith:I0.object({packageManager:I0.string().nullable().optional().describe("metadata.runtime.selected at the time of SANDBOX_START"),port:I0.string().nullable().optional().describe("metadata.runtime.port at the time of SANDBOX_START"),path:I0.string().nullable().optional().describe("metadata.runtime.path at the time of SANDBOX_START")}).optional().describe("Snapshot of metadata.runtime fields (selected/port/path) used at SANDBOX_START. The Preview tab compares the live metadata.runtime against this to decide if a restart is required to apply changes.")},IV0=I0.object($21),dw8=I0.object({...$21,sandboxProviderKind:lw8.optional()});Y00=I0.record(I0.string().describe("userId"),I0.record(I0.string().describe("branch"),I0.record(I0.string().describe("sandboxProviderKind"),IV0)));mw8=I0.object({id:I0.string().describe("Stable identifier for this knowledge file"),name:I0.string().describe("File name shown in the UI"),kind:I0.enum(["file","skill"]).optional().describe("'file' (a single document) or 'skill' (a Claude Code skill folder containing SKILL.md). Defaults to 'file'."),volume:I0.string().describe("Org filesystem (Library) volume the file lives in"),path:I0.string().describe("Path within the volume"),url:I0.string().describe("Same-origin URL to read the file (display/download)"),contentType:I0.string().nullable().optional().describe("MIME type, used to decide whether to inline the content"),size:I0.number().nullable().optional().describe("File size in bytes"),addedAt:I0.string().describe("ISO timestamp when the file was attached")}),MV0=I0.array(mw8).nullable().optional().describe("Files attached to the agent as reference knowledge. Surfaced in the system prompt: small text documents are inlined, others are listed as retrievable references."),iw8=I0.enum(["smart","code-review","open"]),kV0=iw8.nullable().optional().describe("Controls when this code agent's changes may be published directly vs. requiring PR review. 'smart' (default) uses AI to judge per change; 'code-review' requires review for any code; 'open' allows direct publish always."),P7=I0.object({id:I0.string().describe("Unique identifier"),title:I0.string().describe("Human-readable name"),description:I0.string().nullable().describe("Description"),icon:I0.string().nullable().describe("Icon URL"),created_at:I0.string().describe("Creation timestamp"),updated_at:I0.string().describe("Last update timestamp"),created_by:I0.string().describe("User ID who created this item"),updated_by:I0.string().optional().describe("User ID who last updated this item"),organization_id:I0.string().describe("Organization ID this item belongs to"),status:I0.enum(["active","inactive"]).describe("Current status"),pinned:I0.boolean().describe("Whether this space is pinned to the sidebar"),metadata:I0.object({instructions:I0.string().nullable().describe("Instructions also used as system prompt"),enabled_plugins:I0.array(I0.string()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:I0.array(I0.string()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:I0.string().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:jV0.nullable().optional().describe("UI customization settings"),githubRepo:TV0.nullable().optional().describe("Linked GitHub repository"),runtime:AV0.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:Y00.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:MV0,siteSlug:I0.string().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:kV0,productionUrl:I0.string().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking."),fieldDescriptionTooltips:I0.boolean().nullable().optional().describe("Blocks form: opt in to showing a field's schema description as a hover tooltip on its title, instead of the default inline text below the title.")}).loose().describe("Metadata"),connections:I0.array(Cu).describe("Connections with their selected tools, resources, and prompts")}),SV0=I0.object({title:I0.string().min(1).max(120).describe("Short label shown on the chip"),description:I0.string().max(280).optional().describe("One-line subtitle shown under the title"),text:I0.string().min(1).describe("The message sent to the agent when the prompt is clicked")}),J00=I0.object({title:I0.string().min(1).max(255).describe("Name for the virtual MCP"),description:I0.string().nullable().optional().describe("Optional description"),icon:I0.string().nullish().describe("Optional icon URL"),status:I0.enum(["active","inactive"]).optional().default("active").describe("Initial status"),pinned:I0.boolean().optional().default(!1).describe("Pin to sidebar"),metadata:I0.object({instructions:I0.string().nullable().optional().describe("MCP server instructions"),enabled_plugins:I0.array(I0.string()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:I0.array(I0.string()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:I0.string().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:jV0.nullable().optional().describe("UI customization settings"),githubRepo:TV0.nullable().optional().describe("Linked GitHub repository"),runtime:AV0.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:Y00.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:MV0,siteSlug:I0.string().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:kV0,productionUrl:I0.string().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking."),fieldDescriptionTooltips:I0.boolean().nullable().optional().describe("Blocks form: opt in to showing a field's schema description as a hover tooltip on its title, instead of the default inline text below the title.")}).loose().nullable().optional().describe("Additional metadata including MCP server instructions"),connections:I0.array(rI1).describe("Connections to include/exclude (can be empty for exclusion mode)"),prompts:I0.array(SV0).optional().describe("Optional kickstart prompts to seed on the agent. Each becomes a clickable conversation starter (icebreaker) on the agent. Author them from the agent's role and the tools it will have so they're coherent and immediately useful.")}),K00=I0.object({title:I0.string().min(1).max(255).optional().describe("New name"),description:I0.string().nullable().optional().describe("New description (null to clear)"),icon:I0.string().nullish().describe("New icon URL"),status:I0.enum(["active","inactive"]).optional().describe("New status"),pinned:I0.boolean().optional().describe("Pin/unpin from sidebar"),metadata:I0.object({instructions:I0.string().nullable().optional().describe("MCP server instructions"),enabled_plugins:I0.array(I0.string()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:I0.array(I0.string()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:I0.string().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:jV0.nullable().optional().describe("UI customization settings"),githubRepo:TV0.nullable().optional().describe("Linked GitHub repository"),runtime:AV0.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:Y00.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:MV0,siteSlug:I0.string().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:kV0,productionUrl:I0.string().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking."),fieldDescriptionTooltips:I0.boolean().nullable().optional().describe("Blocks form: opt in to showing a field's schema description as a hover tooltip on its title, instead of the default inline text below the title.")}).loose().nullable().optional().describe("Additional metadata including MCP server instructions"),connections:I0.array(rI1).optional().describe("New connections (replaces existing)"),prompts:I0.array(SV0).optional().describe("Replace the agent's kickstart prompts with this full set. Omit to leave them unchanged; pass an empty array to remove all. Each becomes a clickable conversation starter (icebreaker).")})});function TB($){return nw8.has($)}var A7,nw8,W00;var G21=B(()=>{A7=["deco","anthropic","openrouter","llmapi","google","openai-compatible"],nw8=new Set(A7);W00=[...A7,"claude-code","codex"]});function VV0($,Z){return{id:crypto.randomUUID(),type:_u.STEP,source:"decopilot",subject:$,data:{stepCount:Z},time:new Date().toISOString()}}function N00($,Z){return{id:crypto.randomUUID(),type:_u.FINISH,source:"decopilot",subject:$,data:{status:Z},time:new Date().toISOString()}}function l3($,Z,X){return{id:crypto.randomUUID(),type:_u.THREAD_STATUS,source:"decopilot",subject:$,data:{status:Z,...X?.messageId!==void 0&&{message_id:X.messageId},...X?.virtualMcpId!==void 0&&{virtual_mcp_id:X.virtualMcpId},...X?.createdBy!==void 0&&{created_by:X.createdBy},...X?.triggerId!==void 0&&{trigger_id:X.triggerId},...X?.title!==void 0&&{title:X.title},...X?.branch!==void 0&&{branch:X.branch},...X?.createdAt!==void 0&&{created_at:X.createdAt},...X?.updatedAt!==void 0&&{updated_at:X.updatedAt},...X?.metadata!==void 0&&{metadata:X.metadata}},time:new Date().toISOString()}}var Q21,pw8,_u,tw8;var Y21=B(()=>{Q21=["in_progress","requires_action","failed","completed"],pw8=[...Q21,"expired"],_u={STEP:"decopilot.step",FINISH:"decopilot.finish",THREAD_STATUS:"decopilot.thread.status"},tw8=Object.values(_u)});var H00=B(()=>{pI1();X21();G21();Y21()});function K21($){return{id:x4.REGISTRY($),title:"Deco Store",description:"Official deco MCP registry with curated integrations",connection_type:"HTTP",connection_url:"https://studio.decocms.com/org/deco/registry/mcp",icon:"https://assets.decocache.com/decocms/00ccf6c3-9e13-4517-83b0-75ab84554bb9/596364c63320075ca58483660156b6d9de9b526e.png",app_name:"deco-registry",app_id:null,connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!0,type:"registry"}}}function W21(){return{id:"community-registry",title:"MCP Registry",description:"Community MCP registry with thousands of handy MCPs",connection_type:"HTTP",connection_url:"https://sites-registry.deco.site/mcp",icon:"https://assets.decocache.com/decocms/cd7ca472-0f72-463a-b0de-6e44bdd0f9b4/mcp.png",app_name:"mcp-registry",app_id:null,connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!0,type:"registry"}}}function N21($,Z){return{id:x4.SELF(Z),title:"Deco CMS",description:"The MCP for the CMS API",connection_type:"HTTP",connection_url:`${$}/mcp/self`,icon:"https://assets.decocache.com/mcp/09e44283-f47d-4046-955f-816d227c626f/app.png",app_name:"@deco/management-mcp",connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!0,type:"self"}}}function H21($,Z){return{id:x4.DEV_ASSETS(Z),title:"Local Files",description:"Local file storage for development. Files are stored in /data/assets/.",connection_type:"HTTP",connection_url:`${$}/mcp/dev-assets`,icon:"https://api.iconify.design/lucide:folder.svg?color=%23888",app_name:"@deco/dev-assets-mcp",app_id:null,connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isFixed:!0,devOnly:!0,type:"dev-assets"}}}function $Q($){return{is(Z){if(!Z)return null;if(!Z.startsWith($))return null;return Z.slice($.length)||null},get(Z){return`${$}${Z}`}}}function F21($){return{id:$.id,organization_id:$.organizationId,title:$.title,description:$.description,icon:$.icon,status:"active",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),created_by:"system",updated_by:void 0,metadata:{instructions:$.instructions??null,...$.ui?{ui:$.ui}:{}},pinned:!1,connections:[]}}function _V0($){return F21({id:RB($),organizationId:$,title:"Super Agent",description:"Default agent that aggregates all organization connections",icon:ow8,ui:{layout:{defaultMainView:{type:"overview"},chatDefaultOpen:!0}}})}function D21($){return F21({id:rw8($),organizationId:$,title:"Brand context setup",description:"Guided onboarding agent that extracts brand context from a website URL.",icon:"https://assets.decocache.com/decocms/fd07a578-6b1c-40f1-bc05-88a3b981695d/f7fc4ffa81aec04e37ae670c3cd4936643a7b269.png",instructions:aw8})}function z21($,Z,X="https://reports.decocms.com/api/v2/mcp"){return{id:x4.COMMERCE_DISCOVERY($),title:"Store Report",description:"Your store's report and diagnostics",connection_type:"HTTP",connection_url:X,icon:"https://github.com/decocms.png",app_name:"commerce-discovery",app_id:null,connection_token:Z,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!1,type:"commerce-discovery"}}}function j21($,Z=x4.COMMERCE_DISCOVERY($)){return{title:"Report Agent",description:"Ask anything about your store's report",icon:"https://github.com/decocms.png",status:"active",pinned:!0,metadata:{type:"commerce-discovery",isDefault:!1,ui:{pinnedViews:[{connectionId:Z,toolName:"get_my_diagnostic",label:"Report",icon:"https://github.com/decocms.png"}],layout:{defaultMainView:{type:"ext-apps",id:Z,toolName:"get_my_diagnostic"},chatDefaultOpen:!0}}},connections:[{connection_id:Z,selected_tools:["get_my_diagnostic"],selected_resources:null,selected_prompts:null}]}}function P21($){if(!$)return!1;return Object.values(sW).some((Z)=>Z.is($)!==null)}function A21($){let Z=_V0($);return{...Z,id:Z.id,connection_type:"VIRTUAL",connection_url:`virtual://${Z.id}`,app_name:"decopilot",app_id:"decopilot",connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!0,type:"decopilot"},tools:[],bindings:[]}}var x4,J21="https://reports.decocms.com/api/v2/mcp",F00="get_my_diagnostic",U21,sQ,RB,w21,O21,CV0,ow8="https://assets.decocache.com/decocms/fd07a578-6b1c-40f1-bc05-88a3b981695d/f7fc4ffa81aec04e37ae670c3cd4936643a7b269.png",B21,U00,rw8,aw8,L21,BP6,DP6,E21,LP6,w00,sW,T7;var T21=B(()=>{x4={SELF:($)=>`${$}_self`,REGISTRY:($)=>`${$}_registry`,COMMUNITY_REGISTRY:($)=>`${$}_community-registry`,DEV_ASSETS:($)=>`${$}_dev-assets`,SITE_DIAGNOSTICS:($)=>`site-diagnostics_${$}`,COMMERCE_DISCOVERY:($)=>`${$}_commerce-discovery`};U21=$Q("decopilot_"),sQ=U21.is,RB=U21.get,w21=$Q("dev_"),O21=w21.get,CV0=w21.is;B21=$Q("brand-context-setup_"),U00=B21.is,rw8=B21.get,aw8=`
|
|
79
|
+
`),QE1=!0}throw new Ke.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.",{logger:$.logger,tryNextLink:!0})}return $.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),LR0($)()},async(Z)=>{$.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");let{ssoStartUrl:X,ssoAccountId:G,ssoRegion:Q,ssoRoleName:Y,ssoSession:J}=$;if(!X&&!G&&!Q&&!Y&&!J)throw new Ke.CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:$.logger});let{fromSSO:K}=await Promise.resolve().then(() => (kI0(),MI0));return K($)(Z)},async(Z)=>{$.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:X}=await Promise.resolve().then(() => (GE1(),XE1));return X($)(Z)},async(Z)=>{$.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:X}=await Promise.resolve().then(() => (V20(),S20));return X($)(Z)},async(Z)=>{$.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:X}=await Promise.resolve().then(() => (x20(),f20));return X($)(Z)},async()=>{return $.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await PF1($))()},async()=>{throw new Ke.CredentialsProviderError("Could not load credentials from any providers",{tryNextLink:!1,logger:$.logger})}],pH8),pH8=($)=>$?.expiration!==void 0&&$.expiration.getTime()-Date.now()<300000;var KE1=B(()=>{ER0();AF1();Ke=M(k6(),1),YE1=M(KX(),1)});var WE1=B(()=>{KE1()});var NE1=()=>{};var v_,tH8="AWS_S3_USE_ARN_REGION",oH8="s3_use_arn_region",HE1;var FE1=B(()=>{v_=M(jh(),1),HE1={environmentVariableSelector:($)=>v_.booleanSelector($,tH8,v_.SelectorType.ENV),configFileSelector:($)=>v_.booleanSelector($,oH8,v_.SelectorType.CONFIG),default:void 0}});var UE1=()=>{};var wE1=()=>{};var OE1=B(()=>{NE1();FE1();wE1();UE1()});class b_{bytes;constructor($){if(this.bytes=$,$.byteLength!==8)throw Error("Int64 buffers must be exactly 8 bytes")}static fromNumber($){if($>9223372036854776000||$<-9223372036854776000)throw Error(`${$} is too large (or, if negative, too small) to represent as an Int64`);let Z=new Uint8Array(8);for(let X=7,G=Math.abs(Math.round($));X>-1&&G>0;X--,G/=256)Z[X]=G;if($<0)BE1(Z);return new b_(Z)}valueOf(){let $=this.bytes.slice(0),Z=$[0]&128;if(Z)BE1($);return parseInt(DE1.toHex($),16)*(Z?-1:1)}toString(){return String(this.valueOf())}}function BE1($){for(let Z=0;Z<8;Z++)$[Z]^=255;for(let Z=7;Z>-1;Z--)if($[Z]++,$[Z]!==0)break}var DE1;var g20=B(()=>{DE1=M(og(),1)});class h20{toUtf8;fromUtf8;constructor($,Z){this.toUtf8=$,this.fromUtf8=Z}format($){let Z=[];for(let Q of Object.keys($)){let Y=this.fromUtf8(Q);Z.push(Uint8Array.from([Y.byteLength]),Y,this.formatHeaderValue($[Q]))}let X=new Uint8Array(Z.reduce((Q,Y)=>Q+Y.byteLength,0)),G=0;for(let Q of Z)X.set(Q,G),G+=Q.byteLength;return X}formatHeaderValue($){switch($.type){case"boolean":return Uint8Array.from([$.value?0:1]);case"byte":return Uint8Array.from([2,$.value]);case"short":let Z=new DataView(new ArrayBuffer(3));return Z.setUint8(0,3),Z.setInt16(1,$.value,!1),new Uint8Array(Z.buffer);case"integer":let X=new DataView(new ArrayBuffer(5));return X.setUint8(0,4),X.setInt32(1,$.value,!1),new Uint8Array(X.buffer);case"long":let G=new Uint8Array(9);return G[0]=5,G.set($.value.bytes,1),G;case"binary":let Q=new DataView(new ArrayBuffer(3+$.value.byteLength));Q.setUint8(0,6),Q.setUint16(1,$.value.byteLength,!1);let Y=new Uint8Array(Q.buffer);return Y.set($.value,3),Y;case"string":let J=this.fromUtf8($.value),K=new DataView(new ArrayBuffer(3+J.byteLength));K.setUint8(0,7),K.setUint16(1,J.byteLength,!1);let W=new Uint8Array(K.buffer);return W.set(J,3),W;case"timestamp":let N=new Uint8Array(9);return N[0]=8,N.set(b_.fromNumber($.value.valueOf()).bytes,1),N;case"uuid":if(!QF8.test($.value))throw Error(`Invalid UUID received: ${$.value}`);let H=new Uint8Array(17);return H[0]=9,H.set(YF.fromHex($.value.replace(/\-/g,"")),1),H}}parse($){let Z={},X=0;while(X<$.byteLength){let G=$.getUint8(X++),Q=this.toUtf8(new Uint8Array($.buffer,$.byteOffset+X,G));switch(X+=G,$.getUint8(X++)){case 0:Z[Q]={type:EE1,value:!0};break;case 1:Z[Q]={type:EE1,value:!1};break;case 2:Z[Q]={type:rH8,value:$.getInt8(X++)};break;case 3:Z[Q]={type:aH8,value:$.getInt16(X,!1)},X+=2;break;case 4:Z[Q]={type:sH8,value:$.getInt32(X,!1)},X+=4;break;case 5:Z[Q]={type:eH8,value:new b_(new Uint8Array($.buffer,$.byteOffset+X,8))},X+=8;break;case 6:let Y=$.getUint16(X,!1);X+=2,Z[Q]={type:$F8,value:new Uint8Array($.buffer,$.byteOffset+X,Y)},X+=Y;break;case 7:let J=$.getUint16(X,!1);X+=2,Z[Q]={type:ZF8,value:this.toUtf8(new Uint8Array($.buffer,$.byteOffset+X,J))},X+=J;break;case 8:Z[Q]={type:XF8,value:new Date(new b_(new Uint8Array($.buffer,$.byteOffset+X,8)).valueOf())},X+=8;break;case 9:let K=new Uint8Array($.buffer,$.byteOffset+X,16);X+=16,Z[Q]={type:GF8,value:`${YF.toHex(K.subarray(0,4))}-${YF.toHex(K.subarray(4,6))}-${YF.toHex(K.subarray(6,8))}-${YF.toHex(K.subarray(8,10))}-${YF.toHex(K.subarray(10))}`};break;default:throw Error("Unrecognized header type tag")}}return Z}}var YF,LE1,EE1="boolean",rH8="byte",aH8="short",sH8="integer",eH8="long",$F8="binary",ZF8="string",XF8="timestamp",GF8="uuid",QF8;var u20=B(()=>{g20();YF=M(og(),1);(function($){$[$.boolTrue=0]="boolTrue",$[$.boolFalse=1]="boolFalse",$[$.byte=2]="byte",$[$.short=3]="short",$[$.integer=4]="integer",$[$.long=5]="long",$[$.byteArray=6]="byteArray",$[$.string=7]="string",$[$.timestamp=8]="timestamp",$[$.uuid=9]="uuid"})(LE1||(LE1={}));QF8=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/});function PE1({byteLength:$,byteOffset:Z,buffer:X}){if($<YF8)throw Error("Provided message too short to accommodate event stream message overhead");let G=new DataView(X,Z,$),Q=G.getUint32(0,!1);if($!==Q)throw Error("Reported message length does not match received message length");let Y=G.getUint32(jE1,!1),J=G.getUint32(JF,!1),K=G.getUint32($-BB,!1),W=new zE1.Crc32().update(new Uint8Array(X,Z,JF));if(J!==W.digest())throw Error(`The prelude checksum specified in the message (${J}) does not match the calculated CRC32 checksum (${W.digest()})`);if(W.update(new Uint8Array(X,Z+JF,$-(JF+BB))),K!==W.digest())throw Error(`The message checksum (${W.digest()}) did not match the expected value of ${K}`);return{headers:new DataView(X,Z+JF+BB,Y),body:new Uint8Array(X,Z+JF+BB+Y,Q-Y-(JF+BB+BB))}}var zE1,jE1=4,JF,BB=4,YF8;var AE1=B(()=>{zE1=M(fO(),1),JF=jE1*2,YF8=JF+BB*2});class c20{headerMarshaller;messageBuffer;isEndOfStream;constructor($,Z){this.headerMarshaller=new h20($,Z),this.messageBuffer=[],this.isEndOfStream=!1}feed($){this.messageBuffer.push(this.decode($))}endOfStream(){this.isEndOfStream=!0}getMessage(){let $=this.messageBuffer.pop(),Z=this.isEndOfStream;return{getMessage(){return $},isEndOfStream(){return Z}}}getAvailableMessages(){let $=this.messageBuffer;this.messageBuffer=[];let Z=this.isEndOfStream;return{getMessages(){return $},isEndOfStream(){return Z}}}encode({headers:$,body:Z}){let X=this.headerMarshaller.format($),G=X.byteLength+Z.byteLength+16,Q=new Uint8Array(G),Y=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),J=new TE1.Crc32;return Y.setUint32(0,G,!1),Y.setUint32(4,X.byteLength,!1),Y.setUint32(8,J.update(Q.subarray(0,8)).digest(),!1),Q.set(X,12),Q.set(Z,X.byteLength+12),Y.setUint32(G-4,J.update(Q.subarray(8,G-4)).digest(),!1),Q}decode($){let{headers:Z,body:X}=PE1($);return{headers:this.headerMarshaller.parse(Z),body:X}}formatHeaders($){return this.headerMarshaller.format($)}}var TE1;var RE1=B(()=>{u20();AE1();TE1=M(fO(),1)});var IE1=()=>{};var l20;var qE1=B(()=>{l20=class l20{options;constructor($){this.options=$}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let $ of this.options.inputStream)yield this.options.decoder.decode($)}}});var d20;var ME1=B(()=>{d20=class d20{options;constructor($){this.options=$}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let $ of this.options.messageStream)yield this.options.encoder.encode($);if(this.options.includeEndFrame)yield new Uint8Array(0)}}});var m20;var kE1=B(()=>{m20=class m20{options;constructor($){this.options=$}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let $ of this.options.messageStream){let Z=await this.options.deserializer($);if(Z===void 0)continue;yield Z}}}});var i20;var SE1=B(()=>{i20=class i20{options;constructor($){this.options=$}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let $ of this.options.inputStream)yield this.options.serializer($)}}});var VE1=B(()=>{RE1();u20();g20();IE1();qE1();ME1();kE1();SE1()});function CE1($){let Z=0,X=0,G=null,Q=null,Y=(K)=>{if(typeof K!=="number")throw Error("Attempted to allocate an event message where size was not a number: "+K);Z=K,X=4,G=new Uint8Array(K),new DataView(G.buffer).setUint32(0,K,!1)},J=async function*(){let K=$[Symbol.asyncIterator]();while(!0){let{value:W,done:N}=await K.next();if(N){if(!Z)return;else if(Z===X)yield G;else throw Error("Truncated event message received.");return}let H=W.length,F=0;while(F<H){if(!G){let w=H-F;if(!Q)Q=new Uint8Array(4);let O=Math.min(4-X,w);if(Q.set(W.slice(F,F+O),X),X+=O,F+=O,X<4)break;Y(new DataView(Q.buffer).getUint32(0,!1)),Q=null}let U=Math.min(Z-X,H-F);if(G.set(W.slice(F,F+U),X),X+=U,F+=U,Z&&Z===X)yield G,G=null,Z=0,X=0}}};return{[Symbol.asyncIterator]:J}}function _E1($,Z){return async function(X){let{value:G}=X.headers[":message-type"];if(G==="error"){let Q=Error(X.headers[":error-message"].value||"UnknownError");throw Q.name=X.headers[":error-code"].value,Q}else if(G==="exception"){let Q=X.headers[":exception-type"].value,Y={[Q]:X},J=await $(Y);if(J.$unknown){let K=Error(Z(X.body));throw K.name=Q,K}throw J[Q]}else if(G==="event"){let Q={[X.headers[":event-type"].value]:X},Y=await $(Q);if(Y.$unknown)return;return Y}else throw Error(`Unrecognizable event type: ${X.headers[":event-type"].value}`)}}class n20{eventStreamCodec;utfEncoder;constructor({utf8Encoder:$,utf8Decoder:Z}){this.eventStreamCodec=new c20($,Z),this.utfEncoder=$}deserialize($,Z){let X=CE1($);return new m20({messageStream:new l20({inputStream:X,decoder:this.eventStreamCodec}),deserializer:_E1(Z,this.utfEncoder)})}serialize($,Z){return new d20({messageStream:new i20({inputStream:$,serializer:Z}),encoder:this.eventStreamCodec,includeEndFrame:!0})}}var vE1=B(()=>{VE1()});var bE1=()=>{};var fE1=B(()=>{vE1();bE1()});async function*xE1($){let Z=!1,X=!1,G=[];$.on("error",(Q)=>{if(!Z)Z=!0;if(Q)throw Q}),$.on("data",(Q)=>{G.push(Q)}),$.on("end",()=>{Z=!0});while(!X){let Q=await new Promise((Y)=>setTimeout(()=>Y(G.shift()),0));if(Q)yield Q;X=Z&&G.length===0}}import{Readable as JF8}from"stream";class p20{universalMarshaller;constructor({utf8Encoder:$,utf8Decoder:Z}){this.universalMarshaller=new n20({utf8Decoder:Z,utf8Encoder:$})}deserialize($,Z){let X=typeof $[Symbol.asyncIterator]==="function"?$:xE1($);return this.universalMarshaller.deserialize(X,Z)}serialize($,Z){return JF8.from(this.universalMarshaller.serialize($,Z))}}var t20=B(()=>{fE1()});var yE1=($)=>new p20($);var gE1=B(()=>{t20()});var hE1=B(()=>{t20();gE1()});import{Writable as KF8}from"stream";var uE1,o20;var cE1=B(()=>{uE1=M(fZ(),1);o20=class o20 extends KF8{hash;constructor($,Z){super(Z);this.hash=$}_write($,Z,X){try{this.hash.update(uE1.toUint8Array($))}catch(G){return X(G)}X()}}});var lE1=()=>{};var dE1=($,Z)=>{if(Z.readableFlowing!==null)throw Error("Unable to calculate hash for flowing readable stream");let X=new $,G=new o20(X);return Z.pipe(G),new Promise((Q,Y)=>{Z.on("error",(J)=>{G.end(),Y(J)}),G.on("error",Y),G.on("finish",()=>{X.digest().then(Q).catch(Y)})})};var mE1=B(()=>{cE1()});var iE1=B(()=>{lE1();mE1()});var We,nE1,pE1,tE1,oE1,Ne,He,Fe,rE1=($)=>{return{apiVersion:"2006-03-01",base64Decoder:$?.base64Decoder??Ne.fromBase64,base64Encoder:$?.base64Encoder??Ne.toBase64,disableHostPrefix:$?.disableHostPrefix??!1,endpointProvider:$?.endpointProvider??la,extensions:$?.extensions??[],getAwsChunkedEncodingStream:$?.getAwsChunkedEncodingStream??He.getAwsChunkedEncodingStream,httpAuthSchemeProvider:$?.httpAuthSchemeProvider??eK1,httpAuthSchemes:$?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:(Z)=>Z.getIdentityProvider("aws.auth#sigv4"),signer:new We.AwsSdkSigV4Signer},{schemeId:"aws.auth#sigv4a",identityProvider:(Z)=>Z.getIdentityProvider("aws.auth#sigv4a"),signer:new We.AwsSdkSigV4ASigner}],logger:$?.logger??new tE1.NoOpLogger,protocol:$?.protocol??nE1.S3RestXmlProtocol,protocolSettings:$?.protocolSettings??{defaultNamespace:"com.amazonaws.s3",errorTypeRegistries:YW1,xmlNamespace:"http://s3.amazonaws.com/doc/2006-03-01/",version:"2006-03-01",serviceTarget:"AmazonS3"},sdkStreamMixin:$?.sdkStreamMixin??He.sdkStreamMixin,serviceId:$?.serviceId??"S3",signerConstructor:$?.signerConstructor??pE1.SignatureV4MultiRegion,signingEscapePath:$?.signingEscapePath??!1,urlParser:$?.urlParser??oE1.parseUrl,useArnRegion:$?.useArnRegion??void 0,utf8Decoder:$?.utf8Decoder??Fe.fromUtf8,utf8Encoder:$?.utf8Encoder??Fe.toUtf8}};var aE1=B(()=>{QR0();GR0();X1();We=M(D7(),1),nE1=M(h1(),1),pE1=M(w_(),1),tE1=M(h0(),1),oE1=M(M3(),1),Ne=M(uX(),1),He=M(uC(),1),Fe=M(fZ(),1)});var sE1,we,eE1,Oe,KF,Ue,Be,rG,De,Le,$z1,Zz1,Xz1,Gz1=($)=>{Le.emitWarningIfUnsupportedVersion(process.version);let Z=Zz1.resolveDefaultsModeConfig($),X=()=>Z().then(Le.loadConfigsForDefaultMode),G=rE1($);sE1.emitWarningIfUnsupportedVersion(process.version);let Q={profile:$?.profile,logger:G.logger};return{...G,...$,runtime:"node",defaultsMode:Z,authSchemePreference:$?.authSchemePreference??rG.loadConfig(we.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,Q),bodyLengthChecker:$?.bodyLengthChecker??$z1.calculateBodyLength,credentialDefaultProvider:$?.credentialDefaultProvider??JE1,defaultUserAgentProvider:$?.defaultUserAgentProvider??Oe.createDefaultUserAgentProvider({serviceId:G.serviceId,clientVersion:fH1.version}),disableS3ExpressSessionAuth:$?.disableS3ExpressSessionAuth??rG.loadConfig(eE1.NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS,Q),eventStreamSerdeProvider:$?.eventStreamSerdeProvider??yE1,maxAttempts:$?.maxAttempts??rG.loadConfig(Be.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,$),md5:$?.md5??Ue.Hash.bind(null,"md5"),region:$?.region??rG.loadConfig(KF.NODE_REGION_CONFIG_OPTIONS,{...KF.NODE_REGION_CONFIG_FILE_OPTIONS,...Q}),requestChecksumCalculation:$?.requestChecksumCalculation??rG.loadConfig(m91,Q),requestHandler:De.NodeHttpHandler.create($?.requestHandler??X),responseChecksumValidation:$?.responseChecksumValidation??rG.loadConfig(n91,Q),retryMode:$?.retryMode??rG.loadConfig({...Be.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await X()).retryMode||Xz1.DEFAULT_RETRY_MODE},$),sha1:$?.sha1??Ue.Hash.bind(null,"sha1"),sha256:$?.sha256??Ue.Hash.bind(null,"sha256"),sigv4aSigningRegionSet:$?.sigv4aSigningRegionSet??rG.loadConfig(we.NODE_SIGV4A_CONFIG_OPTIONS,Q),streamCollector:$?.streamCollector??De.streamCollector,streamHasher:$?.streamHasher??dE1,useArnRegion:$?.useArnRegion??rG.loadConfig(HE1,Q),useDualstackEndpoint:$?.useDualstackEndpoint??rG.loadConfig(KF.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,Q),useFipsEndpoint:$?.useFipsEndpoint??rG.loadConfig(KF.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,Q),userAgentAppId:$?.userAgentAppId??rG.loadConfig(Oe.NODE_APP_ID_CONFIG_OPTIONS,Q)}};var Qz1=B(()=>{bH1();WE1();OE1();v4();hE1();iE1();aE1();sE1=M(p6(),1),we=M(D7(),1),eE1=M(h1(),1),Oe=M(j_(),1),KF=M(dX(),1),Ue=M(P_(),1),Be=M($J(),1),rG=M(eY(),1),De=M(gH(),1),Le=M(h0(),1),$z1=M(A_(),1),Zz1=M(T_(),1),Xz1=M(TW(),1)});var Yz1=($)=>{let{httpAuthSchemes:Z,httpAuthSchemeProvider:X,credentials:G}=$;return{setHttpAuthScheme(Q){let Y=Z.findIndex((J)=>J.schemeId===Q.schemeId);if(Y===-1)Z.push(Q);else Z.splice(Y,1,Q)},httpAuthSchemes(){return Z},setHttpAuthSchemeProvider(Q){X=Q},httpAuthSchemeProvider(){return X},setCredentials(Q){G=Q},credentials(){return G}}},Jz1=($)=>{return{httpAuthSchemes:$.httpAuthSchemes(),httpAuthSchemeProvider:$.httpAuthSchemeProvider(),credentials:$.credentials()}};var Ee,ze,je,Kz1=($,Z)=>{let X=Object.assign(Ee.getAwsRegionExtensionConfiguration($),je.getDefaultExtensionConfiguration($),ze.getHttpHandlerExtensionConfiguration($),Yz1($));return Z.forEach((G)=>G.configure(X)),Object.assign($,Ee.resolveAwsRegionExtensionConfiguration(X),je.resolveDefaultRuntimeConfig(X),ze.resolveHttpHandlerRuntimeConfig(X),Jz1(X))};var Wz1=B(()=>{Ee=M(sO(),1),ze=M(M6(),1),je=M(h0(),1)});var Pe,Nz1,Hz1,_3,Ae,Fz1,f_,Uz1,wz1,Oz1,Te,Bz1,HX;var DB=B(()=>{l91();v4();pJ1();QR0();Ks();G1();Qz1();Wz1();Pe=M(nC(),1),Nz1=M(pC(),1),Hz1=M(tC(),1),_3=M(h1(),1),Ae=M(nO(),1),Fz1=M(dX(),1),f_=M(g9(),1),Uz1=M(w7(),1),wz1=M(N_(),1),Oz1=M(r0(),1),Te=M($J(),1),Bz1=M(h0(),1);HX=class HX extends Bz1.Client{config;constructor(...[$]){let Z=Gz1($||{});super(Z);this.initConfig=Z;let X=ZW1(Z),G=Ae.resolveUserAgentConfig(X),Q=zG1(G),Y=Te.resolveRetryConfig(Q),J=Fz1.resolveRegionConfig(Y),K=Pe.resolveHostHeaderConfig(J),W=Oz1.resolveEndpointConfig(K),N=nJ1(W),H=$W1(N),F=_3.resolveS3Config(H,{session:[()=>this,_h]}),U=Kz1(F,$?.extensions||[]);this.config=U,this.middlewareStack.use(Uz1.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(Ae.getUserAgentPlugin(this.config)),this.middlewareStack.use(Te.getRetryPlugin(this.config)),this.middlewareStack.use(wz1.getContentLengthPlugin(this.config)),this.middlewareStack.use(Pe.getHostHeaderPlugin(this.config)),this.middlewareStack.use(Nz1.getLoggerPlugin(this.config)),this.middlewareStack.use(Hz1.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(f_.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:rK1,identityProviderConfigProvider:async(w)=>new f_.DefaultIdentityProviderConfig({"aws.auth#sigv4":w.credentials,"aws.auth#sigv4a":w.credentials})})),this.middlewareStack.use(f_.getHttpSigningPlugin(this.config)),this.middlewareStack.use(_3.getValidateBucketNamePlugin(this.config)),this.middlewareStack.use(c91(this.config)),this.middlewareStack.use(_3.getRegionRedirectMiddlewarePlugin(this.config)),this.middlewareStack.use(_3.getS3ExpressPlugin(this.config)),this.middlewareStack.use(_3.getS3ExpressHttpSigningPlugin(this.config))}destroy(){super.destroy()}}});var Dz1,Lz1,Ez1,eh;var r20=B(()=>{G1();X1();Dz1=M(h1(),1),Lz1=M(r0(),1),Ez1=M(h0(),1);eh=class eh extends Ez1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[Lz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Dz1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","AbortMultipartUpload",{}).n("S3Client","AbortMultipartUploadCommand").sc(_W1).build(){}});function WF8($){return(Z)=>async(X)=>{let G={...X.input},Q=[{target:"SSECustomerKey",hash:"SSECustomerKeyMD5"},{target:"CopySourceSSECustomerKey",hash:"CopySourceSSECustomerKeyMD5"}];for(let Y of Q){let J=G[Y.target];if(J){let K;if(typeof J==="string")if(HF8(J,$))K=$.base64Decoder(J);else K=$.utf8Decoder(J),G[Y.target]=$.base64Encoder(K);else K=ArrayBuffer.isView(J)?new Uint8Array(J.buffer,J.byteOffset,J.byteLength):new Uint8Array(J),G[Y.target]=$.base64Encoder(K);let W=new $.md5;W.update(K),G[Y.hash]=$.base64Encoder(await W.digest())}}return Z({...X,input:G})}}function HF8($,Z){if(!/^(?:[A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test($))return!1;try{return Z.base64Decoder($).length===32}catch{return!1}}var NF8,g5=($)=>({applyToStack:(Z)=>{Z.add(WF8($),NF8)}});var pQ=B(()=>{NF8={name:"ssecMiddleware",step:"initialize",tags:["SSE"],override:!0}});var zz1,jz1,Pz1,$u;var a20=B(()=>{pQ();G1();X1();zz1=M(h1(),1),jz1=M(r0(),1),Pz1=M(h0(),1);$u=class $u extends Pz1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[jz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),zz1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","CompleteMultipartUpload",{}).n("S3Client","CompleteMultipartUploadCommand").sc(vW1).build(){}});var Az1,Tz1,Rz1,s20;var e20=B(()=>{pQ();G1();X1();Az1=M(h1(),1),Tz1=M(r0(),1),Rz1=M(h0(),1);s20=class s20 extends Rz1.Command.classBuilder().ep({...Q0,DisableS3ExpressSessionAuth:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"},CopySource:{type:"contextParams",name:"CopySource"}}).m(function($,Z,X,G){return[Tz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Az1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","CopyObject",{}).n("S3Client","CopyObjectCommand").sc(bW1).build(){}});function FF8($){return(Z)=>async(X)=>{let{CreateBucketConfiguration:G}=X.input,Q=await $.region();if(!G?.LocationConstraint&&!G?.Location){if(Q!=="us-east-1")X.input.CreateBucketConfiguration=X.input.CreateBucketConfiguration??{},X.input.CreateBucketConfiguration.LocationConstraint=Q}return Z(X)}}var UF8,Iz1=($)=>({applyToStack:(Z)=>{Z.add(FF8($),UF8)}});var qz1=B(()=>{UF8={step:"initialize",tags:["LOCATION_CONSTRAINT","CREATE_BUCKET_CONFIGURATION"],name:"locationConstraintMiddleware",override:!0}});var Mz1,kz1,Sz1,$q0;var Zq0=B(()=>{qz1();G1();X1();Mz1=M(h1(),1),kz1=M(r0(),1),Sz1=M(h0(),1);$q0=class $q0 extends Sz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},DisableAccessPoints:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[kz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Mz1.getThrow200ExceptionsPlugin(X),Iz1(X)]}).s("AmazonS3","CreateBucket",{}).n("S3Client","CreateBucketCommand").sc(fW1).build(){}});var Vz1,Cz1,Xq0;var Gq0=B(()=>{v4();G1();X1();Vz1=M(r0(),1),Cz1=M(h0(),1);Xq0=class Xq0 extends Cz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Vz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","CreateBucketMetadataConfiguration",{}).n("S3Client","CreateBucketMetadataConfigurationCommand").sc(xW1).build(){}});var _z1,vz1,Qq0;var Yq0=B(()=>{v4();G1();X1();_z1=M(r0(),1),vz1=M(h0(),1);Qq0=class Qq0 extends vz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[_z1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","CreateBucketMetadataTableConfiguration",{}).n("S3Client","CreateBucketMetadataTableConfigurationCommand").sc(yW1).build(){}});var bz1,fz1,xz1,Zu;var Jq0=B(()=>{pQ();G1();X1();bz1=M(h1(),1),fz1=M(r0(),1),xz1=M(h0(),1);Zu=class Zu extends xz1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[fz1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),bz1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","CreateMultipartUpload",{}).n("S3Client","CreateMultipartUploadCommand").sc(gW1).build(){}});var yz1,gz1,Kq0;var Wq0=B(()=>{G1();X1();yz1=M(r0(),1),gz1=M(h0(),1);Kq0=class Kq0 extends gz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[yz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketAnalyticsConfiguration",{}).n("S3Client","DeleteBucketAnalyticsConfigurationCommand").sc(cW1).build(){}});var hz1,uz1,Nq0;var Hq0=B(()=>{G1();X1();hz1=M(r0(),1),uz1=M(h0(),1);Nq0=class Nq0 extends uz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[hz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucket",{}).n("S3Client","DeleteBucketCommand").sc(uW1).build(){}});var cz1,lz1,Fq0;var Uq0=B(()=>{G1();X1();cz1=M(r0(),1),lz1=M(h0(),1);Fq0=class Fq0 extends lz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[cz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketCors",{}).n("S3Client","DeleteBucketCorsCommand").sc(lW1).build(){}});var dz1,mz1,wq0;var Oq0=B(()=>{G1();X1();dz1=M(r0(),1),mz1=M(h0(),1);wq0=class wq0 extends mz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[dz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketEncryption",{}).n("S3Client","DeleteBucketEncryptionCommand").sc(dW1).build(){}});var iz1,nz1,Bq0;var Dq0=B(()=>{G1();X1();iz1=M(r0(),1),nz1=M(h0(),1);Bq0=class Bq0 extends nz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[iz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketIntelligentTieringConfiguration",{}).n("S3Client","DeleteBucketIntelligentTieringConfigurationCommand").sc(mW1).build(){}});var pz1,tz1,Lq0;var Eq0=B(()=>{G1();X1();pz1=M(r0(),1),tz1=M(h0(),1);Lq0=class Lq0 extends tz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[pz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketInventoryConfiguration",{}).n("S3Client","DeleteBucketInventoryConfigurationCommand").sc(iW1).build(){}});var oz1,rz1,zq0;var jq0=B(()=>{G1();X1();oz1=M(r0(),1),rz1=M(h0(),1);zq0=class zq0 extends rz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[oz1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketLifecycle",{}).n("S3Client","DeleteBucketLifecycleCommand").sc(nW1).build(){}});var az1,sz1,Pq0;var Aq0=B(()=>{G1();X1();az1=M(r0(),1),sz1=M(h0(),1);Pq0=class Pq0 extends sz1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[az1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetadataConfiguration",{}).n("S3Client","DeleteBucketMetadataConfigurationCommand").sc(pW1).build(){}});var ez1,$j1,Tq0;var Rq0=B(()=>{G1();X1();ez1=M(r0(),1),$j1=M(h0(),1);Tq0=class Tq0 extends $j1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[ez1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetadataTableConfiguration",{}).n("S3Client","DeleteBucketMetadataTableConfigurationCommand").sc(tW1).build(){}});var Zj1,Xj1,Iq0;var qq0=B(()=>{G1();X1();Zj1=M(r0(),1),Xj1=M(h0(),1);Iq0=class Iq0 extends Xj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Zj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetricsConfiguration",{}).n("S3Client","DeleteBucketMetricsConfigurationCommand").sc(oW1).build(){}});var Gj1,Qj1,Mq0;var kq0=B(()=>{G1();X1();Gj1=M(r0(),1),Qj1=M(h0(),1);Mq0=class Mq0 extends Qj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Gj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketOwnershipControls",{}).n("S3Client","DeleteBucketOwnershipControlsCommand").sc(rW1).build(){}});var Yj1,Jj1,Sq0;var Vq0=B(()=>{G1();X1();Yj1=M(r0(),1),Jj1=M(h0(),1);Sq0=class Sq0 extends Jj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Yj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketPolicy",{}).n("S3Client","DeleteBucketPolicyCommand").sc(aW1).build(){}});var Kj1,Wj1,Cq0;var _q0=B(()=>{G1();X1();Kj1=M(r0(),1),Wj1=M(h0(),1);Cq0=class Cq0 extends Wj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Kj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketReplication",{}).n("S3Client","DeleteBucketReplicationCommand").sc(sW1).build(){}});var Nj1,Hj1,vq0;var bq0=B(()=>{G1();X1();Nj1=M(r0(),1),Hj1=M(h0(),1);vq0=class vq0 extends Hj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Nj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketTagging",{}).n("S3Client","DeleteBucketTaggingCommand").sc(eW1).build(){}});var Fj1,Uj1,fq0;var xq0=B(()=>{G1();X1();Fj1=M(r0(),1),Uj1=M(h0(),1);fq0=class fq0 extends Uj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Fj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketWebsite",{}).n("S3Client","DeleteBucketWebsiteCommand").sc($N1).build(){}});var wj1,Oj1,Bj1,Xu;var yq0=B(()=>{G1();X1();wj1=M(h1(),1),Oj1=M(r0(),1),Bj1=M(h0(),1);Xu=class Xu extends Bj1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[Oj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),wj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","DeleteObject",{}).n("S3Client","DeleteObjectCommand").sc(ZN1).build(){}});var Dj1,Lj1,Ej1,gq0;var hq0=B(()=>{v4();G1();X1();Dj1=M(h1(),1),Lj1=M(r0(),1),Ej1=M(h0(),1);gq0=class gq0 extends Ej1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Lj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),Dj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","DeleteObjects",{}).n("S3Client","DeleteObjectsCommand").sc(XN1).build(){}});var zj1,jj1,Pj1,uq0;var cq0=B(()=>{G1();X1();zj1=M(h1(),1),jj1=M(r0(),1),Pj1=M(h0(),1);uq0=class uq0 extends Pj1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[jj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),zj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","DeleteObjectTagging",{}).n("S3Client","DeleteObjectTaggingCommand").sc(GN1).build(){}});var Aj1,Tj1,lq0;var dq0=B(()=>{G1();X1();Aj1=M(r0(),1),Tj1=M(h0(),1);lq0=class lq0 extends Tj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Aj1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","DeletePublicAccessBlock",{}).n("S3Client","DeletePublicAccessBlockCommand").sc(QN1).build(){}});var Rj1,Ij1,qj1,mq0;var iq0=B(()=>{G1();X1();Rj1=M(h1(),1),Ij1=M(r0(),1),qj1=M(h0(),1);mq0=class mq0 extends qj1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Ij1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Rj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketAbac",{}).n("S3Client","GetBucketAbacCommand").sc(YN1).build(){}});var Mj1,kj1,Sj1,nq0;var pq0=B(()=>{G1();X1();Mj1=M(h1(),1),kj1=M(r0(),1),Sj1=M(h0(),1);nq0=class nq0 extends Sj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[kj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Mj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketAccelerateConfiguration",{}).n("S3Client","GetBucketAccelerateConfigurationCommand").sc(JN1).build(){}});var Vj1,Cj1,_j1,tq0;var oq0=B(()=>{G1();X1();Vj1=M(h1(),1),Cj1=M(r0(),1),_j1=M(h0(),1);tq0=class tq0 extends _j1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[Cj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Vj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketAcl",{}).n("S3Client","GetBucketAclCommand").sc(KN1).build(){}});var vj1,bj1,fj1,rq0;var aq0=B(()=>{G1();X1();vj1=M(h1(),1),bj1=M(r0(),1),fj1=M(h0(),1);rq0=class rq0 extends fj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[bj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),vj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketAnalyticsConfiguration",{}).n("S3Client","GetBucketAnalyticsConfigurationCommand").sc(WN1).build(){}});var xj1,yj1,gj1,sq0;var eq0=B(()=>{G1();X1();xj1=M(h1(),1),yj1=M(r0(),1),gj1=M(h0(),1);sq0=class sq0 extends gj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[yj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),xj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketCors",{}).n("S3Client","GetBucketCorsCommand").sc(NN1).build(){}});var hj1,uj1,cj1,$M0;var ZM0=B(()=>{G1();X1();hj1=M(h1(),1),uj1=M(r0(),1),cj1=M(h0(),1);$M0=class $M0 extends cj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[uj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),hj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketEncryption",{}).n("S3Client","GetBucketEncryptionCommand").sc(HN1).build(){}});var lj1,dj1,mj1,XM0;var GM0=B(()=>{G1();X1();lj1=M(h1(),1),dj1=M(r0(),1),mj1=M(h0(),1);XM0=class XM0 extends mj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[dj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),lj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketIntelligentTieringConfiguration",{}).n("S3Client","GetBucketIntelligentTieringConfigurationCommand").sc(FN1).build(){}});var ij1,nj1,pj1,QM0;var YM0=B(()=>{G1();X1();ij1=M(h1(),1),nj1=M(r0(),1),pj1=M(h0(),1);QM0=class QM0 extends pj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[nj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),ij1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketInventoryConfiguration",{}).n("S3Client","GetBucketInventoryConfigurationCommand").sc(UN1).build(){}});var tj1,oj1,rj1,JM0;var KM0=B(()=>{G1();X1();tj1=M(h1(),1),oj1=M(r0(),1),rj1=M(h0(),1);JM0=class JM0 extends rj1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[oj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),tj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketLifecycleConfiguration",{}).n("S3Client","GetBucketLifecycleConfigurationCommand").sc(wN1).build(){}});var aj1,sj1,ej1,WM0;var NM0=B(()=>{G1();X1();aj1=M(h1(),1),sj1=M(r0(),1),ej1=M(h0(),1);WM0=class WM0 extends ej1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[sj1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),aj1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketLocation",{}).n("S3Client","GetBucketLocationCommand").sc(ON1).build(){}});var $P1,ZP1,XP1,HM0;var FM0=B(()=>{G1();X1();$P1=M(h1(),1),ZP1=M(r0(),1),XP1=M(h0(),1);HM0=class HM0 extends XP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[ZP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),$P1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketLogging",{}).n("S3Client","GetBucketLoggingCommand").sc(BN1).build(){}});var GP1,QP1,YP1,UM0;var wM0=B(()=>{G1();X1();GP1=M(h1(),1),QP1=M(r0(),1),YP1=M(h0(),1);UM0=class UM0 extends YP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[QP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),GP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketMetadataConfiguration",{}).n("S3Client","GetBucketMetadataConfigurationCommand").sc(DN1).build(){}});var JP1,KP1,WP1,OM0;var BM0=B(()=>{G1();X1();JP1=M(h1(),1),KP1=M(r0(),1),WP1=M(h0(),1);OM0=class OM0 extends WP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[KP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),JP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketMetadataTableConfiguration",{}).n("S3Client","GetBucketMetadataTableConfigurationCommand").sc(LN1).build(){}});var NP1,HP1,FP1,DM0;var LM0=B(()=>{G1();X1();NP1=M(h1(),1),HP1=M(r0(),1),FP1=M(h0(),1);DM0=class DM0 extends FP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[HP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),NP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketMetricsConfiguration",{}).n("S3Client","GetBucketMetricsConfigurationCommand").sc(EN1).build(){}});var UP1,wP1,OP1,EM0;var zM0=B(()=>{G1();X1();UP1=M(h1(),1),wP1=M(r0(),1),OP1=M(h0(),1);EM0=class EM0 extends OP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[wP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),UP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketNotificationConfiguration",{}).n("S3Client","GetBucketNotificationConfigurationCommand").sc(zN1).build(){}});var BP1,DP1,LP1,jM0;var PM0=B(()=>{G1();X1();BP1=M(h1(),1),DP1=M(r0(),1),LP1=M(h0(),1);jM0=class jM0 extends LP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[DP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),BP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketOwnershipControls",{}).n("S3Client","GetBucketOwnershipControlsCommand").sc(jN1).build(){}});var EP1,zP1,AM0;var TM0=B(()=>{G1();X1();EP1=M(r0(),1),zP1=M(h0(),1);AM0=class AM0 extends zP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[EP1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","GetBucketPolicy",{}).n("S3Client","GetBucketPolicyCommand").sc(PN1).build(){}});var jP1,PP1,AP1,RM0;var IM0=B(()=>{G1();X1();jP1=M(h1(),1),PP1=M(r0(),1),AP1=M(h0(),1);RM0=class RM0 extends AP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[PP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),jP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketPolicyStatus",{}).n("S3Client","GetBucketPolicyStatusCommand").sc(AN1).build(){}});var TP1,RP1,IP1,qM0;var MM0=B(()=>{G1();X1();TP1=M(h1(),1),RP1=M(r0(),1),IP1=M(h0(),1);qM0=class qM0 extends IP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[RP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),TP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketReplication",{}).n("S3Client","GetBucketReplicationCommand").sc(TN1).build(){}});var qP1,MP1,kP1,kM0;var SM0=B(()=>{G1();X1();qP1=M(h1(),1),MP1=M(r0(),1),kP1=M(h0(),1);kM0=class kM0 extends kP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[MP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),qP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketRequestPayment",{}).n("S3Client","GetBucketRequestPaymentCommand").sc(RN1).build(){}});var SP1,VP1,CP1,VM0;var CM0=B(()=>{G1();X1();SP1=M(h1(),1),VP1=M(r0(),1),CP1=M(h0(),1);VM0=class VM0 extends CP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[VP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),SP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketTagging",{}).n("S3Client","GetBucketTaggingCommand").sc(IN1).build(){}});var _P1,vP1,bP1,_M0;var vM0=B(()=>{G1();X1();_P1=M(h1(),1),vP1=M(r0(),1),bP1=M(h0(),1);_M0=class _M0 extends bP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[vP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),_P1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketVersioning",{}).n("S3Client","GetBucketVersioningCommand").sc(qN1).build(){}});var fP1,xP1,yP1,bM0;var fM0=B(()=>{G1();X1();fP1=M(h1(),1),xP1=M(r0(),1),yP1=M(h0(),1);bM0=class bM0 extends yP1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[xP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),fP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetBucketWebsite",{}).n("S3Client","GetBucketWebsiteCommand").sc(MN1).build(){}});var gP1,hP1,uP1,xM0;var yM0=B(()=>{G1();X1();gP1=M(h1(),1),hP1=M(r0(),1),uP1=M(h0(),1);xM0=class xM0 extends uP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[hP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),gP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectAcl",{}).n("S3Client","GetObjectAclCommand").sc(SN1).build(){}});var cP1,lP1,dP1,gM0;var hM0=B(()=>{pQ();G1();X1();cP1=M(h1(),1),lP1=M(r0(),1),dP1=M(h0(),1);gM0=class gM0 extends dP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[lP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),cP1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","GetObjectAttributes",{}).n("S3Client","GetObjectAttributesCommand").sc(VN1).build(){}});var mP1,iP1,nP1,WF;var uM0=B(()=>{v4();pQ();G1();X1();mP1=M(h1(),1),iP1=M(r0(),1),nP1=M(h0(),1);WF=class WF extends nP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[iP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestChecksumRequired:!1,requestValidationModeMember:"ChecksumMode",responseAlgorithms:["CRC64NVME","CRC32","CRC32C","SHA256","SHA1","SHA512","MD5","XXHASH64","XXHASH3","XXHASH128"]}),g5(X),mP1.getS3ExpiresMiddlewarePlugin(X)]}).s("AmazonS3","GetObject",{}).n("S3Client","GetObjectCommand").sc(kN1).build(){}});var pP1,tP1,oP1,cM0;var lM0=B(()=>{G1();X1();pP1=M(h1(),1),tP1=M(r0(),1),oP1=M(h0(),1);cM0=class cM0 extends oP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[tP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),pP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectLegalHold",{}).n("S3Client","GetObjectLegalHoldCommand").sc(CN1).build(){}});var rP1,aP1,sP1,dM0;var mM0=B(()=>{G1();X1();rP1=M(h1(),1),aP1=M(r0(),1),sP1=M(h0(),1);dM0=class dM0 extends sP1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[aP1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),rP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectLockConfiguration",{}).n("S3Client","GetObjectLockConfigurationCommand").sc(_N1).build(){}});var eP1,$A1,ZA1,iM0;var nM0=B(()=>{G1();X1();eP1=M(h1(),1),$A1=M(r0(),1),ZA1=M(h0(),1);iM0=class iM0 extends ZA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[$A1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),eP1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectRetention",{}).n("S3Client","GetObjectRetentionCommand").sc(vN1).build(){}});var XA1,GA1,QA1,pM0;var tM0=B(()=>{G1();X1();XA1=M(h1(),1),GA1=M(r0(),1),QA1=M(h0(),1);pM0=class pM0 extends QA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[GA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),XA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetObjectTagging",{}).n("S3Client","GetObjectTaggingCommand").sc(bN1).build(){}});var YA1,JA1,oM0;var rM0=B(()=>{G1();X1();YA1=M(r0(),1),JA1=M(h0(),1);oM0=class oM0 extends JA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[YA1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","GetObjectTorrent",{}).n("S3Client","GetObjectTorrentCommand").sc(fN1).build(){}});var KA1,WA1,NA1,aM0;var sM0=B(()=>{G1();X1();KA1=M(h1(),1),WA1=M(r0(),1),NA1=M(h0(),1);aM0=class aM0 extends NA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[WA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),KA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","GetPublicAccessBlock",{}).n("S3Client","GetPublicAccessBlockCommand").sc(xN1).build(){}});var HA1,FA1,UA1,LB;var Gu=B(()=>{G1();X1();HA1=M(h1(),1),FA1=M(r0(),1),UA1=M(h0(),1);LB=class LB extends UA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[FA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),HA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","HeadBucket",{}).n("S3Client","HeadBucketCommand").sc(yN1).build(){}});var Re,wA1,OA1,v3;var Qu=B(()=>{pQ();G1();X1();Re=M(h1(),1),wA1=M(r0(),1),OA1=M(h0(),1);v3=class v3 extends OA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[wA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),Re.getThrow200ExceptionsPlugin(X),g5(X),Re.getS3ExpiresMiddlewarePlugin(X)]}).s("AmazonS3","HeadObject",{}).n("S3Client","HeadObjectCommand").sc(gN1).build(){}});var BA1,DA1,LA1,eM0;var $k0=B(()=>{G1();X1();BA1=M(h1(),1),DA1=M(r0(),1),LA1=M(h0(),1);eM0=class eM0 extends LA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[DA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),BA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBucketAnalyticsConfigurations",{}).n("S3Client","ListBucketAnalyticsConfigurationsCommand").sc(hN1).build(){}});var EA1,zA1,jA1,Zk0;var Xk0=B(()=>{G1();X1();EA1=M(h1(),1),zA1=M(r0(),1),jA1=M(h0(),1);Zk0=class Zk0 extends jA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[zA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),EA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBucketIntelligentTieringConfigurations",{}).n("S3Client","ListBucketIntelligentTieringConfigurationsCommand").sc(uN1).build(){}});var PA1,AA1,TA1,Gk0;var Qk0=B(()=>{G1();X1();PA1=M(h1(),1),AA1=M(r0(),1),TA1=M(h0(),1);Gk0=class Gk0 extends TA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[AA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),PA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBucketInventoryConfigurations",{}).n("S3Client","ListBucketInventoryConfigurationsCommand").sc(cN1).build(){}});var RA1,IA1,qA1,Yk0;var Jk0=B(()=>{G1();X1();RA1=M(h1(),1),IA1=M(r0(),1),qA1=M(h0(),1);Yk0=class Yk0 extends qA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[IA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),RA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBucketMetricsConfigurations",{}).n("S3Client","ListBucketMetricsConfigurationsCommand").sc(lN1).build(){}});var MA1,kA1,SA1,Yu;var Ie=B(()=>{G1();X1();MA1=M(h1(),1),kA1=M(r0(),1),SA1=M(h0(),1);Yu=class Yu extends SA1.Command.classBuilder().ep(Q0).m(function($,Z,X,G){return[kA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),MA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListBuckets",{}).n("S3Client","ListBucketsCommand").sc(dN1).build(){}});var VA1,CA1,_A1,Ju;var qe=B(()=>{G1();X1();VA1=M(h1(),1),CA1=M(r0(),1),_A1=M(h0(),1);Ju=class Ju extends _A1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0}}).m(function($,Z,X,G){return[CA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),VA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListDirectoryBuckets",{}).n("S3Client","ListDirectoryBucketsCommand").sc(mN1).build(){}});var vA1,bA1,fA1,Kk0;var Wk0=B(()=>{G1();X1();vA1=M(h1(),1),bA1=M(r0(),1),fA1=M(h0(),1);Kk0=class Kk0 extends fA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function($,Z,X,G){return[bA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),vA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListMultipartUploads",{}).n("S3Client","ListMultipartUploadsCommand").sc(iN1).build(){}});var xA1,yA1,gA1,Nk0;var Hk0=B(()=>{G1();X1();xA1=M(h1(),1),yA1=M(r0(),1),gA1=M(h0(),1);Nk0=class Nk0 extends gA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function($,Z,X,G){return[yA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),xA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListObjects",{}).n("S3Client","ListObjectsCommand").sc(nN1).build(){}});var hA1,uA1,cA1,tQ;var Me=B(()=>{G1();X1();hA1=M(h1(),1),uA1=M(r0(),1),cA1=M(h0(),1);tQ=class tQ extends cA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function($,Z,X,G){return[uA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),hA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListObjectsV2",{}).n("S3Client","ListObjectsV2Command").sc(pN1).build(){}});var lA1,dA1,mA1,Fk0;var Uk0=B(()=>{G1();X1();lA1=M(h1(),1),dA1=M(r0(),1),mA1=M(h0(),1);Fk0=class Fk0 extends mA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function($,Z,X,G){return[dA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),lA1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","ListObjectVersions",{}).n("S3Client","ListObjectVersionsCommand").sc(tN1).build(){}});var iA1,nA1,pA1,Ku;var ke=B(()=>{pQ();G1();X1();iA1=M(h1(),1),nA1=M(r0(),1),pA1=M(h0(),1);Ku=class Ku extends pA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[nA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),iA1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","ListParts",{}).n("S3Client","ListPartsCommand").sc(oN1).build(){}});var tA1,oA1,wk0;var Ok0=B(()=>{v4();G1();X1();tA1=M(r0(),1),oA1=M(h0(),1);wk0=class wk0 extends oA1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[tA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1})]}).s("AmazonS3","PutBucketAbac",{}).n("S3Client","PutBucketAbacCommand").sc(rN1).build(){}});var rA1,aA1,Bk0;var Dk0=B(()=>{v4();G1();X1();rA1=M(r0(),1),aA1=M(h0(),1);Bk0=class Bk0 extends aA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[rA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1})]}).s("AmazonS3","PutBucketAccelerateConfiguration",{}).n("S3Client","PutBucketAccelerateConfigurationCommand").sc(aN1).build(){}});var sA1,eA1,Lk0;var Ek0=B(()=>{v4();G1();X1();sA1=M(r0(),1),eA1=M(h0(),1);Lk0=class Lk0 extends eA1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[sA1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketAcl",{}).n("S3Client","PutBucketAclCommand").sc(sN1).build(){}});var $T1,ZT1,zk0;var jk0=B(()=>{G1();X1();$T1=M(r0(),1),ZT1=M(h0(),1);zk0=class zk0 extends ZT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[$T1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketAnalyticsConfiguration",{}).n("S3Client","PutBucketAnalyticsConfigurationCommand").sc(eN1).build(){}});var XT1,GT1,Pk0;var Ak0=B(()=>{v4();G1();X1();XT1=M(r0(),1),GT1=M(h0(),1);Pk0=class Pk0 extends GT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[XT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketCors",{}).n("S3Client","PutBucketCorsCommand").sc($H1).build(){}});var QT1,YT1,Tk0;var Rk0=B(()=>{v4();G1();X1();QT1=M(r0(),1),YT1=M(h0(),1);Tk0=class Tk0 extends YT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[QT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketEncryption",{}).n("S3Client","PutBucketEncryptionCommand").sc(ZH1).build(){}});var JT1,KT1,Ik0;var qk0=B(()=>{G1();X1();JT1=M(r0(),1),KT1=M(h0(),1);Ik0=class Ik0 extends KT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[JT1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketIntelligentTieringConfiguration",{}).n("S3Client","PutBucketIntelligentTieringConfigurationCommand").sc(XH1).build(){}});var WT1,NT1,Mk0;var kk0=B(()=>{G1();X1();WT1=M(r0(),1),NT1=M(h0(),1);Mk0=class Mk0 extends NT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[WT1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketInventoryConfiguration",{}).n("S3Client","PutBucketInventoryConfigurationCommand").sc(GH1).build(){}});var HT1,FT1,UT1,Sk0;var Vk0=B(()=>{v4();G1();X1();HT1=M(h1(),1),FT1=M(r0(),1),UT1=M(h0(),1);Sk0=class Sk0 extends UT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[FT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),HT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutBucketLifecycleConfiguration",{}).n("S3Client","PutBucketLifecycleConfigurationCommand").sc(QH1).build(){}});var wT1,OT1,Ck0;var _k0=B(()=>{v4();G1();X1();wT1=M(r0(),1),OT1=M(h0(),1);Ck0=class Ck0 extends OT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[wT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketLogging",{}).n("S3Client","PutBucketLoggingCommand").sc(YH1).build(){}});var BT1,DT1,vk0;var bk0=B(()=>{G1();X1();BT1=M(r0(),1),DT1=M(h0(),1);vk0=class vk0 extends DT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[BT1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketMetricsConfiguration",{}).n("S3Client","PutBucketMetricsConfigurationCommand").sc(JH1).build(){}});var LT1,ET1,fk0;var xk0=B(()=>{G1();X1();LT1=M(r0(),1),ET1=M(h0(),1);fk0=class fk0 extends ET1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[LT1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketNotificationConfiguration",{}).n("S3Client","PutBucketNotificationConfigurationCommand").sc(KH1).build(){}});var zT1,jT1,yk0;var gk0=B(()=>{v4();G1();X1();zT1=M(r0(),1),jT1=M(h0(),1);yk0=class yk0 extends jT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[zT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketOwnershipControls",{}).n("S3Client","PutBucketOwnershipControlsCommand").sc(WH1).build(){}});var PT1,AT1,hk0;var uk0=B(()=>{v4();G1();X1();PT1=M(r0(),1),AT1=M(h0(),1);hk0=class hk0 extends AT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[PT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketPolicy",{}).n("S3Client","PutBucketPolicyCommand").sc(NH1).build(){}});var TT1,RT1,ck0;var lk0=B(()=>{v4();G1();X1();TT1=M(r0(),1),RT1=M(h0(),1);ck0=class ck0 extends RT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[TT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketReplication",{}).n("S3Client","PutBucketReplicationCommand").sc(HH1).build(){}});var IT1,qT1,dk0;var mk0=B(()=>{v4();G1();X1();IT1=M(r0(),1),qT1=M(h0(),1);dk0=class dk0 extends qT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[IT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketRequestPayment",{}).n("S3Client","PutBucketRequestPaymentCommand").sc(FH1).build(){}});var MT1,kT1,ik0;var nk0=B(()=>{v4();G1();X1();MT1=M(r0(),1),kT1=M(h0(),1);ik0=class ik0 extends kT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[MT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketTagging",{}).n("S3Client","PutBucketTaggingCommand").sc(UH1).build(){}});var ST1,VT1,pk0;var tk0=B(()=>{v4();G1();X1();ST1=M(r0(),1),VT1=M(h0(),1);pk0=class pk0 extends VT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[ST1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketVersioning",{}).n("S3Client","PutBucketVersioningCommand").sc(wH1).build(){}});var CT1,_T1,ok0;var rk0=B(()=>{v4();G1();X1();CT1=M(r0(),1),_T1=M(h0(),1);ok0=class ok0 extends _T1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[CT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketWebsite",{}).n("S3Client","PutBucketWebsiteCommand").sc(OH1).build(){}});var vT1,bT1,fT1,ak0;var sk0=B(()=>{v4();G1();X1();vT1=M(h1(),1),bT1=M(r0(),1),fT1=M(h0(),1);ak0=class ak0 extends fT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[bT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),vT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectAcl",{}).n("S3Client","PutObjectAclCommand").sc(DH1).build(){}});var Se,xT1,yT1,pW;var ek0=B(()=>{v4();pQ();G1();X1();Se=M(h1(),1),xT1=M(r0(),1),yT1=M(h0(),1);pW=class pW extends yT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[xT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),Se.getCheckContentLengthHeaderPlugin(X),Se.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","PutObject",{}).n("S3Client","PutObjectCommand").sc(BH1).build(){}});var gT1,hT1,uT1,$S0;var ZS0=B(()=>{v4();G1();X1();gT1=M(h1(),1),hT1=M(r0(),1),uT1=M(h0(),1);$S0=class $S0 extends uT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[hT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),gT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectLegalHold",{}).n("S3Client","PutObjectLegalHoldCommand").sc(LH1).build(){}});var cT1,lT1,dT1,XS0;var GS0=B(()=>{v4();G1();X1();cT1=M(h1(),1),lT1=M(r0(),1),dT1=M(h0(),1);XS0=class XS0 extends dT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[lT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),cT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectLockConfiguration",{}).n("S3Client","PutObjectLockConfigurationCommand").sc(EH1).build(){}});var mT1,iT1,nT1,QS0;var YS0=B(()=>{v4();G1();X1();mT1=M(h1(),1),iT1=M(r0(),1),nT1=M(h0(),1);QS0=class QS0 extends nT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[iT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),mT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectRetention",{}).n("S3Client","PutObjectRetentionCommand").sc(zH1).build(){}});var pT1,tT1,oT1,Wu;var JS0=B(()=>{v4();G1();X1();pT1=M(h1(),1),tT1=M(r0(),1),oT1=M(h0(),1);Wu=class Wu extends oT1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[tT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),pT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","PutObjectTagging",{}).n("S3Client","PutObjectTaggingCommand").sc(jH1).build(){}});var rT1,aT1,KS0;var WS0=B(()=>{v4();G1();X1();rT1=M(r0(),1),aT1=M(h0(),1);KS0=class KS0 extends aT1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[rT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutPublicAccessBlock",{}).n("S3Client","PutPublicAccessBlockCommand").sc(PH1).build(){}});var sT1,eT1,$R1,NS0;var HS0=B(()=>{G1();X1();sT1=M(h1(),1),eT1=M(r0(),1),$R1=M(h0(),1);NS0=class NS0 extends $R1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[eT1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),sT1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","RenameObject",{}).n("S3Client","RenameObjectCommand").sc(AH1).build(){}});var ZR1,XR1,GR1,FS0;var US0=B(()=>{v4();G1();X1();ZR1=M(h1(),1),XR1=M(r0(),1),GR1=M(h0(),1);FS0=class FS0 extends GR1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[XR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),ZR1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","RestoreObject",{}).n("S3Client","RestoreObjectCommand").sc(TH1).build(){}});var QR1,YR1,wS0;var OS0=B(()=>{pQ();G1();X1();QR1=M(r0(),1),YR1=M(h0(),1);wS0=class wS0 extends YR1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[QR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),g5(X)]}).s("AmazonS3","SelectObjectContent",{eventStream:{output:!0}}).n("S3Client","SelectObjectContentCommand").sc(RH1).build(){}});var JR1,KR1,BS0;var DS0=B(()=>{v4();G1();X1();JR1=M(r0(),1),KR1=M(h0(),1);BS0=class BS0 extends KR1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[JR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","UpdateBucketMetadataInventoryTableConfiguration",{}).n("S3Client","UpdateBucketMetadataInventoryTableConfigurationCommand").sc(IH1).build(){}});var WR1,NR1,LS0;var ES0=B(()=>{v4();G1();X1();WR1=M(r0(),1),NR1=M(h0(),1);LS0=class LS0 extends NR1.Command.classBuilder().ep({...Q0,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[WR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","UpdateBucketMetadataJournalTableConfiguration",{}).n("S3Client","UpdateBucketMetadataJournalTableConfigurationCommand").sc(qH1).build(){}});var HR1,FR1,UR1,zS0;var jS0=B(()=>{v4();G1();X1();HR1=M(h1(),1),FR1=M(r0(),1),UR1=M(h0(),1);zS0=class zS0 extends UR1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[FR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),HR1.getThrow200ExceptionsPlugin(X)]}).s("AmazonS3","UpdateObjectEncryption",{}).n("S3Client","UpdateObjectEncryptionCommand").sc(MH1).build(){}});var wR1,OR1,BR1,Nu;var PS0=B(()=>{v4();pQ();G1();X1();wR1=M(h1(),1),OR1=M(r0(),1),BR1=M(h0(),1);Nu=class Nu extends BR1.Command.classBuilder().ep({...Q0,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function($,Z,X,G){return[OR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),J$(X,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),wR1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","UploadPart",{}).n("S3Client","UploadPartCommand").sc(kH1).build(){}});var DR1,LR1,ER1,AS0;var TS0=B(()=>{pQ();G1();X1();DR1=M(h1(),1),LR1=M(r0(),1),ER1=M(h0(),1);AS0=class AS0 extends ER1.Command.classBuilder().ep({...Q0,DisableS3ExpressSessionAuth:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function($,Z,X,G){return[LR1.getEndpointPlugin(X,$.getEndpointParameterInstructions()),DR1.getThrow200ExceptionsPlugin(X),g5(X)]}).s("AmazonS3","UploadPartCopy",{}).n("S3Client","UploadPartCopyCommand").sc(SH1).build(){}});var zR1,jR1,RS0;var IS0=B(()=>{G1();X1();zR1=M(r0(),1),jR1=M(h0(),1);RS0=class RS0 extends jR1.Command.classBuilder().ep({...Q0,UseObjectLambdaEndpoint:{type:"staticContextParams",value:!0}}).m(function($,Z,X,G){return[zR1.getEndpointPlugin(X,$.getEndpointParameterInstructions())]}).s("AmazonS3","WriteGetObjectResponse",{}).n("S3Client","WriteGetObjectResponseCommand").sc(VH1).build(){}});var PR1,AR1;var qS0=B(()=>{Ie();DB();PR1=M(g9(),1),AR1=PR1.createPaginator(HX,Yu,"ContinuationToken","ContinuationToken","MaxBuckets")});var TR1,RR1;var MS0=B(()=>{qe();DB();TR1=M(g9(),1),RR1=TR1.createPaginator(HX,Ju,"ContinuationToken","ContinuationToken","MaxDirectoryBuckets")});var IR1,qR1;var kS0=B(()=>{Me();DB();IR1=M(g9(),1),qR1=IR1.createPaginator(HX,tQ,"ContinuationToken","NextContinuationToken","MaxKeys")});var MR1,kR1;var SS0=B(()=>{ke();DB();MR1=M(g9(),1),kR1=MR1.createPaginator(HX,Ku,"PartNumberMarker","NextPartNumberMarker","MaxParts")});var x_=()=>{let $=new WeakSet;return(Z,X)=>{if(typeof X==="object"&&X!==null){if($.has(X))return"[Circular]";$.add(X)}return X}};var SR1=($)=>{return new Promise((Z)=>setTimeout(Z,$*1000))};var VR1,t6,NF=($)=>{if($.state===t6.ABORTED){let Z=Error(`${JSON.stringify({...$,reason:"Request was aborted"},x_())}`);throw Z.name="AbortError",Z}else if($.state===t6.TIMEOUT){let Z=Error(`${JSON.stringify({...$,reason:"Waiter has timed out"},x_())}`);throw Z.name="TimeoutError",Z}else if($.state!==t6.SUCCESS)throw Error(`${JSON.stringify($,x_())}`);return $};var Ve=B(()=>{VR1={minDelay:2,maxDelay:120};(function($){$.ABORTED="ABORTED",$.FAILURE="FAILURE",$.SUCCESS="SUCCESS",$.RETRY="RETRY",$.TIMEOUT="TIMEOUT"})(t6||(t6={}))});var CR1=async({minDelay:$,maxDelay:Z,maxWaitTime:X,abortController:G,client:Q,abortSignal:Y},J,K)=>{let W={},[N,H]=[$*1000,Z*1000],F=0,U=Date.now()+X*1000,w=Date.now()+60000,O=!1;while(!0){if(F>0){let E=BF8(N,H,F,U);if(G?.signal?.aborted||Y?.aborted)return W["AbortController signal aborted."]|=0,W["AbortController signal aborted."]+=1,{state:t6.ABORTED,observedResponses:W};if(Date.now()+E>U)return{state:t6.TIMEOUT,observedResponses:W};await SR1(E/1000)}let{state:D,reason:L}=await K(Q,J);if(L){let E=OF8(L);W[E]|=0,W[E]+=1}if(D!==t6.RETRY)return{state:D,reason:L,final:L,observedResponses:W};if(F+=1,!O&&Date.now()>=w)wF8(W,Q),O=!0}},wF8=($={},Z)=>{let X=Object.keys($),G=0,Q=0;for(let K of X){let W=$[K]|0;if(G=Math.max(W,G),K.startsWith("403:"))Q+=W}let Y=Z?.config?.logger,J=typeof Y?.warn==="function"&&!Y.constructor?.name?.includes?.("NoOpLogger")?Y:console;if(Q>=3||X[X.length-1].startsWith("403:"))J.warn("@smithy/util-waiter WARN - 403 status code encountered during waiter polling.")},OF8=($)=>{let Z=$?.$response?.statusCode??$?.$metadata?.httpStatusCode;if($?.$responseBodyText)return`${Z?Z+": ":""}Deserialization error for body: ${$.$responseBodyText}`;if(Z){if($?.$response||$?.message)return`${Z??"Unknown"}: ${$?.message}`;return`${Z}: OK`}return String($?.message??JSON.stringify($,x_())??"Unknown")},BF8=($,Z,X,G)=>{let Q=Math.log(Z/$)/Math.log(2)+1;if(X>Q)return Z;let Y=$*2**(X-1),J=Math.min(Y,Z),K=DF8($,J);if(Date.now()+K>G){let W=G-Date.now();return Math.max(0,W-500)}return K},DF8=($,Z)=>$+Math.random()*(Z-$);var _R1=B(()=>{Ve()});var vR1=($)=>{if($.maxWaitTime<=0)throw Error("WaiterConfiguration.maxWaitTime must be greater than 0");else if($.minDelay<=0)throw Error("WaiterConfiguration.minDelay must be greater than 0");else if($.maxDelay<=0)throw Error("WaiterConfiguration.maxDelay must be greater than 0");else if($.maxWaitTime<=$.minDelay)throw Error(`WaiterConfiguration.maxWaitTime [${$.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${$.minDelay}] for this waiter`);else if($.maxDelay<$.minDelay)throw Error(`WaiterConfiguration.maxDelay [${$.maxDelay}] must be greater than WaiterConfiguration.minDelay [${$.minDelay}] for this waiter`)};var bR1=()=>{};var fR1=($)=>{let Z,X=new Promise((G)=>{if(Z=()=>G({state:t6.ABORTED}),typeof $.addEventListener==="function")$.addEventListener("abort",Z);else $.onabort=Z});return{clearListener(){if(typeof $.removeEventListener==="function")$.removeEventListener("abort",Z)},aborted:X}},HF=async($,Z,X)=>{let G={...VR1,...$};vR1(G);let Q=[CR1(G,Z,X)],Y=[];if($.abortSignal){let{aborted:J,clearListener:K}=fR1($.abortSignal);Y.push(K),Q.push(J)}if($.abortController?.signal){let{aborted:J,clearListener:K}=fR1($.abortController.signal);Y.push(K),Q.push(J)}return Promise.race(Q).then((J)=>{for(let K of Y)K();return J})};var xR1=B(()=>{_R1();bR1();Ve()});var Hu=B(()=>{xR1();Ve()});var LF8=async($,Z)=>{let X;try{return X=await $.send(new LB(Z)),{state:t6.SUCCESS,reason:X}}catch(G){if(X=G,G.name==="NotFound")return{state:t6.RETRY,reason:X}}return{state:t6.RETRY,reason:X}},yR1=async($,Z)=>{let G=await HF({...{minDelay:5,maxDelay:120},...$},Z,LF8);return NF(G)};var VS0=B(()=>{Hu();Gu()});var EF8=async($,Z)=>{let X;try{X=await $.send(new LB(Z))}catch(G){if(X=G,G.name==="NotFound")return{state:t6.SUCCESS,reason:X}}return{state:t6.RETRY,reason:X}},gR1=async($,Z)=>{let G=await HF({...{minDelay:5,maxDelay:120},...$},Z,EF8);return NF(G)};var CS0=B(()=>{Hu();Gu()});var zF8=async($,Z)=>{let X;try{return X=await $.send(new v3(Z)),{state:t6.SUCCESS,reason:X}}catch(G){if(X=G,G.name==="NotFound")return{state:t6.RETRY,reason:X}}return{state:t6.RETRY,reason:X}},hR1=async($,Z)=>{let G=await HF({...{minDelay:5,maxDelay:120},...$},Z,zF8);return NF(G)};var _S0=B(()=>{Hu();Qu()});var jF8=async($,Z)=>{let X;try{X=await $.send(new v3(Z))}catch(G){if(X=G,G.name==="NotFound")return{state:t6.SUCCESS,reason:X}}return{state:t6.RETRY,reason:X}},uR1=async($,Z)=>{let G=await HF({...{minDelay:5,maxDelay:120},...$},Z,jF8);return NF(G)};var vS0=B(()=>{Hu();Qu()});var cR1,PF8,AF8,TF8,lR1;var dR1=B(()=>{r20();a20();e20();Zq0();Gq0();Yq0();Jq0();Ks();Wq0();Hq0();Uq0();Oq0();Dq0();Eq0();jq0();Aq0();Rq0();qq0();kq0();Vq0();_q0();bq0();xq0();yq0();hq0();cq0();dq0();iq0();pq0();oq0();aq0();eq0();ZM0();GM0();YM0();KM0();NM0();FM0();wM0();BM0();LM0();zM0();PM0();TM0();IM0();MM0();SM0();CM0();vM0();fM0();yM0();hM0();uM0();lM0();mM0();nM0();tM0();rM0();sM0();Gu();Qu();$k0();Xk0();Qk0();Jk0();Ie();qe();Wk0();Hk0();Me();Uk0();ke();Ok0();Dk0();Ek0();jk0();Ak0();Rk0();qk0();kk0();Vk0();_k0();bk0();xk0();gk0();uk0();lk0();mk0();nk0();tk0();rk0();sk0();ek0();ZS0();GS0();YS0();JS0();WS0();HS0();US0();OS0();DS0();ES0();jS0();PS0();TS0();IS0();qS0();MS0();kS0();SS0();DB();VS0();CS0();_S0();vS0();cR1=M(h0(),1),PF8={AbortMultipartUploadCommand:eh,CompleteMultipartUploadCommand:$u,CopyObjectCommand:s20,CreateBucketCommand:$q0,CreateBucketMetadataConfigurationCommand:Xq0,CreateBucketMetadataTableConfigurationCommand:Qq0,CreateMultipartUploadCommand:Zu,CreateSessionCommand:_h,DeleteBucketCommand:Nq0,DeleteBucketAnalyticsConfigurationCommand:Kq0,DeleteBucketCorsCommand:Fq0,DeleteBucketEncryptionCommand:wq0,DeleteBucketIntelligentTieringConfigurationCommand:Bq0,DeleteBucketInventoryConfigurationCommand:Lq0,DeleteBucketLifecycleCommand:zq0,DeleteBucketMetadataConfigurationCommand:Pq0,DeleteBucketMetadataTableConfigurationCommand:Tq0,DeleteBucketMetricsConfigurationCommand:Iq0,DeleteBucketOwnershipControlsCommand:Mq0,DeleteBucketPolicyCommand:Sq0,DeleteBucketReplicationCommand:Cq0,DeleteBucketTaggingCommand:vq0,DeleteBucketWebsiteCommand:fq0,DeleteObjectCommand:Xu,DeleteObjectsCommand:gq0,DeleteObjectTaggingCommand:uq0,DeletePublicAccessBlockCommand:lq0,GetBucketAbacCommand:mq0,GetBucketAccelerateConfigurationCommand:nq0,GetBucketAclCommand:tq0,GetBucketAnalyticsConfigurationCommand:rq0,GetBucketCorsCommand:sq0,GetBucketEncryptionCommand:$M0,GetBucketIntelligentTieringConfigurationCommand:XM0,GetBucketInventoryConfigurationCommand:QM0,GetBucketLifecycleConfigurationCommand:JM0,GetBucketLocationCommand:WM0,GetBucketLoggingCommand:HM0,GetBucketMetadataConfigurationCommand:UM0,GetBucketMetadataTableConfigurationCommand:OM0,GetBucketMetricsConfigurationCommand:DM0,GetBucketNotificationConfigurationCommand:EM0,GetBucketOwnershipControlsCommand:jM0,GetBucketPolicyCommand:AM0,GetBucketPolicyStatusCommand:RM0,GetBucketReplicationCommand:qM0,GetBucketRequestPaymentCommand:kM0,GetBucketTaggingCommand:VM0,GetBucketVersioningCommand:_M0,GetBucketWebsiteCommand:bM0,GetObjectCommand:WF,GetObjectAclCommand:xM0,GetObjectAttributesCommand:gM0,GetObjectLegalHoldCommand:cM0,GetObjectLockConfigurationCommand:dM0,GetObjectRetentionCommand:iM0,GetObjectTaggingCommand:pM0,GetObjectTorrentCommand:oM0,GetPublicAccessBlockCommand:aM0,HeadBucketCommand:LB,HeadObjectCommand:v3,ListBucketAnalyticsConfigurationsCommand:eM0,ListBucketIntelligentTieringConfigurationsCommand:Zk0,ListBucketInventoryConfigurationsCommand:Gk0,ListBucketMetricsConfigurationsCommand:Yk0,ListBucketsCommand:Yu,ListDirectoryBucketsCommand:Ju,ListMultipartUploadsCommand:Kk0,ListObjectsCommand:Nk0,ListObjectsV2Command:tQ,ListObjectVersionsCommand:Fk0,ListPartsCommand:Ku,PutBucketAbacCommand:wk0,PutBucketAccelerateConfigurationCommand:Bk0,PutBucketAclCommand:Lk0,PutBucketAnalyticsConfigurationCommand:zk0,PutBucketCorsCommand:Pk0,PutBucketEncryptionCommand:Tk0,PutBucketIntelligentTieringConfigurationCommand:Ik0,PutBucketInventoryConfigurationCommand:Mk0,PutBucketLifecycleConfigurationCommand:Sk0,PutBucketLoggingCommand:Ck0,PutBucketMetricsConfigurationCommand:vk0,PutBucketNotificationConfigurationCommand:fk0,PutBucketOwnershipControlsCommand:yk0,PutBucketPolicyCommand:hk0,PutBucketReplicationCommand:ck0,PutBucketRequestPaymentCommand:dk0,PutBucketTaggingCommand:ik0,PutBucketVersioningCommand:pk0,PutBucketWebsiteCommand:ok0,PutObjectCommand:pW,PutObjectAclCommand:ak0,PutObjectLegalHoldCommand:$S0,PutObjectLockConfigurationCommand:XS0,PutObjectRetentionCommand:QS0,PutObjectTaggingCommand:Wu,PutPublicAccessBlockCommand:KS0,RenameObjectCommand:NS0,RestoreObjectCommand:FS0,SelectObjectContentCommand:wS0,UpdateBucketMetadataInventoryTableConfigurationCommand:BS0,UpdateBucketMetadataJournalTableConfigurationCommand:LS0,UpdateObjectEncryptionCommand:zS0,UploadPartCommand:Nu,UploadPartCopyCommand:AS0,WriteGetObjectResponseCommand:RS0},AF8={paginateListBuckets:AR1,paginateListDirectoryBuckets:RR1,paginateListObjectsV2:qR1,paginateListParts:kR1},TF8={waitUntilBucketExists:yR1,waitUntilBucketNotExists:gR1,waitUntilObjectExists:hR1,waitUntilObjectNotExists:uR1};lR1=class lR1 extends HX{};cR1.createAggregatedClient(PF8,lR1,{paginators:AF8,waiters:TF8})});var mR1=B(()=>{r20();a20();e20();Zq0();Gq0();Yq0();Jq0();Ks();Wq0();Hq0();Uq0();Oq0();Dq0();Eq0();jq0();Aq0();Rq0();qq0();kq0();Vq0();_q0();bq0();xq0();yq0();cq0();hq0();dq0();iq0();pq0();oq0();aq0();eq0();ZM0();GM0();YM0();KM0();NM0();FM0();wM0();BM0();LM0();zM0();PM0();TM0();IM0();MM0();SM0();CM0();vM0();fM0();yM0();hM0();uM0();lM0();mM0();nM0();tM0();rM0();sM0();Gu();Qu();$k0();Xk0();Qk0();Jk0();Ie();qe();Wk0();Uk0();Hk0();Me();ke();Ok0();Dk0();Ek0();jk0();Ak0();Rk0();qk0();kk0();Vk0();_k0();bk0();xk0();gk0();uk0();lk0();mk0();nk0();tk0();rk0();sk0();ek0();ZS0();GS0();YS0();JS0();WS0();HS0();US0();OS0();DS0();ES0();jS0();PS0();TS0();IS0()});var iR1=()=>{};var nR1=B(()=>{iR1();qS0();MS0();kS0();SS0()});var pR1=B(()=>{VS0();CS0();_S0();vS0()});var tR1;var oR1=B(()=>{tR1={CRC32:"CRC32",CRC32C:"CRC32C",CRC64NVME:"CRC64NVME",MD5:"MD5",SHA1:"SHA1",SHA256:"SHA256",SHA512:"SHA512",XXHASH128:"XXHASH128",XXHASH3:"XXHASH3",XXHASH64:"XXHASH64"}});var rR1=()=>{};var aR1=()=>{};var Ce=B(()=>{DB();dR1();mR1();X1();nR1();pR1();oR1();JR0();rR1();aR1()});function eR1($){let{port:Z,query:X}=$,{protocol:G,path:Q,hostname:Y}=$;if(G&&G.slice(-1)!==":")G+=":";if(Z)Y+=`:${Z}`;if(Q&&Q.charAt(0)!=="/")Q=`/${Q}`;let J=X?sR1.buildQueryString(X):"";if(J&&J[0]!=="?")J=`?${J}`;let K="";if($.username!=null||$.password!=null){let N=$.username??"",H=$.password??"";K=`${N}:${H}@`}let W="";if($.fragment)W=`#${$.fragment}`;return`${G}//${K}${Y}${Q}${J}${W}`}var sR1;var $I1=B(()=>{sR1=M(Ur(),1)});var ZI1="UNSIGNED-PAYLOAD",XI1="X-Amz-Content-Sha256";class _e{signer;constructor($){let Z={service:$.signingName||$.service||"s3",uriEscapePath:$.uriEscapePath||!1,applyChecksum:$.applyChecksum||!1,...$};this.signer=new GI1.SignatureV4MultiRegion(Z)}presign($,{unsignableHeaders:Z=new Set,hoistableHeaders:X=new Set,unhoistableHeaders:G=new Set,...Q}={}){return this.prepareRequest($,{unsignableHeaders:Z,unhoistableHeaders:G,hoistableHeaders:X}),this.signer.presign($,{expiresIn:900,unsignableHeaders:Z,unhoistableHeaders:G,...Q})}presignWithCredentials($,Z,{unsignableHeaders:X=new Set,hoistableHeaders:G=new Set,unhoistableHeaders:Q=new Set,...Y}={}){return this.prepareRequest($,{unsignableHeaders:X,unhoistableHeaders:Q,hoistableHeaders:G}),this.signer.presignWithCredentials($,Z,{expiresIn:900,unsignableHeaders:X,unhoistableHeaders:Q,...Y})}prepareRequest($,{unsignableHeaders:Z=new Set,unhoistableHeaders:X=new Set,hoistableHeaders:G=new Set}={}){Z.add("content-type"),Object.keys($.headers).map((K)=>K.toLowerCase()).filter((K)=>K.startsWith("x-amz-server-side-encryption")).forEach((K)=>{if(!G.has(K))X.add(K)}),$.headers[XI1]=ZI1;let Q=$.headers.host,Y=$.port,J=`${$.hostname}${$.port!=null?":"+Y:""}`;if(!Q||Q===$.hostname&&$.port!=null)$.headers.host=J}}var GI1;var bS0=B(()=>{GI1=M(w_(),1)});var QI1,YI1,ve=async($,Z,X={})=>{let G,Q;if(typeof $.config.endpointProvider==="function"){let U=(await QI1.getEndpointFromInstructions(Z.input,Z.constructor,$.config)).properties?.authSchemes?.[0];if(U?.name==="sigv4a")Q=U?.signingRegionSet?.join(",");else Q=U?.signingRegion;G=new _e({...$.config,signingName:U?.signingName,region:async()=>Q})}else G=new _e($.config);let Y=(F,U)=>async(w)=>{let{request:O}=w;if(!YI1.HttpRequest.isInstance(O))throw Error("Request to be presigned is not an valid HTTP request.");delete O.headers["amz-sdk-invocation-id"],delete O.headers["amz-sdk-request"],delete O.headers["x-amz-user-agent"];let D,L={...X,signingRegion:X.signingRegion??U.signing_region??Q,signingService:X.signingService??U.signing_service};if(U.s3ExpressIdentity)D=await G.presignWithCredentials(O,U.s3ExpressIdentity,L);else D=await G.presign(O,L);return{response:{},output:{$metadata:{httpStatusCode:200},presigned:D}}},J="presignInterceptMiddleware",K=$.middlewareStack.clone();K.addRelativeTo(Y,{name:J,relation:"before",toMiddleware:"awsAuthMiddleware",override:!0});let W=Z.resolveMiddleware(K,$.config,{}),{output:N}=await W({input:Z.input}),{presigned:H}=N;return eR1(H)};var JI1=B(()=>{$I1();bS0();QI1=M(r0(),1),YI1=M(M6(),1)});var KI1=B(()=>{JI1();bS0()});import{extname as RF8}from"path";function b3($){let Z;try{Z=decodeURIComponent($)}catch{Z=$}let G=Z.replace(/\0/g,"").replace(/[\x00-\x1f\x7f]/g,"").replace(/\\/g,"/").split("/"),Q=[];for(let Y of G)if(Y==="..")Q.pop();else if(Y!=="."&&Y!=="")Q.push(Y);return Q.join("/")}function FF($,Z){let X=b3(Z);if(!X)throw Error("Key is empty after sanitization");return`${$}/${X}`}function WI1($,Z){if(!Z)return`${$}/`;let X=b3(Z);return`${$}/${X}${X.endsWith("/")?"":"/"}`}function y_($,Z,X){let G=X.split("/").map(encodeURIComponent).join("/");return`${$}/api/${encodeURIComponent(Z)}/files/${G}`}function fS0($,Z){let X=`${$}/`;if(Z.startsWith(X))return Z.slice(X.length);return Z}function HZ($){let Z=RF8($).toLowerCase();return IF8[Z]??"application/octet-stream"}function be($){let Z=$.split(";")[0].trim();if(qF8.has(Z))return!0;if(Z.startsWith("text/"))return!0;return!1}var IF8,qF8;var f3=B(()=>{IF8={".json":"application/json",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".mjs":"application/javascript",".ts":"text/typescript",".txt":"text/plain",".md":"text/markdown",".csv":"text/csv",".xml":"application/xml",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".pdf":"application/pdf",".zip":"application/zip",".gz":"application/gzip",".tar":"application/x-tar",".wasm":"application/wasm",".yaml":"application/yaml",".yml":"application/yaml",".toml":"application/toml"};qF8=new Set(["application/json","text/html","text/css","application/javascript","text/typescript","text/plain","text/markdown","text/csv","application/xml","image/svg+xml","application/yaml","application/toml"])});class xS0{client;bucket;constructor($){this.bucket=$.bucket,this.client=new HX({endpoint:$.endpoint,region:$.region,credentials:{accessKeyId:$.accessKeyId,secretAccessKey:$.secretAccessKey},forcePathStyle:$.forcePathStyle})}async getBytesOrPresign($,Z,X){let G=FF($,Z),Q=await this.client.send(new v3({Bucket:this.bucket,Key:G})),Y=Q.ContentLength??0,J=Q.ContentType??HZ(Z);if(Y>X.presignWhenLargerThan){let H=await ve(this.client,new WF({Bucket:this.bucket,Key:G}),{expiresIn:X.presignExpiresIn??3600});return{error:"FILE_TOO_LARGE",size:Y,maxInlineSize:X.presignWhenLargerThan,presignedUrl:H,contentType:J}}let W=await(await this.client.send(new WF({Bucket:this.bucket,Key:G}))).Body.transformToByteArray(),N=be(J);return{content:N?new TextDecoder().decode(W):Buffer.from(W).toString("base64"),contentType:J,encoding:N?"utf-8":"base64",size:Y,lastModified:Q.LastModified,etag:Q.ETag}}async getBytes($,Z){let X=FF($,Z);return(await this.client.send(new WF({Bucket:this.bucket,Key:X}))).Body.transformToByteArray()}async put($,Z,X,G){let Q=FF($,Z),Y=G?.contentType??HZ(Z);return{etag:(await this.client.send(new pW({Bucket:this.bucket,Key:Q,Body:typeof X==="string"?Buffer.from(X,"utf-8"):X,ContentType:Y}))).ETag,key:Z}}async list($,Z){let X=WI1($,Z?.prefix),G=await this.client.send(new tQ({Bucket:this.bucket,Prefix:X,MaxKeys:Z?.maxKeys??1000,ContinuationToken:Z?.continuationToken,Delimiter:Z?.delimiter})),Q=G.CommonPrefixes?.map((Y)=>fS0($,Y.Prefix??"")).filter(Boolean);return{objects:(G.Contents??[]).map((Y)=>({key:fS0($,Y.Key??""),size:Y.Size??0,lastModified:Y.LastModified,etag:Y.ETag})),isTruncated:G.IsTruncated??!1,nextContinuationToken:G.NextContinuationToken,commonPrefixes:Q&&Q.length>0?Q:void 0}}async delete($,Z){let X=FF($,Z);await this.client.send(new Xu({Bucket:this.bucket,Key:X}))}async head($,Z){let X=FF($,Z),G=await this.client.send(new v3({Bucket:this.bucket,Key:X}));return{contentType:G.ContentType??HZ(Z),size:G.ContentLength??0,lastModified:G.LastModified,etag:G.ETag}}async presignedGetUrl($,Z,X=3600,G){let Q=FF($,Z);return ve(this.client,new WF({Bucket:this.bucket,Key:Q}),{expiresIn:X})}async presignedPutUrl($,Z,X=3600,G){let Q=FF($,Z);return ve(this.client,new pW({Bucket:this.bucket,Key:Q,ContentType:G}),{expiresIn:X})}}var NI1=B(()=>{Ce();KI1();f3()});function MF8(){let $=n0();return!!($.s3Endpoint&&$.s3Bucket&&$.s3AccessKeyId&&$.s3SecretAccessKey)}function aG(){if(Fu!==void 0)return Fu;if(!MF8())return Fu=null,null;let $=n0();return Fu=new xS0({endpoint:$.s3Endpoint,bucket:$.s3Bucket,region:$.s3Region,accessKeyId:$.s3AccessKeyId,secretAccessKey:$.s3SecretAccessKey,forcePathStyle:$.s3ForcePathStyle}),Fu}var Fu;var EB=B(()=>{f$();NI1()});function WJ($,Z){return{getBytesOrPresign:(X,G)=>$.getBytesOrPresign(Z,X,G),getBytes:(X)=>$.getBytes(Z,X),put:(X,G,Q)=>$.put(Z,X,G,Q),list:(X)=>$.list(Z,X),delete:(X)=>$.delete(Z,X),head:(X)=>$.head(Z,X),presignedGetUrl:(X,G,Q)=>$.presignedGetUrl(Z,X,G,Q),presignedPutUrl:(X,G,Q)=>$.presignedPutUrl(Z,X,G,Q)}}import{mkdir as kF8,readdir as SF8,readFile as yS0,stat as fe,unlink as VF8,writeFile as CF8}from"fs/promises";import{createHmac as _F8}from"crypto";import{dirname as vF8,join as Uu}from"path";function gS0($){let Z=$.replace(/[^a-zA-Z0-9_-]/g,"_");return Uu(bF8,Z)}function g_($,Z){return Uu(gS0($),b3(Z))}class x3{orgId;baseUrl;constructor($,Z){this.orgId=$;this.baseUrl=Z}async getBytesOrPresign($,Z){let X=g_(this.orgId,$),G=await fe(X),Q=HZ($);if(G.size>Z.presignWhenLargerThan)return{error:"FILE_TOO_LARGE",size:G.size,maxInlineSize:Z.presignWhenLargerThan,presignedUrl:await this.presignedGetUrl($),contentType:Q};let Y=await yS0(X),J=be(Q);return{content:J?new TextDecoder().decode(Y):Buffer.from(Y).toString("base64"),contentType:Q,encoding:J?"utf-8":"base64",size:G.size,lastModified:G.mtime}}async getBytes($){let Z=await yS0(g_(this.orgId,$));return new Uint8Array(Z)}async put($,Z,X){let G=g_(this.orgId,$);return await kF8(vF8(G),{recursive:!0}),await CF8(G,typeof Z==="string"?Buffer.from(Z,"utf-8"):Z),{key:$}}async list($){let Z=$?.prefix?Uu(gS0(this.orgId),b3($.prefix)):gS0(this.orgId),X;try{X=await SF8(Z,{withFileTypes:!0})}catch{return{objects:[],isTruncated:!1}}let G=$?.maxKeys??1000,Q=$?.prefix,Y=X.filter((K)=>K.isFile());if($?.delimiter){let K=[],W=X.filter((O)=>O.isDirectory());for(let O of W){let D=Q?`${Q}/${O.name}/`:`${O.name}/`;K.push(D)}K.sort();let N=G,H=K.slice(0,N);N-=H.length;let F=Y.slice(0,N),U=K.length+Y.length;return{objects:await Promise.all(F.map(async(O)=>{let D=await fe(Uu(Z,O.name));return{key:Q?`${Q}/${O.name}`:O.name,size:D.size,lastModified:D.mtime}})),isTruncated:U>G,commonPrefixes:H.length>0?H:void 0}}return{objects:await Promise.all(Y.slice(0,G).map(async(K)=>{let W=await fe(Uu(Z,K.name));return{key:Q?`${Q}/${K.name}`:K.name,size:W.size,lastModified:W.mtime}})),isTruncated:Y.length>G}}async delete($){await VF8(g_(this.orgId,$))}async head($){let Z=await fe(g_(this.orgId,$));return{contentType:HZ($),size:Z.size,lastModified:Z.mtime}}async presignedGetUrl($,Z,X){if(X?.requireFetchable)throw Error("object storage returned a not fetchable (data:) URL; configure real S3/R2/MinIO for large-payload offload");let G=g_(this.orgId,$),Q=await yS0(G),Y=HZ($),J=Buffer.from(Q).toString("base64");return`data:${Y};base64,${J}`}async presignedPutUrl($,Z=3600){if(!this.baseUrl)throw Error("baseUrl required for presigned PUT URLs in dev mode");let X=b3($),G=Math.floor(Date.now()/1000)+Z,Q=n0().encryptionKey||"dev-secret",Y=`${this.orgId}:${X}:${G}:PUT`,J=_F8("sha256",Q).update(Y).digest("hex"),K=new URL(`/api/dev-assets/${this.orgId}/${X}`,this.baseUrl);return K.searchParams.set("expires",G.toString()),K.searchParams.set("signature",J),K.searchParams.set("method","PUT"),K.toString()}}var bF8="./data/assets";var wu=B(()=>{f3();f$()});function h_($){return fF8.test($)&&$!=="."&&$!==".."}function FZ($){if(!h_($))throw Error(`Invalid org-fs volume name: ${JSON.stringify($)}`)}function UZ($){return b3($)}function u_($){let Z=$.lastIndexOf("/");return Z===-1?"":$.slice(0,Z)}function UF($){let Z=u_($);if(Z==="")return[];let X=Z.split("/"),G=[],Q="";for(let Y of X)Q=Q===""?Y:`${Q}/${Y}`,G.push(Q);return G}function y3($,Z){return`${HI1}/${$}/${Z}`}function FI1($){return`${HI1}/${$}/`}var fF8,HI1="_fs";var Ou=B(()=>{f3();fF8=/^[A-Za-z0-9_.-]{1,128}$/});import{createHmac as hS0,randomBytes as uS0,scrypt as xF8,timingSafeEqual as UI1}from"crypto";import{promisify as yF8}from"util";async function OI1($){let Z=uS0(16),X=await wI1($,Z,gF8);return`scrypt$${Z.toString("hex")}$${X.toString("hex")}`}async function BI1($,Z){let X=Z.split("$");if(X.length!==3||X[0]!=="scrypt")return!1;let G=Buffer.from(X[1],"hex"),Q=Buffer.from(X[2],"hex");if(G.length===0||Q.length===0)return!1;let Y;try{Y=await wI1($,G,Q.length)}catch{return!1}return Q.length===Y.length&&UI1(Q,Y)}function DI1(){return uS0(16).toString("hex")}function LI1(){if(xe)return xe;let $;try{let Z=n0();$=Z.studioJwtSecret??Z.betterAuthSecret}catch{$=void 0}return xe=$?Buffer.from($):uS0(32),xe}function EI1($){let Z=Buffer.from(JSON.stringify($)).toString("base64url"),X=hS0("sha256",LI1()).update(Z).digest("base64url");return`${Z}.${X}`}function zI1($,Z){let X=$.indexOf(".");if(X<0)return null;let G=$.slice(0,X),Q=Buffer.from($.slice(X+1)),Y=Buffer.from(hS0("sha256",LI1()).update(G).digest("base64url"));if(Q.length!==Y.length||!UI1(Q,Y))return null;let J;try{J=JSON.parse(Buffer.from(G,"base64url").toString())}catch{return null}if(J.o!==Z.org||J.v!==Z.volume||J.s!==Z.secret||typeof J.e!=="number"||J.e<Z.nowSec)return null;return{govPath:J.p}}function cS0($,Z,X){return`fsu_${hS0("sha256","fsunlock-name").update(`${$}:${Z}:${X}`).digest("hex").slice(0,16)}`}var gF8=64,wI1,xe=null;var lS0=B(()=>{f$();wI1=yF8(xF8)});import{createHash as hF8}from"crypto";function jI1($){return hF8("sha256").update($).digest("hex")}class g3{storage;manifest;organizationId;maxFileBytes;volumeQuotaBytes;constructor($,Z,X,G={}){this.storage=$;this.manifest=Z;this.organizationId=X;this.maxFileBytes=G.maxFileBytes??lF8,this.volumeQuotaBytes=G.volumeQuotaBytes??dF8}async usage($){return FZ($),this.manifest.usage(this.organizationId,$)}async stat($,Z){return FZ($),this.manifest.get(this.organizationId,$,UZ(Z))}async listDir($,Z){return FZ($),this.manifest.listDir(this.organizationId,$,UZ(Z))}async read($,Z){let X=await this.requireFile($,Z);return this.storage.getBytes(y3($,X.path))}async setShareMode($,Z,X,G){FZ($);let Q=UZ(Z),Y=await this.manifest.get(this.organizationId,$,Q);if(!Y)throw new zB(`No such path: ${Q}`);let J=null,K=null;if(X==="password"){if(!G.password)throw new NJ("A password is required to set password mode");J=await OI1(G.password),K=DI1()}let W=await this.manifest.setShareMode({organizationId:this.organizationId,volume:$,path:Y.path,readPublic:X!=="private",passwordHash:J,shareSecret:K,actor:G.actor});if(!W)throw new zB(`No such path: ${Y.path}`);return W}async setReadPublic($,Z,X,G){return this.setShareMode($,Z,X?"public":"private",{actor:G.actor})}async resolveReadAccess($,Z){FZ($);let X=UZ(Z),G=await this.manifest.get(this.organizationId,$,X);if(!G||G.kind!=="file")return{access:"private"};let Q=await this.manifest.resolveGoverningShare({organizationId:this.organizationId,volume:$,candidatePaths:[X,...UF(X)]});if(!Q)return{access:"private"};if(!Q.passwordHash)return{access:"public"};return{access:"password",govPath:Q.path,secret:Q.secret??"",passwordHash:Q.passwordHash}}async isPubliclyReadable($,Z){FZ($);let X=UZ(Z),G=await this.manifest.get(this.organizationId,$,X);if(!G||G.kind!=="file")return!1;if(G.readPublic)return!0;return this.manifest.hasPublicAncestorDir(this.organizationId,$,UF(X))}async inheritsPublic($,Z){return FZ($),this.manifest.hasPublicAncestorDir(this.organizationId,$,UF(UZ(Z)))}async childrenInheritPublic($,Z){FZ($);let X=UZ(Z);if(X==="")return!1;return this.manifest.hasPublicAncestorDir(this.organizationId,$,[...UF(X),X])}async recentWithEffectivePublic($){return this.withEffectivePublic(await this.recent($))}async searchWithEffectivePublic($,Z,X,G){return this.withEffectivePublic(await this.manifest.searchFiles({organizationId:this.organizationId,query:$,limit:Z,volumes:X,pathPrefix:G?UZ(G):void 0}))}async withEffectivePublic($){let Z=new Map;for(let G of $){let Q=Z.get(G.volume);if(!Q)Q=new Set,Z.set(G.volume,Q);for(let Y of UF(G.path))Q.add(Y)}let X=new Map;return await Promise.all([...Z].map(async([G,Q])=>{let Y=await this.manifest.publicDirPaths({organizationId:this.organizationId,volume:G,paths:[...Q]});X.set(G,new Set(Y))})),$.map((G)=>{let Q=X.get(G.volume),Y=!!Q&&UF(G.path).some((J)=>Q.has(J));return{...G,effectivePublic:G.readPublic||Y}})}async presignRead($,Z,X){let G=await this.requireFile($,Z);return this.storage.presignedGetUrl(y3($,G.path),X)}async write($,Z,X,G){FZ($);let Q=UZ(Z);if(Q==="")throw new NJ("Cannot write to the volume root");let Y=typeof X==="string"?new TextEncoder().encode(X):X;if(Y.byteLength>this.maxFileBytes)throw new Bu(`File exceeds the ${this.maxFileBytes}-byte per-file limit`);let[J,K]=await Promise.all([G.skipVolumeQuota?Promise.resolve(null):this.manifest.usage(this.organizationId,$),this.manifest.get(this.organizationId,$,Q)]);if(K?.kind==="dir")throw new NJ(`Cannot write a file at ${Q}: a directory exists there`);if(J){let W=K?.kind==="file"?K.size:0;if(J.bytes-W+Y.byteLength>this.volumeQuotaBytes)throw new Bu(`Write would exceed the volume quota of ${this.volumeQuotaBytes} bytes`)}return await this.ensureDirs($,Q,G.actor),await this.storage.put(y3($,Q),Y,{contentType:G.contentType??HZ(Q)}),this.manifest.putFile({organizationId:this.organizationId,volume:$,path:Q,parent:u_(Q),contentHash:jI1(Y),size:Y.byteLength,actor:G.actor,threadId:G.threadId??null})}async mkdir($,Z,X){FZ($);let G=UZ(Z);if(G==="")return;if((await this.manifest.get(this.organizationId,$,G))?.kind==="file")throw new NJ(`Cannot create a directory at ${G}: a file exists there`);await this.ensureDirs($,G,X.actor),await this.manifest.putDir({organizationId:this.organizationId,volume:$,path:G,parent:u_(G),actor:X.actor})}async delete($,Z,X){FZ($);let G=UZ(Z);if(G==="")throw new NJ("Cannot delete the volume root");let Q=await this.manifest.get(this.organizationId,$,G);if(!Q)return;if(Q.kind==="dir"){let Y=await this.manifest.listSubtreeFiles(this.organizationId,$,G);await Promise.all(Y.map((J)=>this.storage.delete(y3($,J.path)))),await this.manifest.tombstoneSubtree(this.organizationId,$,G,X.actor);return}await this.storage.delete(y3($,G)),await this.manifest.tombstone(this.organizationId,$,G,X.actor)}async move($,Z,X,G){FZ($);let Q=UZ(Z),Y=UZ(X);if(Q===""||Y==="")throw new NJ("Cannot move the volume root");if(Y===Q||Y.startsWith(`${Q}/`))throw new NJ(`Cannot move ${Q} onto itself or into its own subtree`);let J=await this.manifest.get(this.organizationId,$,Q);if(!J)throw new zB(`No such path: ${Q}`);if(J.kind==="file"){let N=await this.storage.getBytes(y3($,Q));await this.write($,Y,N,{...G,skipVolumeQuota:!0}),await this.delete($,Q,G);return}let[K,W]=await Promise.all([this.manifest.listSubtreeFiles(this.organizationId,$,Q),this.manifest.listSubtreeDirs(this.organizationId,$,Q)]);await this.mkdir($,Y,G);for(let N of K){let H=N.path.slice(Q.length+1),F=await this.storage.getBytes(y3($,N.path));await this.write($,`${Y}/${H}`,F,{...G,skipVolumeQuota:!0})}for(let N of W){let H=N.path.slice(Q.length+1);await this.mkdir($,`${Y}/${H}`,G)}await this.delete($,Q,G)}async filesExist($,Z){FZ($);let X=await this.manifest.liveFilePaths({organizationId:this.organizationId,volume:$,paths:Z.map((G)=>UZ(G))});return new Set(X)}async recent($){return this.manifest.recentFiles({organizationId:this.organizationId,limit:$})}async changes($,Z,X=uF8){FZ($);let G=Z||"0";if(!/^\d+$/.test(G))throw new NJ(`Invalid cursor: ${Z}`);let Q=await this.manifest.changesSince({organizationId:this.organizationId,volume:$,sinceSeq:G,limit:X}),Y=Q.at(-1);return{entries:Q,cursor:Y?Y.seq:Z||"0",hasMore:Q.length>=X}}async latestSeq($){return FZ($),this.manifest.latestSeq({organizationId:this.organizationId,volume:$})}async backfillFromStorage($,Z){FZ($);let X=FI1($),G,Q=0;do{let Y=await this.storage.list({prefix:X,maxKeys:cF8,continuationToken:G});for(let J of Y.objects){let K=J.key.slice(X.length);if(K==="")continue;await this.ensureDirs($,K,Z.actor);let W=await this.storage.getBytes(J.key);await this.manifest.putFile({organizationId:this.organizationId,volume:$,path:K,parent:u_(K),contentHash:jI1(W),size:W.byteLength,actor:Z.actor}),Q++}G=Y.isTruncated?Y.nextContinuationToken:void 0}while(G);return Q}async requireFile($,Z){FZ($);let X=UZ(Z),G=await this.manifest.get(this.organizationId,$,X);if(!G||G.kind!=="file")throw new zB(`No such file: ${X}`);return G}async ensureDirs($,Z,X){for(let G of UF(Z))await this.manifest.putDir({organizationId:this.organizationId,volume:$,path:G,parent:u_(G),actor:X})}}var uF8=500,cF8=1000,lF8=524288000,dF8=10737418240,Bu,NJ,zB;var c_=B(()=>{f3();Ou();lS0();Bu=class Bu extends Error{constructor($){super($);this.name="OrgFsQuotaError"}};NJ=class NJ extends Error{constructor($){super($);this.name="OrgFsValidationError"}};zB=class zB extends Error{constructor($){super($);this.name="OrgFsNotFoundError"}}});import{z as tW}from"zod";function wF($){return $.startsWith(PI1)}function OF($){return`${PI1}${$}`}function tF8($){let Z=new Map(nF8.map((X)=>[X.set,X]));if($)try{for(let X of pF8.parse(JSON.parse($)))Z.set(X.set,X)}catch(X){console.warn("[org-fs] invalid ORGFS_PUBLIC_SETS \u2014 using built-in defaults only",X)}return[...Z.values()]}function oQ(){return tF8(n0().orgFsPublicSetsJson)}function Du($){let Z=aG(),X=Z?WJ(Z,oW):new x3(oW,$.baseUrl);return new g3(X,$.storage.orgFsEntries,oW)}var oW="org_orgfs_public_skills",PI1="public-",mF8,iF8,nF8,pF8;var l_=B(()=>{f$();EB();wu();c_();mF8=tW.object({from:tW.string(),to:tW.string().optional()}),iF8=tW.object({set:tW.string().regex(/^[a-z0-9][a-z0-9-]{0,40}$/),repo:tW.string().regex(/^[\w.-]+\/[\w.-]+$/),ref:tW.string().min(1),paths:tW.array(mF8).min(1)}),nF8=[{set:"core",repo:"decocms/studio",ref:"main",paths:[{from:"packages/sandbox/image/skills"}]},{set:"storefront",repo:"decocms/storefront-skills",ref:"main",paths:[{from:".claude-seo/skills"},{from:".claude-performance/skills"},{from:".claude-deco/skills"}]}],pF8=tW.array(iF8).refine(($)=>new Set($.map((Z)=>Z.set)).size===$.length,{message:"duplicate set names"})});import{sql as jB}from"kysely";function dS0($){if($===null)return null;return $ instanceof Date?$.toISOString():String($)}function HJ($){return{organizationId:$.organization_id,volume:$.volume,path:$.path,parent:$.parent,kind:$.kind,contentHash:$.content_hash,size:Number($.size),seq:String($.seq),deletedAt:dS0($.deleted_at),createdBy:$.created_by,createdAt:dS0($.created_at)??"",updatedBy:$.updated_by,updatedAt:dS0($.updated_at)??"",threadId:$.thread_id,readPublic:$.read_public,shareMode:!$.read_public?"private":$.share_password_hash?"password":"public"}}class Eu{db;constructor($){this.db=$}async putFile($){let Z=new Date,X=$.threadId??null,G=await this.db.insertInto("org_fs_entry").values({organization_id:$.organizationId,volume:$.volume,path:$.path,parent:$.parent,kind:"file",content_hash:$.contentHash,size:$.size,deleted_at:null,created_by:$.actor,created_at:Z,updated_by:$.actor,updated_at:Z,thread_id:X}).onConflict((Q)=>Q.columns(["organization_id","volume","path"]).doUpdateSet({kind:"file",content_hash:$.contentHash,size:$.size,deleted_at:null,updated_by:$.actor,updated_at:Z,seq:ye,read_public:jB`case when org_fs_entry.deleted_at is not null then false else org_fs_entry.read_public end`,thread_id:jB`coalesce(cast(${X} as text), org_fs_entry.thread_id)`})).returning(FJ).executeTakeFirstOrThrow();return HJ(G)}async putDir($){let Z=new Date;await this.db.insertInto("org_fs_entry").values({organization_id:$.organizationId,volume:$.volume,path:$.path,parent:$.parent,kind:"dir",content_hash:null,size:0,deleted_at:null,created_by:$.actor,created_at:Z,updated_by:$.actor,updated_at:Z}).onConflict((X)=>X.columns(["organization_id","volume","path"]).where("org_fs_entry.deleted_at","is not",null).doUpdateSet({kind:"dir",content_hash:null,size:0,deleted_at:null,updated_by:$.actor,updated_at:Z,seq:ye,read_public:jB`case when org_fs_entry.deleted_at is not null then false else org_fs_entry.read_public end`})).execute()}async get($,Z,X){let G=await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("path","=",X).where("deleted_at","is",null).select(FJ).executeTakeFirst();return G?HJ(G):null}async listDir($,Z,X){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("parent","=",X).where("deleted_at","is",null).select(FJ).orderBy("path","asc").execute()).map((Q)=>HJ(Q))}async listVolumeDirs($,Z){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","dir").where("deleted_at","is",null).select(FJ).execute()).map((G)=>HJ(G))}async listVolumeFiles($,Z){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","file").where("deleted_at","is",null).select(FJ).execute()).map((G)=>HJ(G))}async listSubtreeFiles($,Z,X){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","file").where("deleted_at","is",null).where("path","like",`${Lu(X)}/%`).select(FJ).execute()).map((Q)=>HJ(Q))}async listSubtreeDirs($,Z,X){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","dir").where("deleted_at","is",null).where("path","like",`${Lu(X)}/%`).select(FJ).execute()).map((Q)=>HJ(Q))}async tombstone($,Z,X,G){await this.db.updateTable("org_fs_entry").set({deleted_at:new Date,updated_by:G,updated_at:new Date,seq:ye}).where("organization_id","=",$).where("volume","=",Z).where("path","=",X).where("deleted_at","is",null).execute()}async tombstoneSubtree($,Z,X,G){await this.db.updateTable("org_fs_entry").set({deleted_at:new Date,updated_by:G,updated_at:new Date,seq:ye}).where("organization_id","=",$).where("volume","=",Z).where("deleted_at","is",null).where((Q)=>Q.or([Q("path","=",X),Q("path","like",`${Lu(X)}/%`)])).execute()}async setShareMode($){let Z=new Date,X=await this.db.updateTable("org_fs_entry").set({read_public:$.readPublic,share_password_hash:$.passwordHash,share_secret:$.shareSecret,updated_by:$.actor,updated_at:Z}).where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("path","=",$.path).where("deleted_at","is",null).returning(FJ).executeTakeFirst();return X?HJ(X):null}async resolveGoverningShare($){if($.candidatePaths.length===0)return null;let Z=await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("read_public","=",!0).where("deleted_at","is",null).where("path","in",$.candidatePaths).select(["path","share_password_hash","share_secret"]).execute();if(Z.length===0)return null;Z.sort((G,Q)=>Q.path.length-G.path.length);let X=Z[0];return{path:X.path,passwordHash:X.share_password_hash,secret:X.share_secret}}async hasPublicAncestorDir($,Z,X){if(X.length===0)return!1;return!!await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","dir").where("read_public","=",!0).where("deleted_at","is",null).where("path","in",X).select("path").limit(1).executeTakeFirst()}async publicDirPaths($){if($.paths.length===0)return[];return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("kind","=","dir").where("read_public","=",!0).where("deleted_at","is",null).where("path","in",$.paths).select("path").execute()).map((X)=>X.path)}async usage($,Z){let X=await this.db.selectFrom("org_fs_entry").where("organization_id","=",$).where("volume","=",Z).where("kind","=","file").where("deleted_at","is",null).select((G)=>[G.fn.countAll().as("files"),G.fn.coalesce(G.fn.sum("size"),jB`0`).as("bytes")]).executeTakeFirst();return{files:Number(X?.files??0),bytes:Number(X?.bytes??0)}}async liveFilePaths($){if($.paths.length===0)return[];return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("kind","=","file").where("deleted_at","is",null).where("path","in",$.paths).select(["path"]).execute()).map((X)=>X.path)}async recentFiles($){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("kind","=","file").where("deleted_at","is",null).select(FJ).orderBy("seq","desc").limit($.limit).execute()).map((X)=>HJ(X))}async searchFiles($){if($.volumes&&$.volumes.length===0)return[];let Z=Lu($.query),X=this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("kind","=","file").where("deleted_at","is",null).where("path","ilike",`%${Z}%`);if($.volumes)X=X.where("volume","in",$.volumes);if($.pathPrefix)X=X.where("path","like",`${Lu($.pathPrefix)}/%`);return(await X.select(FJ).orderBy("seq","desc").limit($.limit).execute()).map((Q)=>HJ(Q))}async changesSince($){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).where("seq",">",jB`cast(${$.sinceSeq} as bigint)`).select(FJ).orderBy("seq","asc").limit($.limit).execute()).map((X)=>HJ(X))}async latestSeq($){return(await this.db.selectFrom("org_fs_entry").where("organization_id","=",$.organizationId).where("volume","=",$.volume).select(jB`max(seq)`.as("seq")).executeTakeFirst())?.seq??"0"}}function Lu($){return $.replace(/[\\%_]/g,"\\$&")}var FJ,ye;var mS0=B(()=>{FJ=["organization_id","volume","path","parent","kind","content_hash","size","seq","deleted_at","created_by","created_at","updated_by","updated_at","thread_id","read_public","share_password_hash"],ye=jB`nextval('org_fs_entry_seq')`});import{createHash as oF8}from"crypto";import{gunzipSync as rF8}from"zlib";function nS0($,Z,X){let G=Z,Q=Z+X;while(G<Q&&$[G]!==0)G++;return new TextDecoder().decode($.subarray(Z,G))}function sF8($,Z,X){let G=nS0($,Z,X).trim();return G===""?0:Number.parseInt(G,8)}function eF8($){let Z=new Map,X=0,G=null,Q=null;while(X+512<=$.length){let Y=$.subarray(X,X+512);if(X+=512,Y.every((U)=>U===0))break;let J=nS0(Y,0,100),K=nS0(Y,345,155);if(K)J=`${K}/${J}`;let W=sF8(Y,124,12),N=String.fromCharCode(Y[156]??0),H=$.subarray(X,X+W);if(X+=Math.ceil(W/512)*512,N==="L"){let U=new TextDecoder().decode(H),w=U.indexOf("\x00");G=w===-1?U:U.slice(0,w);continue}if(N==="x"){let U=new TextDecoder().decode(H);Q=/(?:^|\n)\d+ path=([^\n]*)\n/.exec(U)?.[1]??null;continue}if(N==="g")continue;let F=Q??G??J;if(G=null,Q=null,N==="0"||N==="\x00"||N==="")Z.set(F,new Uint8Array(H))}return Z}async function $U8($,Z){let X=`https://codeload.github.com/${$}/tar.gz/${encodeURIComponent(Z)}`,G=await fetch(X,{signal:AbortSignal.timeout(60000)});if(!G.ok)throw Error(`tarball fetch failed for ${$}@${Z}: HTTP ${G.status}`);let Q=Number(G.headers.get("content-length")??0);if(Q>ge)throw Error(`tarball for ${$}@${Z} declares ${Q} bytes (cap ${ge})`);let Y=new Uint8Array(await G.arrayBuffer());if(Y.length>ge)throw Error(`tarball for ${$}@${Z} exceeds ${ge} bytes`);let J=eF8(new Uint8Array(rF8(Y,{maxOutputLength:aF8}))),K=new Map;for(let[W,N]of J){let H=W.indexOf("/");if(H===-1)continue;let F=W.slice(H+1);if(F)K.set(F,N)}return K}function ZU8($,Z){let X=new Map;for(let{from:G,to:Q}of Z){let Y=G===""?"":`${G.replace(/\/+$/,"")}/`;for(let[J,K]of $){if(!J.startsWith(Y))continue;let W=J.slice(Y.length);if(!W)continue;let N=UZ(Q?`${Q}/${W}`:W);if(N)X.set(N,K)}}return X}function XU8($,Z){let X=new Set;for(let Y of $){let J=Y.split("/");for(let K=1;K<J.length;K++)X.add(J.slice(0,K).join("/"))}let G=[...Z].filter((Y)=>!X.has(Y)).sort((Y,J)=>Y.length-J.length),Q=[];for(let Y of G)if(!Q.some((J)=>Y.startsWith(`${J}/`)))Q.push(Y);return Q}function GU8($){return oF8("sha256").update($).digest("hex")}async function QU8($,Z,X){let G=aG(),Q=G?WJ(G,oW):new x3(oW,X.baseUrl),Y=new Eu($),J=new g3(Q,Y,oW),K=OF(Z.set),W=ZU8(await $U8(Z.repo,Z.ref),Z.paths),N=new Map((await Y.listVolumeFiles(oW,K)).map((O)=>[O.path,O.contentHash]));if(W.size===0&&N.size>0)throw Error(`set "${Z.set}" resolved 0 files from ${Z.repo}@${Z.ref} `+`(check paths config) \u2014 refusing to delete the ${N.size} existing files`);let H=0;for(let O of N.keys()){if(W.has(O))continue;await J.delete(K,O,{actor:iS0}),H++}let F=await Y.listVolumeDirs(oW,K);for(let O of XU8(W.keys(),F.map((D)=>D.path)))await J.delete(K,O,{actor:iS0});let U=0,w=0;for(let[O,D]of W){if(N.get(O)===GU8(D)){w++;continue}await J.write(K,O,D,{actor:iS0,contentType:HZ(O),skipVolumeQuota:!0}),U++}return{set:Z.set,written:U,deleted:H,unchanged:w}}async function pS0($,Z,X){try{return await QU8($,Z,X)}catch(G){return{set:Z.set,error:G instanceof Error?G.message:String(G)}}}async function AI1($,Z){let X=[];for(let G of oQ())X.push(await pS0($,G,Z));return X}var iS0="system:skill-set-sync",ge=209715200,aF8=1073741824;var tS0=B(()=>{mS0();wu();EB();f3();c_();Ou();l_()});import{DBOS as he,SchedulerMode as YU8}from"@dbos-inc/dbos-sdk";function TI1($){oS0=$}function KU8(){if(!oS0)throw Error("[org-fs] public-sets sync runtime not initialized \u2014 setPublicSetsSyncRuntime() must run before the workflow fires");return oS0}async function WU8($,Z){for(let X of oQ()){let G=await he.runStep(()=>{let Q=KU8();return pS0(Q.db,X,{baseUrl:Q.baseUrl})},{name:`syncPublicSet:${X.set}`});if("error"in G)console.warn(`[org-fs] public set "${G.set}" sync failed: ${G.error}`);else if(G.written||G.deleted)console.log(`[org-fs] public set "${G.set}" synced: +${G.written} -${G.deleted} (=${G.unchanged})`)}}function RI1(){if(zu)return;zu=he.registerWorkflow(WU8,{name:"publicSetsSyncWorkflow"}),he.registerScheduled(zu,{name:"publicSetsSyncWorkflow",crontab:JU8,mode:YU8.ExactlyOncePerIntervalWhenActive})}async function II1(){if(oQ().length===0||!zu)return;let $=new Date,Z=`public-sets-sync-boot:${$.toISOString().slice(0,13)}`;await he.startWorkflow(zu,{workflowID:Z})($,$)}var JU8="4-59/10 * * * *",oS0=null,zu=null;var qI1=B(()=>{l_();tS0()});function L9(){let $=n0();if($.baseUrl)return $.baseUrl;return`http://localhost:${$.port??3000}`}function MI1(){return`http://localhost:${n0().port??3000}`}function nX(){return n0().publicUrl??L9()}var wZ=B(()=>{f$()});import{z as z$}from"zod";var NU8,HU8,FU8,UU8,wU8,OU8,BU8,DU8,LU8,EU8,zU8,jU8,PB;var ju=B(()=>{NU8=z$.object({prefix:z$.string().optional().describe("Filter objects by prefix (e.g., 'folder/' for folder contents)"),maxKeys:z$.number().optional().default(1000).describe("Maximum number of keys to return (default: 1000)"),continuationToken:z$.string().optional().describe("Token for pagination from previous response"),delimiter:z$.string().optional().describe("Delimiter for grouping keys (typically '/'). When set, commonPrefixes returns folder paths.")}),HU8=z$.object({objects:z$.array(z$.object({key:z$.string().describe("Object key/path"),size:z$.number().describe("Object size in bytes"),lastModified:z$.string().describe("Last modified timestamp"),etag:z$.string().describe("Entity tag for the object")})),nextContinuationToken:z$.string().optional().describe("Token for fetching next page of results"),isTruncated:z$.boolean().describe("Whether there are more results available"),commonPrefixes:z$.array(z$.string()).optional().describe("Folder paths when delimiter is used (e.g., ['photos/2024/', 'photos/2025/'])")}),FU8=z$.object({key:z$.string().describe("Object key/path to get metadata for")}),UU8=z$.object({contentType:z$.string().optional().describe("MIME type of the object"),contentLength:z$.number().describe("Size of the object in bytes"),lastModified:z$.string().describe("Last modified timestamp"),etag:z$.string().describe("Entity tag for the object"),metadata:z$.record(z$.string(),z$.string()).optional().describe("Custom metadata key-value pairs")}),wU8=z$.object({key:z$.string().describe("Object key/path to generate URL for"),expiresIn:z$.number().optional().describe("URL expiration time in seconds (default: from state config or 3600)")}),OU8=z$.object({url:z$.string().describe("Presigned URL for downloading the object"),expiresIn:z$.number().describe("Expiration time in seconds that was used")}),BU8=z$.object({key:z$.string().describe("Object key/path for the upload"),expiresIn:z$.number().optional().describe("URL expiration time in seconds (default: from state config or 3600)"),contentType:z$.string().optional().describe("MIME type for the object being uploaded")}),DU8=z$.object({url:z$.string().describe("Presigned URL for uploading the object"),expiresIn:z$.number().describe("Expiration time in seconds that was used")}),LU8=z$.object({key:z$.string().describe("Object key/path to delete")}),EU8=z$.object({success:z$.boolean().describe("Whether the deletion was successful"),key:z$.string().describe("The key that was deleted")}),zU8=z$.object({keys:z$.array(z$.string()).max(1000).describe("Array of object keys/paths to delete (max 1000)")}),jU8=z$.object({deleted:z$.array(z$.string()).describe("Array of successfully deleted keys"),errors:z$.array(z$.object({key:z$.string(),message:z$.string()})).describe("Array of errors for failed deletions")}),PB=[{name:"LIST_OBJECTS",inputSchema:NU8,outputSchema:HU8},{name:"GET_OBJECT_METADATA",inputSchema:FU8,outputSchema:UU8},{name:"GET_PRESIGNED_URL",inputSchema:wU8,outputSchema:OU8},{name:"PUT_PRESIGNED_URL",inputSchema:BU8,outputSchema:DU8},{name:"DELETE_OBJECT",inputSchema:LU8,outputSchema:EU8},{name:"DELETE_OBJECTS",inputSchema:zU8,outputSchema:jU8}]});import*as v from"zod/v4";function dI1($){if($.params.ref.type!=="ref/prompt")throw TypeError(`Expected CompleteRequestPrompt, but got ${$.params.ref.type}`)}function mI1($){if($.params.ref.type!=="ref/resource")throw TypeError(`Expected CompleteRequestResourceTemplate, but got ${$.params.ref.type}`)}var BF="2025-11-25",kI1="2025-03-26",DF,LF="io.modelcontextprotocol/related-task",ce="2.0",u9,SI1,VI1,ij6,PU8,AU8,rS0,sG,Pu,CI1=($)=>Pu.safeParse($).success,cZ,rQ,aQ,lZ,le,_I1,h3=($)=>_I1.safeParse($).success,vI1,bI1=($)=>vI1.safeParse($).success,aS0,UJ=($)=>aS0.safeParse($).success,T1,sS0,m_=($)=>sS0.safeParse($).success,eG,nj6,rW,TU8,de,RU8,Au,d_,fI1,IU8,qU8,MU8,kU8,SU8,VU8,me,eS0=($)=>me.safeParse($).success,CU8,$V0,ie,xI1=($)=>ie.safeParse($).success,ne,_U8,vU8,pe,bU8,Tu,Ru,fU8,Iu,aW,xU8,qu,te,oe,re,pj6,ae,se,ee,yI1,gI1,hI1,ZV0,uI1,Mu,i_,cI1,yU8,EF,XV0,zF,GV0,QV0,gU8,n_,YV0,JV0,hU8,uU8,cU8,lU8,dU8,mU8,iU8,nU8,jF,KV0,pU8,p_,WV0,NV0,HV0,tU8,oU8,rU8,FV0,aU8,UV0,wV0,sU8,eU8,$00,t_,ku,u3,tj6,$w8,PF,OV0,lI1,Su,Zw8,BV0,Xw8,Gw8,Qw8,Yw8,Jw8,Kw8,Ww8,ue,Nw8,Hw8,DV0,AB,Vu,Fw8,Uw8,ww8,Ow8,Bw8,Dw8,Lw8,Ew8,zw8,jw8,Pw8,Aw8,Tw8,Rw8,Iw8,LV0,qw8,Mw8,AF,kw8,Sw8,Vw8,Z00,EV0,Cw8,_w8,zV0,vw8,oj6,rj6,aj6,sj6,ej6,$P6,O1,iI1;var h5=B(()=>{DF=[BF,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],u9=v.custom(($)=>$!==null&&(typeof $==="object"||typeof $==="function")),SI1=v.union([v.string(),v.number().int()]),VI1=v.string(),ij6=v.looseObject({ttl:v.number().optional(),pollInterval:v.number().optional()}),PU8=v.object({ttl:v.number().optional()}),AU8=v.object({taskId:v.string()}),rS0=v.looseObject({progressToken:SI1.optional(),[LF]:AU8.optional()}),sG=v.object({_meta:rS0.optional()}),Pu=sG.extend({task:PU8.optional()}),cZ=v.object({method:v.string(),params:sG.loose().optional()}),rQ=v.object({_meta:rS0.optional()}),aQ=v.object({method:v.string(),params:rQ.loose().optional()}),lZ=v.looseObject({_meta:rS0.optional()}),le=v.union([v.string(),v.number().int()]),_I1=v.object({jsonrpc:v.literal(ce),id:le,...cZ.shape}).strict(),vI1=v.object({jsonrpc:v.literal(ce),...aQ.shape}).strict(),aS0=v.object({jsonrpc:v.literal(ce),id:le,result:lZ}).strict();(function($){$[$.ConnectionClosed=-32000]="ConnectionClosed",$[$.RequestTimeout=-32001]="RequestTimeout",$[$.ParseError=-32700]="ParseError",$[$.InvalidRequest=-32600]="InvalidRequest",$[$.MethodNotFound=-32601]="MethodNotFound",$[$.InvalidParams=-32602]="InvalidParams",$[$.InternalError=-32603]="InternalError",$[$.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(T1||(T1={}));sS0=v.object({jsonrpc:v.literal(ce),id:le.optional(),error:v.object({code:v.number().int(),message:v.string(),data:v.unknown().optional()})}).strict(),eG=v.union([_I1,vI1,aS0,sS0]),nj6=v.union([aS0,sS0]),rW=lZ.strict(),TU8=rQ.extend({requestId:le.optional(),reason:v.string().optional()}),de=aQ.extend({method:v.literal("notifications/cancelled"),params:TU8}),RU8=v.object({src:v.string(),mimeType:v.string().optional(),sizes:v.array(v.string()).optional(),theme:v.enum(["light","dark"]).optional()}),Au=v.object({icons:v.array(RU8).optional()}),d_=v.object({name:v.string(),title:v.string().optional()}),fI1=d_.extend({...d_.shape,...Au.shape,version:v.string(),websiteUrl:v.string().optional(),description:v.string().optional()}),IU8=v.intersection(v.object({applyDefaults:v.boolean().optional()}),v.record(v.string(),v.unknown())),qU8=v.preprocess(($)=>{if($&&typeof $==="object"&&!Array.isArray($)){if(Object.keys($).length===0)return{form:{}}}return $},v.intersection(v.object({form:IU8.optional(),url:u9.optional()}),v.record(v.string(),v.unknown()).optional())),MU8=v.looseObject({list:u9.optional(),cancel:u9.optional(),requests:v.looseObject({sampling:v.looseObject({createMessage:u9.optional()}).optional(),elicitation:v.looseObject({create:u9.optional()}).optional()}).optional()}),kU8=v.looseObject({list:u9.optional(),cancel:u9.optional(),requests:v.looseObject({tools:v.looseObject({call:u9.optional()}).optional()}).optional()}),SU8=v.object({experimental:v.record(v.string(),u9).optional(),sampling:v.object({context:u9.optional(),tools:u9.optional()}).optional(),elicitation:qU8.optional(),roots:v.object({listChanged:v.boolean().optional()}).optional(),tasks:MU8.optional(),extensions:v.record(v.string(),u9).optional()}),VU8=sG.extend({protocolVersion:v.string(),capabilities:SU8,clientInfo:fI1}),me=cZ.extend({method:v.literal("initialize"),params:VU8}),CU8=v.object({experimental:v.record(v.string(),u9).optional(),logging:u9.optional(),completions:u9.optional(),prompts:v.object({listChanged:v.boolean().optional()}).optional(),resources:v.object({subscribe:v.boolean().optional(),listChanged:v.boolean().optional()}).optional(),tools:v.object({listChanged:v.boolean().optional()}).optional(),tasks:kU8.optional(),extensions:v.record(v.string(),u9).optional()}),$V0=lZ.extend({protocolVersion:v.string(),capabilities:CU8,serverInfo:fI1,instructions:v.string().optional()}),ie=aQ.extend({method:v.literal("notifications/initialized"),params:rQ.optional()}),ne=cZ.extend({method:v.literal("ping"),params:sG.optional()}),_U8=v.object({progress:v.number(),total:v.optional(v.number()),message:v.optional(v.string())}),vU8=v.object({...rQ.shape,..._U8.shape,progressToken:SI1}),pe=aQ.extend({method:v.literal("notifications/progress"),params:vU8}),bU8=sG.extend({cursor:VI1.optional()}),Tu=cZ.extend({params:bU8.optional()}),Ru=lZ.extend({nextCursor:VI1.optional()}),fU8=v.enum(["working","input_required","completed","failed","cancelled"]),Iu=v.object({taskId:v.string(),status:fU8,ttl:v.union([v.number(),v.null()]),createdAt:v.string(),lastUpdatedAt:v.string(),pollInterval:v.optional(v.number()),statusMessage:v.optional(v.string())}),aW=lZ.extend({task:Iu}),xU8=rQ.merge(Iu),qu=aQ.extend({method:v.literal("notifications/tasks/status"),params:xU8}),te=cZ.extend({method:v.literal("tasks/get"),params:sG.extend({taskId:v.string()})}),oe=lZ.merge(Iu),re=cZ.extend({method:v.literal("tasks/result"),params:sG.extend({taskId:v.string()})}),pj6=lZ.loose(),ae=Tu.extend({method:v.literal("tasks/list")}),se=Ru.extend({tasks:v.array(Iu)}),ee=cZ.extend({method:v.literal("tasks/cancel"),params:sG.extend({taskId:v.string()})}),yI1=lZ.merge(Iu),gI1=v.object({uri:v.string(),mimeType:v.optional(v.string()),_meta:v.record(v.string(),v.unknown()).optional()}),hI1=gI1.extend({text:v.string()}),ZV0=v.string().refine(($)=>{try{return atob($),!0}catch{return!1}},{message:"Invalid Base64 string"}),uI1=gI1.extend({blob:ZV0}),Mu=v.enum(["user","assistant"]),i_=v.object({audience:v.array(Mu).optional(),priority:v.number().min(0).max(1).optional(),lastModified:v.iso.datetime({offset:!0}).optional()}),cI1=v.object({...d_.shape,...Au.shape,uri:v.string(),description:v.optional(v.string()),mimeType:v.optional(v.string()),size:v.optional(v.number()),annotations:i_.optional(),_meta:v.optional(v.looseObject({}))}),yU8=v.object({...d_.shape,...Au.shape,uriTemplate:v.string(),description:v.optional(v.string()),mimeType:v.optional(v.string()),annotations:i_.optional(),_meta:v.optional(v.looseObject({}))}),EF=Tu.extend({method:v.literal("resources/list")}),XV0=Ru.extend({resources:v.array(cI1)}),zF=Tu.extend({method:v.literal("resources/templates/list")}),GV0=Ru.extend({resourceTemplates:v.array(yU8)}),QV0=sG.extend({uri:v.string()}),gU8=QV0,n_=cZ.extend({method:v.literal("resources/read"),params:gU8}),YV0=lZ.extend({contents:v.array(v.union([hI1,uI1]))}),JV0=aQ.extend({method:v.literal("notifications/resources/list_changed"),params:rQ.optional()}),hU8=QV0,uU8=cZ.extend({method:v.literal("resources/subscribe"),params:hU8}),cU8=QV0,lU8=cZ.extend({method:v.literal("resources/unsubscribe"),params:cU8}),dU8=rQ.extend({uri:v.string()}),mU8=aQ.extend({method:v.literal("notifications/resources/updated"),params:dU8}),iU8=v.object({name:v.string(),description:v.optional(v.string()),required:v.optional(v.boolean())}),nU8=v.object({...d_.shape,...Au.shape,description:v.optional(v.string()),arguments:v.optional(v.array(iU8)),_meta:v.optional(v.looseObject({}))}),jF=Tu.extend({method:v.literal("prompts/list")}),KV0=Ru.extend({prompts:v.array(nU8)}),pU8=sG.extend({name:v.string(),arguments:v.record(v.string(),v.string()).optional()}),p_=cZ.extend({method:v.literal("prompts/get"),params:pU8}),WV0=v.object({type:v.literal("text"),text:v.string(),annotations:i_.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),NV0=v.object({type:v.literal("image"),data:ZV0,mimeType:v.string(),annotations:i_.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),HV0=v.object({type:v.literal("audio"),data:ZV0,mimeType:v.string(),annotations:i_.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),tU8=v.object({type:v.literal("tool_use"),name:v.string(),id:v.string(),input:v.record(v.string(),v.unknown()),_meta:v.record(v.string(),v.unknown()).optional()}),oU8=v.object({type:v.literal("resource"),resource:v.union([hI1,uI1]),annotations:i_.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),rU8=cI1.extend({type:v.literal("resource_link")}),FV0=v.union([WV0,NV0,HV0,rU8,oU8]),aU8=v.object({role:Mu,content:FV0}),UV0=lZ.extend({description:v.string().optional(),messages:v.array(aU8)}),wV0=aQ.extend({method:v.literal("notifications/prompts/list_changed"),params:rQ.optional()}),sU8=v.object({title:v.string().optional(),readOnlyHint:v.boolean().optional(),destructiveHint:v.boolean().optional(),idempotentHint:v.boolean().optional(),openWorldHint:v.boolean().optional()}),eU8=v.object({taskSupport:v.enum(["required","optional","forbidden"]).optional()}),$00=v.object({...d_.shape,...Au.shape,description:v.string().optional(),inputSchema:v.object({type:v.literal("object"),properties:v.record(v.string(),u9).optional(),required:v.array(v.string()).optional()}).catchall(v.unknown()),outputSchema:v.object({type:v.literal("object"),properties:v.record(v.string(),u9).optional(),required:v.array(v.string()).optional()}).catchall(v.unknown()).optional(),annotations:sU8.optional(),execution:eU8.optional(),_meta:v.record(v.string(),v.unknown()).optional()}),t_=Tu.extend({method:v.literal("tools/list")}),ku=Ru.extend({tools:v.array($00)}),u3=lZ.extend({content:v.array(FV0).default([]),structuredContent:v.record(v.string(),v.unknown()).optional(),isError:v.boolean().optional()}),tj6=u3.or(lZ.extend({toolResult:v.unknown()})),$w8=Pu.extend({name:v.string(),arguments:v.record(v.string(),v.unknown()).optional()}),PF=cZ.extend({method:v.literal("tools/call"),params:$w8}),OV0=aQ.extend({method:v.literal("notifications/tools/list_changed"),params:rQ.optional()}),lI1=v.object({autoRefresh:v.boolean().default(!0),debounceMs:v.number().int().nonnegative().default(300)}),Su=v.enum(["debug","info","notice","warning","error","critical","alert","emergency"]),Zw8=sG.extend({level:Su}),BV0=cZ.extend({method:v.literal("logging/setLevel"),params:Zw8}),Xw8=rQ.extend({level:Su,logger:v.string().optional(),data:v.unknown()}),Gw8=aQ.extend({method:v.literal("notifications/message"),params:Xw8}),Qw8=v.object({name:v.string().optional()}),Yw8=v.object({hints:v.array(Qw8).optional(),costPriority:v.number().min(0).max(1).optional(),speedPriority:v.number().min(0).max(1).optional(),intelligencePriority:v.number().min(0).max(1).optional()}),Jw8=v.object({mode:v.enum(["auto","required","none"]).optional()}),Kw8=v.object({type:v.literal("tool_result"),toolUseId:v.string().describe("The unique identifier for the corresponding tool call."),content:v.array(FV0).default([]),structuredContent:v.object({}).loose().optional(),isError:v.boolean().optional(),_meta:v.record(v.string(),v.unknown()).optional()}),Ww8=v.discriminatedUnion("type",[WV0,NV0,HV0]),ue=v.discriminatedUnion("type",[WV0,NV0,HV0,tU8,Kw8]),Nw8=v.object({role:Mu,content:v.union([ue,v.array(ue)]),_meta:v.record(v.string(),v.unknown()).optional()}),Hw8=Pu.extend({messages:v.array(Nw8),modelPreferences:Yw8.optional(),systemPrompt:v.string().optional(),includeContext:v.enum(["none","thisServer","allServers"]).optional(),temperature:v.number().optional(),maxTokens:v.number().int(),stopSequences:v.array(v.string()).optional(),metadata:u9.optional(),tools:v.array($00).optional(),toolChoice:Jw8.optional()}),DV0=cZ.extend({method:v.literal("sampling/createMessage"),params:Hw8}),AB=lZ.extend({model:v.string(),stopReason:v.optional(v.enum(["endTurn","stopSequence","maxTokens"]).or(v.string())),role:Mu,content:Ww8}),Vu=lZ.extend({model:v.string(),stopReason:v.optional(v.enum(["endTurn","stopSequence","maxTokens","toolUse"]).or(v.string())),role:Mu,content:v.union([ue,v.array(ue)])}),Fw8=v.object({type:v.literal("boolean"),title:v.string().optional(),description:v.string().optional(),default:v.boolean().optional()}),Uw8=v.object({type:v.literal("string"),title:v.string().optional(),description:v.string().optional(),minLength:v.number().optional(),maxLength:v.number().optional(),format:v.enum(["email","uri","date","date-time"]).optional(),default:v.string().optional()}),ww8=v.object({type:v.enum(["number","integer"]),title:v.string().optional(),description:v.string().optional(),minimum:v.number().optional(),maximum:v.number().optional(),default:v.number().optional()}),Ow8=v.object({type:v.literal("string"),title:v.string().optional(),description:v.string().optional(),enum:v.array(v.string()),default:v.string().optional()}),Bw8=v.object({type:v.literal("string"),title:v.string().optional(),description:v.string().optional(),oneOf:v.array(v.object({const:v.string(),title:v.string()})),default:v.string().optional()}),Dw8=v.object({type:v.literal("string"),title:v.string().optional(),description:v.string().optional(),enum:v.array(v.string()),enumNames:v.array(v.string()).optional(),default:v.string().optional()}),Lw8=v.union([Ow8,Bw8]),Ew8=v.object({type:v.literal("array"),title:v.string().optional(),description:v.string().optional(),minItems:v.number().optional(),maxItems:v.number().optional(),items:v.object({type:v.literal("string"),enum:v.array(v.string())}),default:v.array(v.string()).optional()}),zw8=v.object({type:v.literal("array"),title:v.string().optional(),description:v.string().optional(),minItems:v.number().optional(),maxItems:v.number().optional(),items:v.object({anyOf:v.array(v.object({const:v.string(),title:v.string()}))}),default:v.array(v.string()).optional()}),jw8=v.union([Ew8,zw8]),Pw8=v.union([Dw8,Lw8,jw8]),Aw8=v.union([Pw8,Fw8,Uw8,ww8]),Tw8=Pu.extend({mode:v.literal("form").optional(),message:v.string(),requestedSchema:v.object({type:v.literal("object"),properties:v.record(v.string(),Aw8),required:v.array(v.string()).optional()})}),Rw8=Pu.extend({mode:v.literal("url"),message:v.string(),elicitationId:v.string(),url:v.string().url()}),Iw8=v.union([Tw8,Rw8]),LV0=cZ.extend({method:v.literal("elicitation/create"),params:Iw8}),qw8=rQ.extend({elicitationId:v.string()}),Mw8=aQ.extend({method:v.literal("notifications/elicitation/complete"),params:qw8}),AF=lZ.extend({action:v.enum(["accept","decline","cancel"]),content:v.preprocess(($)=>$===null?void 0:$,v.record(v.string(),v.union([v.string(),v.number(),v.boolean(),v.array(v.string())])).optional())}),kw8=v.object({type:v.literal("ref/resource"),uri:v.string()}),Sw8=v.object({type:v.literal("ref/prompt"),name:v.string()}),Vw8=sG.extend({ref:v.union([Sw8,kw8]),argument:v.object({name:v.string(),value:v.string()}),context:v.object({arguments:v.record(v.string(),v.string()).optional()}).optional()}),Z00=cZ.extend({method:v.literal("completion/complete"),params:Vw8});EV0=lZ.extend({completion:v.looseObject({values:v.array(v.string()).max(100),total:v.optional(v.number().int()),hasMore:v.optional(v.boolean())})}),Cw8=v.object({uri:v.string().startsWith("file://"),name:v.string().optional(),_meta:v.record(v.string(),v.unknown()).optional()}),_w8=cZ.extend({method:v.literal("roots/list"),params:sG.optional()}),zV0=lZ.extend({roots:v.array(Cw8)}),vw8=aQ.extend({method:v.literal("notifications/roots/list_changed"),params:rQ.optional()}),oj6=v.union([ne,me,Z00,BV0,p_,jF,EF,zF,n_,uU8,lU8,PF,t_,te,re,ae,ee]),rj6=v.union([de,pe,ie,vw8,qu]),aj6=v.union([rW,AB,Vu,AF,zV0,oe,se,aW]),sj6=v.union([ne,DV0,LV0,_w8,te,re,ae,ee]),ej6=v.union([de,pe,Gw8,mU8,JV0,OV0,wV0,qu,Mw8]),$P6=v.union([rW,$V0,EV0,UV0,KV0,XV0,GV0,YV0,u3,ku,oe,se,aW]);O1=class O1 extends Error{constructor($,Z,X){super(`MCP error ${$}: ${Z}`);this.code=$,this.data=X,this.name="McpError"}static fromError($,Z,X){if($===T1.UrlElicitationRequired&&X){let G=X;if(G.elicitations)return new iI1(G.elicitations,Z)}return new O1($,Z,X)}};iI1=class iI1 extends O1{constructor($,Z=`URL elicitation${$.length>1?"s":""} required`){super(T1.UrlElicitationRequired,Z,{elicitations:$})}get elicitations(){return this.data?.elicitations??[]}}});import{z as H$}from"zod";function c3($){return $!==null&&$!==void 0&&"command"in $}function o_($){if(!$||!$.startsWith("virtual://"))return null;return $.replace("virtual://","")}function r_($){return`virtual://${$}`}var bw8,nI1,fw8,xw8,yw8,j7,X00,G00;var pI1=B(()=>{h5();bw8=H$.object({authorizationEndpoint:H$.string().url(),tokenEndpoint:H$.string().url(),introspectionEndpoint:H$.string().url().optional(),clientId:H$.string(),clientSecret:H$.string().optional(),scopes:H$.array(H$.string()),grantType:H$.enum(["authorization_code","client_credentials"])}),nI1=H$.object({type:H$.literal("object"),properties:H$.record(H$.string(),H$.unknown()).optional(),required:H$.array(H$.string()).optional()}).catchall(H$.unknown()),fw8=$00.extend({inputSchema:nI1,outputSchema:nI1.optional()}),xw8=H$.object({headers:H$.record(H$.string(),H$.string()).optional()}),yw8=H$.object({command:H$.string().describe("Command to run (e.g., 'npx', 'node')"),args:H$.array(H$.string()).optional().describe("Command arguments"),cwd:H$.string().optional().describe("Working directory"),envVars:H$.record(H$.string(),H$.string()).optional().describe("Environment variables (encrypted in storage)")}),j7=H$.object({id:H$.string().describe("Unique identifier for the connection"),title:H$.string().describe("Human-readable name for the connection"),created_at:H$.string().describe("When the connection was created"),updated_at:H$.string().describe("When the connection was last updated"),created_by:H$.string().describe("User ID who created the connection"),updated_by:H$.string().optional().describe("User ID who last updated the connection"),organization_id:H$.string().describe("Organization ID this connection belongs to"),description:H$.string().nullable().describe("Description of the connection"),icon:H$.string().nullable().describe("Icon URL for the connection"),app_name:H$.string().nullable().describe("Associated app name"),app_id:H$.string().nullable().describe("Associated app ID"),slug:H$.string().nullable().optional().describe("URL-safe slug derived from app_name, connection_url, or title"),connection_type:H$.enum(["HTTP","SSE","Websocket","STDIO","VIRTUAL"]).describe("Type of connection"),connection_url:H$.string().nullable().describe("URL for HTTP/SSE/WebSocket connections. virtual://$id for VIRTUAL. Null for STDIO."),connection_token:H$.string().nullable().describe("Authentication token (for HTTP connections)"),connection_headers:H$.union([yw8,xw8]).nullable().describe("Connection parameters. HTTP: { headers }. STDIO: { command, args, cwd, envVars }"),oauth_config:bw8.nullable().describe("OAuth configuration"),configuration_state:H$.record(H$.string(),H$.unknown()).nullable().describe("Configuration state (decrypted)"),configuration_scopes:H$.array(H$.string()).nullable().optional().describe("Configuration scopes"),metadata:H$.record(H$.string(),H$.unknown()).nullable().describe("Additional metadata (includes repository info)"),tools:H$.array(fw8).nullable().describe("Discovered tools from MCP"),bindings:H$.array(H$.string()).nullable().describe("Detected bindings"),status:H$.enum(["active","inactive","error"]).describe("Current status")}),X00=j7.omit({created_at:!0,updated_at:!0,created_by:!0,updated_by:!0,organization_id:!0,tools:!0,bindings:!0,status:!0}).partial({id:!0,description:!0,icon:!0,app_name:!0,app_id:!0,connection_url:!0,connection_token:!0,connection_headers:!0,oauth_config:!0,configuration_state:!0,configuration_scopes:!0,metadata:!0}).extend({icon:H$.string().nullish()}),G00=j7.partial()});import{z as I0}from"zod";function PV0($){let Z=$?.homeTiles;if(Array.isArray(Z)&&Z.length>0)return Z;let X=$?.homeTile;return X?[X]:[]}function RV0($){return $==="cluster"?"agent-sandbox":$}function Z21($){let Z=dw8.parse($);return IV0.parse({...Z,sandboxProviderKind:Z.sandboxProviderKind?RV0(Z.sandboxProviderKind):void 0})}function wJ($){if(!$||typeof $!=="object"||Array.isArray($))return{};let Z=$,X={};for(let[G,Q]of Object.entries(Z)){if(!Q||typeof Q!=="object")continue;if(G!=="cluster"&&G!=="agent-sandbox"&&G!=="user-desktop")continue;let Y=RV0(G);try{if(G==="cluster"&&X[Y])continue;X[Y]=Z21(Q)}catch{}}return X}function qV0($){if(!$||typeof $!=="object"||Array.isArray($))return{};let Z={};for(let[X,G]of Object.entries($)){if(!G||typeof G!=="object"||Array.isArray(G))continue;let Q={};for(let[Y,J]of Object.entries(G)){let K=wJ(J);if(Object.keys(K).length>0)Q[Y]=K}if(Object.keys(Q).length>0)Z[X]=Q}return Z}var Cu,rI1,gw8,aI1,sI1,tI1,jV0,Q00,oI1,hw8,eI1,uw8,AV0,TV0,cw8,lw8,$21,IV0,dw8,Y00,mw8,MV0,iw8,kV0,P7,SV0,J00,K00;var X21=B(()=>{Cu=I0.object({connection_id:I0.string().describe("Connection ID"),selected_tools:I0.array(I0.string()).nullable().describe("Selected tool names. null = all tools included, array = only these tools included"),selected_resources:I0.array(I0.string()).nullable().describe("Selected resource URIs or patterns. Supports * and ** wildcards for pattern matching. null = all resources included, array = only these resources included"),selected_prompts:I0.array(I0.string()).nullable().describe("Selected prompt names. null = all prompts included, array = only these prompts included")}),rI1=Cu.extend({selected_tools:Cu.shape.selected_tools.optional(),selected_resources:Cu.shape.selected_resources.optional(),selected_prompts:Cu.shape.selected_prompts.optional()}),gw8=I0.object({connectionId:I0.string(),toolName:I0.string(),label:I0.string(),icon:I0.string().nullable().optional()}),aI1=I0.object({id:I0.string().describe("Stable id; used as React key and ?tab= value"),title:I0.string().describe("Tab label"),icon:I0.string().optional().describe("Optional lucide icon name"),view:I0.object({type:I0.literal("ext-app"),appId:I0.string(),args:I0.record(I0.string(),I0.unknown()).optional()})}),sI1=I0.object({defaultMainView:I0.object({type:I0.string(),id:I0.string().optional(),toolName:I0.string().optional()}).nullable().optional(),chatDefaultOpen:I0.boolean().nullable().optional(),cmsDefaultOpen:I0.boolean().nullable().optional(),tabs:I0.array(aI1).optional()}),tI1=I0.object({tileId:I0.string().optional(),connectionId:I0.string().optional().describe("Connection that owns the resource \u2014 the host opens a direct MCP client to this connection so the iframe can call tools by their bare names."),resourceUri:I0.string().describe("ui:// resource URI exposed by `connectionId`. Read on the home page and rendered via MCPAppRenderer."),toolName:I0.string().optional().describe("Tool name \u2014 identifies which tool's inputSchema to display when editing tile props."),toolInput:I0.record(I0.string(),I0.unknown()).optional().describe("User-configured input props passed to MCPAppRenderer when rendering the tile."),minHeight:I0.number().int().positive().optional(),maxHeight:I0.number().int().positive().optional()}),jV0=I0.object({banner:I0.string().nullable().optional(),bannerColor:I0.string().nullable().optional(),icon:I0.string().nullable().optional(),themeColor:I0.string().nullable().optional(),pinnedViews:I0.array(gw8).nullable().optional(),layout:sI1.nullable().optional(),homeTile:tI1.nullable().optional(),homeTiles:I0.array(tI1).nullable().optional(),homePrompts:I0.array(I0.string()).nullable().optional()});Q00=/^[A-Za-z_][A-Za-z0-9_]*$/,oI1=I0.string().min(1).regex(Q00,{message:"Env var key must start with a letter or underscore and contain only letters, digits, and underscores."}),hw8=I0.discriminatedUnion("kind",[I0.object({key:oI1,kind:I0.literal("literal"),value:I0.string()}),I0.object({key:oI1,kind:I0.literal("secret"),secretId:I0.string().min(1)})]),eI1=/^[a-zA-Z0-9.-]+(?::[0-9]+)?$/,uw8=I0.object({host:I0.string().min(1).regex(eI1).describe("Submodule host, e.g. 'github.com' (bare hostname, no scheme)."),secretId:I0.string().min(1).describe("Vault secret id holding the PAT used to fetch this host.")}),AV0=I0.object({selected:I0.string().nullable().optional().describe("User-selected package manager (npm | pnpm | yarn | bun | deno). Null/absent means autodetect on next SANDBOX_START."),port:I0.string().nullable().optional().describe("User-selected dev server port as a string (allows '' / null for unset). Null/absent means autodetect."),path:I0.string().nullable().optional().describe("Optional path (relative to repo root) to the directory containing package.json. Null/absent means repo root. Forwarded as `application.packageManager.path` to the daemon config."),env:I0.array(hw8).nullable().optional().describe("Env vars injected on every SANDBOX_START. Literal entries inline their value; secret entries store a secretId that Studio resolves via the credential vault before posting /_sandbox/config."),submoduleCredentials:I0.array(uw8).nullable().optional().describe("Git submodule credentials injected on every SANDBOX_START. Each entry maps a host to a vault secret (PAT) that Studio resolves before posting /_sandbox/config; the daemon uses it to authenticate `git submodule update` for submodules on that host.")}),TV0=I0.object({url:I0.string().describe("GitHub repository URL"),owner:I0.string().describe("Repository owner"),name:I0.string().describe("Repository name"),installationId:I0.number().optional().describe("GitHub App installation ID. Absent when the repo was linked without a GitHub connection (public-clone mode)."),connectionId:I0.string().optional().describe("ID of the mcp-github connection used for authentication. Absent for public repos cloned without credentials.")}),cw8=I0.enum(["agent-sandbox","user-desktop"]),lw8=I0.enum(["agent-sandbox","user-desktop","cluster"]);$21={sandboxHandle:I0.string().describe("Provider-specific handle"),previewUrl:I0.string().nullable().describe("URL where the sandbox's iframe-proxied UI is served, or null when the sandbox has no dev server (blank / tool sandboxes)."),sandboxApiUrl:I0.string().nullable().optional().describe("Daemon's public URL \u2014 what cluster\u2192daemon RPCs target. Equal to previewUrl for user-desktop; null/absent for the agent-sandbox provider (routes through hosted ingress)."),sandboxProviderKind:cw8.optional(),createdAt:I0.number().optional().describe("Epoch ms the entry was first written by SANDBOX_START. Used by the booting overlay to show a stable elapsed timer that survives browser reloads. Optional for backward compatibility with entries written before this field existed."),startedWith:I0.object({packageManager:I0.string().nullable().optional().describe("metadata.runtime.selected at the time of SANDBOX_START"),port:I0.string().nullable().optional().describe("metadata.runtime.port at the time of SANDBOX_START"),path:I0.string().nullable().optional().describe("metadata.runtime.path at the time of SANDBOX_START")}).optional().describe("Snapshot of metadata.runtime fields (selected/port/path) used at SANDBOX_START. The Preview tab compares the live metadata.runtime against this to decide if a restart is required to apply changes.")},IV0=I0.object($21),dw8=I0.object({...$21,sandboxProviderKind:lw8.optional()});Y00=I0.record(I0.string().describe("userId"),I0.record(I0.string().describe("branch"),I0.record(I0.string().describe("sandboxProviderKind"),IV0)));mw8=I0.object({id:I0.string().describe("Stable identifier for this knowledge file"),name:I0.string().describe("File name shown in the UI"),kind:I0.enum(["file","skill"]).optional().describe("'file' (a single document) or 'skill' (a Claude Code skill folder containing SKILL.md). Defaults to 'file'."),volume:I0.string().describe("Org filesystem (Library) volume the file lives in"),path:I0.string().describe("Path within the volume"),url:I0.string().describe("Same-origin URL to read the file (display/download)"),contentType:I0.string().nullable().optional().describe("MIME type, used to decide whether to inline the content"),size:I0.number().nullable().optional().describe("File size in bytes"),addedAt:I0.string().describe("ISO timestamp when the file was attached")}),MV0=I0.array(mw8).nullable().optional().describe("Files attached to the agent as reference knowledge. Surfaced in the system prompt: small text documents are inlined, others are listed as retrievable references."),iw8=I0.enum(["smart","code-review","open"]),kV0=iw8.nullable().optional().describe("Controls when this code agent's changes may be published directly vs. requiring PR review. 'smart' (default) uses AI to judge per change; 'code-review' requires review for any code; 'open' allows direct publish always."),P7=I0.object({id:I0.string().describe("Unique identifier"),title:I0.string().describe("Human-readable name"),description:I0.string().nullable().describe("Description"),icon:I0.string().nullable().describe("Icon URL"),created_at:I0.string().describe("Creation timestamp"),updated_at:I0.string().describe("Last update timestamp"),created_by:I0.string().describe("User ID who created this item"),updated_by:I0.string().optional().describe("User ID who last updated this item"),organization_id:I0.string().describe("Organization ID this item belongs to"),status:I0.enum(["active","inactive"]).describe("Current status"),pinned:I0.boolean().describe("Whether this space is pinned to the sidebar"),metadata:I0.object({instructions:I0.string().nullable().describe("Instructions also used as system prompt"),enabled_plugins:I0.array(I0.string()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:I0.array(I0.string()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:I0.string().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:jV0.nullable().optional().describe("UI customization settings"),githubRepo:TV0.nullable().optional().describe("Linked GitHub repository"),runtime:AV0.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:Y00.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:MV0,siteSlug:I0.string().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:kV0,productionUrl:I0.string().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking."),fieldDescriptionTooltips:I0.boolean().nullable().optional().describe("Blocks form: opt in to showing a field's schema description as a hover tooltip on its title, instead of the default inline text below the title.")}).loose().describe("Metadata"),connections:I0.array(Cu).describe("Connections with their selected tools, resources, and prompts")}),SV0=I0.object({title:I0.string().min(1).max(120).describe("Short label shown on the chip"),description:I0.string().max(280).optional().describe("One-line subtitle shown under the title"),text:I0.string().min(1).describe("The message sent to the agent when the prompt is clicked")}),J00=I0.object({title:I0.string().min(1).max(255).describe("Name for the virtual MCP"),description:I0.string().nullable().optional().describe("Optional description"),icon:I0.string().nullish().describe("Optional icon URL"),status:I0.enum(["active","inactive"]).optional().default("active").describe("Initial status"),pinned:I0.boolean().optional().default(!1).describe("Pin to sidebar"),metadata:I0.object({instructions:I0.string().nullable().optional().describe("MCP server instructions"),enabled_plugins:I0.array(I0.string()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:I0.array(I0.string()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:I0.string().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:jV0.nullable().optional().describe("UI customization settings"),githubRepo:TV0.nullable().optional().describe("Linked GitHub repository"),runtime:AV0.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:Y00.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:MV0,siteSlug:I0.string().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:kV0,productionUrl:I0.string().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking."),fieldDescriptionTooltips:I0.boolean().nullable().optional().describe("Blocks form: opt in to showing a field's schema description as a hover tooltip on its title, instead of the default inline text below the title.")}).loose().nullable().optional().describe("Additional metadata including MCP server instructions"),connections:I0.array(rI1).describe("Connections to include/exclude (can be empty for exclusion mode)"),prompts:I0.array(SV0).optional().describe("Optional kickstart prompts to seed on the agent. Each becomes a clickable conversation starter (icebreaker) on the agent. Author them from the agent's role and the tools it will have so they're coherent and immediately useful.")}),K00=I0.object({title:I0.string().min(1).max(255).optional().describe("New name"),description:I0.string().nullable().optional().describe("New description (null to clear)"),icon:I0.string().nullish().describe("New icon URL"),status:I0.enum(["active","inactive"]).optional().describe("New status"),pinned:I0.boolean().optional().describe("Pin/unpin from sidebar"),metadata:I0.object({instructions:I0.string().nullable().optional().describe("MCP server instructions"),enabled_plugins:I0.array(I0.string()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:I0.array(I0.string()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:I0.string().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:jV0.nullable().optional().describe("UI customization settings"),githubRepo:TV0.nullable().optional().describe("Linked GitHub repository"),runtime:AV0.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:Y00.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:MV0,siteSlug:I0.string().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:kV0,productionUrl:I0.string().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking."),fieldDescriptionTooltips:I0.boolean().nullable().optional().describe("Blocks form: opt in to showing a field's schema description as a hover tooltip on its title, instead of the default inline text below the title.")}).loose().nullable().optional().describe("Additional metadata including MCP server instructions"),connections:I0.array(rI1).optional().describe("New connections (replaces existing)"),prompts:I0.array(SV0).optional().describe("Replace the agent's kickstart prompts with this full set. Omit to leave them unchanged; pass an empty array to remove all. Each becomes a clickable conversation starter (icebreaker).")})});function TB($){return nw8.has($)}var A7,nw8,W00;var G21=B(()=>{A7=["deco","anthropic","openrouter","llmapi","google","openai-compatible"],nw8=new Set(A7);W00=[...A7,"claude-code","codex"]});function VV0($,Z){return{id:crypto.randomUUID(),type:_u.STEP,source:"decopilot",subject:$,data:{stepCount:Z},time:new Date().toISOString()}}function N00($,Z){return{id:crypto.randomUUID(),type:_u.FINISH,source:"decopilot",subject:$,data:{status:Z},time:new Date().toISOString()}}function l3($,Z,X){return{id:crypto.randomUUID(),type:_u.THREAD_STATUS,source:"decopilot",subject:$,data:{status:Z,...X?.messageId!==void 0&&{message_id:X.messageId},...X?.virtualMcpId!==void 0&&{virtual_mcp_id:X.virtualMcpId},...X?.createdBy!==void 0&&{created_by:X.createdBy},...X?.triggerId!==void 0&&{trigger_id:X.triggerId},...X?.title!==void 0&&{title:X.title},...X?.branch!==void 0&&{branch:X.branch},...X?.harnessId!==void 0&&{harness_id:X.harnessId},...X?.createdAt!==void 0&&{created_at:X.createdAt},...X?.updatedAt!==void 0&&{updated_at:X.updatedAt},...X?.metadata!==void 0&&{metadata:X.metadata}},time:new Date().toISOString()}}var Q21,pw8,_u,tw8;var Y21=B(()=>{Q21=["in_progress","requires_action","failed","completed"],pw8=[...Q21,"expired"],_u={STEP:"decopilot.step",FINISH:"decopilot.finish",THREAD_STATUS:"decopilot.thread.status"},tw8=Object.values(_u)});var H00=B(()=>{pI1();X21();G21();Y21()});function K21($){return{id:x4.REGISTRY($),title:"Deco Store",description:"Official deco MCP registry with curated integrations",connection_type:"HTTP",connection_url:"https://studio.decocms.com/org/deco/registry/mcp",icon:"https://assets.decocache.com/decocms/00ccf6c3-9e13-4517-83b0-75ab84554bb9/596364c63320075ca58483660156b6d9de9b526e.png",app_name:"deco-registry",app_id:null,connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!0,type:"registry"}}}function W21(){return{id:"community-registry",title:"MCP Registry",description:"Community MCP registry with thousands of handy MCPs",connection_type:"HTTP",connection_url:"https://sites-registry.deco.site/mcp",icon:"https://assets.decocache.com/decocms/cd7ca472-0f72-463a-b0de-6e44bdd0f9b4/mcp.png",app_name:"mcp-registry",app_id:null,connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!0,type:"registry"}}}function N21($,Z){return{id:x4.SELF(Z),title:"Deco CMS",description:"The MCP for the CMS API",connection_type:"HTTP",connection_url:`${$}/mcp/self`,icon:"https://assets.decocache.com/mcp/09e44283-f47d-4046-955f-816d227c626f/app.png",app_name:"@deco/management-mcp",connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!0,type:"self"}}}function H21($,Z){return{id:x4.DEV_ASSETS(Z),title:"Local Files",description:"Local file storage for development. Files are stored in /data/assets/.",connection_type:"HTTP",connection_url:`${$}/mcp/dev-assets`,icon:"https://api.iconify.design/lucide:folder.svg?color=%23888",app_name:"@deco/dev-assets-mcp",app_id:null,connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isFixed:!0,devOnly:!0,type:"dev-assets"}}}function $Q($){return{is(Z){if(!Z)return null;if(!Z.startsWith($))return null;return Z.slice($.length)||null},get(Z){return`${$}${Z}`}}}function F21($){return{id:$.id,organization_id:$.organizationId,title:$.title,description:$.description,icon:$.icon,status:"active",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),created_by:"system",updated_by:void 0,metadata:{instructions:$.instructions??null,...$.ui?{ui:$.ui}:{}},pinned:!1,connections:[]}}function _V0($){return F21({id:RB($),organizationId:$,title:"Super Agent",description:"Default agent that aggregates all organization connections",icon:ow8,ui:{layout:{defaultMainView:{type:"overview"},chatDefaultOpen:!0}}})}function D21($){return F21({id:rw8($),organizationId:$,title:"Brand context setup",description:"Guided onboarding agent that extracts brand context from a website URL.",icon:"https://assets.decocache.com/decocms/fd07a578-6b1c-40f1-bc05-88a3b981695d/f7fc4ffa81aec04e37ae670c3cd4936643a7b269.png",instructions:aw8})}function z21($,Z,X="https://reports.decocms.com/api/v2/mcp"){return{id:x4.COMMERCE_DISCOVERY($),title:"Store Report",description:"Your store's report and diagnostics",connection_type:"HTTP",connection_url:X,icon:"https://github.com/decocms.png",app_name:"commerce-discovery",app_id:null,connection_token:Z,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!1,type:"commerce-discovery"}}}function j21($,Z=x4.COMMERCE_DISCOVERY($)){return{title:"Report Agent",description:"Ask anything about your store's report",icon:"https://github.com/decocms.png",status:"active",pinned:!0,metadata:{type:"commerce-discovery",isDefault:!1,ui:{pinnedViews:[{connectionId:Z,toolName:"get_my_diagnostic",label:"Report",icon:"https://github.com/decocms.png"}],layout:{defaultMainView:{type:"ext-apps",id:Z,toolName:"get_my_diagnostic"},chatDefaultOpen:!0}}},connections:[{connection_id:Z,selected_tools:["get_my_diagnostic"],selected_resources:null,selected_prompts:null}]}}function P21($){if(!$)return!1;return Object.values(sW).some((Z)=>Z.is($)!==null)}function A21($){let Z=_V0($);return{...Z,id:Z.id,connection_type:"VIRTUAL",connection_url:`virtual://${Z.id}`,app_name:"decopilot",app_id:"decopilot",connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{isDefault:!0,type:"decopilot"},tools:[],bindings:[]}}var x4,J21="https://reports.decocms.com/api/v2/mcp",F00="get_my_diagnostic",U21,sQ,RB,w21,O21,CV0,ow8="https://assets.decocache.com/decocms/fd07a578-6b1c-40f1-bc05-88a3b981695d/f7fc4ffa81aec04e37ae670c3cd4936643a7b269.png",B21,U00,rw8,aw8,L21,BP6,DP6,E21,LP6,w00,sW,T7;var T21=B(()=>{x4={SELF:($)=>`${$}_self`,REGISTRY:($)=>`${$}_registry`,COMMUNITY_REGISTRY:($)=>`${$}_community-registry`,DEV_ASSETS:($)=>`${$}_dev-assets`,SITE_DIAGNOSTICS:($)=>`site-diagnostics_${$}`,COMMERCE_DISCOVERY:($)=>`${$}_commerce-discovery`};U21=$Q("decopilot_"),sQ=U21.is,RB=U21.get,w21=$Q("dev_"),O21=w21.get,CV0=w21.is;B21=$Q("brand-context-setup_"),U00=B21.is,rw8=B21.get,aw8=`
|
|
80
80
|
You are running the brand-context onboarding for the user's organization. Your only job in this thread is to set up the organization's brand context:
|
|
81
81
|
|
|
82
82
|
1. If the user hasn't already given you a website URL, ask for it in one short message. Accept whatever URL they give \u2014 don't quibble about format.
|
|
@@ -1540,7 +1540,7 @@ ${Z}
|
|
|
1540
1540
|
|
|
1541
1541
|
Use this to continue with the user's request \u2014 do NOT call subtask again for this.`:`The background subtask you started completed but produced no usable output${X==="length"?" (it hit its step limit)":""}. Continue with the user's request without calling subtask again for this.`;return{models:G,reactionNudge:Y}}}};bw.registerWorkflow(AK4,{name:"backgroundToolWorkflow"})});async function TK4($,Z,X){let G=await vx({kind:X.kind,ctx:$,organization:Z,virtualMcp:X.virtualMcp,mcpClient:X.mcpClient,provider:X.provider,models:X.models,messages:X.messages,abortSignal:X.abortSignal,temperature:X.temperature,planMode:X.planMode,isDecopilot:X.isDecopilot,systemAgentInstructions:X.systemAgentInstructions,currentThreadId:X.currentThreadId,user:X.user,userContext:X.userContext,codingWorkspace:X.codingWorkspace,writer:X.writer,subtaskParams:{provider:X.provider,organization:Z,models:X.models,codingWorkspace:X.codingWorkspace},prepareStep:X.prepareStep,onStepFinish:X.onStepFinish,passthroughClient:X.passthroughClient,connectionsData:X.connectionsData,extraTools:X.extraTools,toolOutputMap:X.toolOutputMap,additionalSystemMessages:X.additionalSystemMessages,activeToolNames:X.activeToolNames,stepLimit:X.stepLimit});return{result:G.result,error:G.error,span:G.span,assembledSystemMessages:G.assembledSystemMessages}}function g3$($){let{ctx:Z,organization:X,modelRuntime:G,sideChannel:Q,cleanup:Y}=$,J=I3$(Z,Q.writer),K=T3$(Z);return{toolRuntime:{buildEnvironmentTools:async({input:H,onChildUsage:F})=>{let U=Jx(H),w=new Map,O=[],{resolveArgs:D,onToolCalled:L,onPrOpened:E}=Jw0(Z,H.threadId),z=await E3$(H,Z,{writer:Q.writer,toolOutputMap:w,pendingImages:O,threadId:H.threadId,resolveArgs:D,onToolCalled:L,onPrOpened:E,mcpForAgent:async(A,P)=>{let I=U.virtualMcp,V=null;if(I.id&&H.user.id&&k5(I.metadata)[H.user.id])V=await KV(Z,I.id,H.user.id,U.branch??void 0).catch(()=>null);return vN(I,Z,P?.superUser??!1,{listTimeoutMs:P?.listTimeoutMs,includeSkillsCatalog:!0,additionalConnections:V?[V]:[]})},provider:G.thinking.provider,imageProvider:G.image?.provider??G.thinking.provider,webSearchProvider:G.webSearch?.provider??G.thinking.provider,deepResearchProvider:G.deepResearch?.provider??G.thinking.provider,backgroundDispatcher:y3$({threadId:H.threadId,orgId:H.organizationId,userId:H.user.id,agentId:H.agent.id,temperature:H.temperature,toolApprovalLevel:H.toolApprovalLevel,branch:U.branch??null}),htmlArtifactBuffer:K,onChildUsage:F}),j={tools:z.tools,passthroughTools:z.passthroughTools,builtInTools:z.builtInTools,connectionsBlockTools:z.connectionsBlockTools,toolAnnotations:z.toolAnnotations,connectionTitleMap:z.connectionTitleMap,serverInstructions:z.serverInstructions,passthroughClient:z.passthroughClient,toolOutputMap:w,writer:Q.writer,pendingImages:O,sideChunks:Q.stream,closeSideChunks:Q.close,onStepFinish:async()=>{await K.flush(),await J.sweep()},close:z.close};return Y.close=z.close,j},runEngine:(H)=>TK4(Z,X,H)},telemetry:{recordLlmCall:(H)=>JY$({ctx:Z,...H}),monitorLlmCall:(H)=>QY$({ctx:Z,...H,requestId:Z.metadata.requestId,userAgent:Z.metadata.userAgent??null})}}}var h3$=B(()=>{YY$();KY$();mf();mU0();zQ();z3$();Mn0();R3$();q3$();Kw0();Rw0();Kx()});function Iw0($){if($.providerId==="openai-compatible")try{let Z=JSON.parse($.apiKey);return{kind:"secret",providerId:$.providerId,apiKey:Z.apiKey??"",modelId:$.modelId,...Z.baseUrl?{baseUrl:Z.baseUrl}:{}}}catch{return{kind:"secret",providerId:$.providerId,apiKey:$.apiKey,modelId:$.modelId}}return{kind:"secret",providerId:$.providerId,apiKey:$.apiKey,modelId:$.modelId}}var u3$=B(()=>{a3();iv()});var c3$=B(()=>{u3$()});var l3$=B(()=>{xd0();h3$();c3$();$6$(($)=>{let Z=$.ctx;return g3$({...$,ctx:Z,organization:Z.organization})})});function qw0(){return crypto.randomUUID()}function fw($,Z){return`error-${$}:${Z}`}class d3${thread;organization_id;storage;defaultWindowSize;constructor($){this.thread=$.thread,this.organization_id=$.thread.organization_id,this.storage=$.storage,this.defaultWindowSize=$.defaultWindowSize??50}async loadHistory($){let Z=$??this.defaultWindowSize,{chronological:X,isWindowed:G}=this.thread.message_storage_version===2?await this.loadWindowedFromParts(Z):await this.loadWindowedFromMessages(Z),Q=X.find((W)=>W.role!=="system");if(!Q||Q.role==="user")return X;let Y=Q,J=G?"[Context: earlier turns in this conversation were truncated. The messages below continue the thread \u2014 pick up from there.]":"[Context: this thread opens with your message \u2014 you spoke first to greet the user, and the user has not spoken before it. Their reply follows.]";return[{id:`${this.thread.id}-msg-prefix`,thread_id:this.thread.id,role:"user",parts:[{type:"text",text:J}],metadata:void 0,created_at:Y.created_at,updated_at:Y.updated_at},...X]}async loadWindowedFromMessages($){let{messages:Z,total:X}=await this.storage.listMessages(this.thread.id,{limit:$,sort:"desc"});return{chronological:[...Z].reverse(),isWindowed:X>Z.length}}async loadWindowedFromParts($){let{messages:Z,total:X}=await this.storage.messageParts().loadWindow(this.thread.id,{limit:$});return{chronological:Z.map((Q)=>({id:Q.id,thread_id:this.thread.id,role:Q.role,parts:Q.parts,metadata:Q.metadata??void 0,created_at:Q.created_at,updated_at:Q.created_at})),isWindowed:X>Z.length}}}async function Mw0($,Z){let{thread_id:X,defaultWindowSize:G}=Z;if(!X)throw Error("createMemory: thread_id is required");let Q=await $.get(X);if(!Q)throw Error(`Thread not found: ${X}`);return new d3$({thread:Q,storage:$,defaultWindowSize:G})}function RK4($,Z){let X=$.filter((Y)=>Y.parts&&Y.parts.length>0),G=X.findIndex((Y)=>Y.id===Z.id);return G>=0?[...X.slice(0,G),Z]:[...X,Z]}async function IK4($){return[...$.systemMessages,...RK4($.history,$.userMessage)]}async function m3$($){let Z=$.isSubagent?[]:await(await Mw0($.ctx.storage.threads,{thread_id:$.threadId,organization_id:$.ctx.organization?.id??"",userId:$.ctx.auth.user?.id??"",defaultWindowSize:$.windowSize??FY})).loadHistory($.windowSize??FY),X=await IK4({history:Z,userMessage:$.userMessage,systemMessages:$.systemMessages});return Xw0(X,$.ctx)}var i3$=B(()=>{qU();Cx()});function kw0($){return{id:$.id,role:$.role,parts:$.parts,metadata:$.metadata??void 0}}var Jp0=()=>{};function n3$($,Z){let X=$.thinking.capabilities;if(!((X?.vision??!1)||(X?.file??!1))){if(Z.some((Y)=>Y.parts?.some((J)=>J.type==="file")))throw new X$(400,{message:"This model does not support file uploads. Please change the model and try again."})}}var p3$=B(()=>{BJ()});function Sw0($){return $.sandboxProviderKind==="agent-sandbox"&&$.harnessId==="decopilot"}function t3$($){return $.harnessId==="decopilot"&&($.sandboxProviderKind==null||$.sandboxProviderKind==="agent-sandbox")}function MK4($){return{type:"data-run-status",id:"run-status",data:{stage:$}}}function o3$($){if(!$||typeof $!=="object")return!1;return $.type==="data-run-status"}async function K3($,Z,X){if(!$)return;try{await $.publishRawChunk(Z,MK4(X))}catch{}}var qK4,dn,BI9;var gx=B(()=>{qK4=["waiting-runner","starting-run","waiting-capacity","gathering-context","preparing-tools","starting-assistant","analyzing-scope"],dn=["gathering-context","preparing-tools","starting-assistant","analyzing-scope"],BI9=new Set(qK4)});function kK4($){return{type:"data-user-message",data:$}}function r3$($){if(!$||typeof $!=="object")return!1;return $.type==="data-user-message"}async function a3$($,Z,X){if(!$)return;try{await $.publishRawChunk(Z,kK4(X))}catch{}}class mn{intervalMs;emitFn;sleepFn;controller=null;stopped=!1;constructor($){this.intervalMs=$.intervalMs??SK4,this.emitFn=$.emit,this.sleepFn=$.sleepFn??w8}arm(){if(this.stopped)return;this.controller?.abort();let $=new AbortController;this.controller=$,this.wait($.signal)}async wait($){try{await this.sleepFn(this.intervalMs,{signal:$})}catch{return}if(this.stopped||$.aborted)return;try{await this.emitFn()}catch{this.stop();return}if(!this.stopped&&!$.aborted)this.arm()}stop(){if(this.stopped)return;this.stopped=!0,this.controller?.abort(),this.controller=null}}function s3$($=Date.now){return{type:"data-liveness",data:{t:$()},transient:!0}}var SK4=30000;var Kp0=B(()=>{L5()});function VK4($=Date.now){return s3$($)}async function*e3$($,Z={}){let X=()=>VK4(Z.now),G=null,Q=new mn({intervalMs:Z.intervalMs,sleepFn:Z.sleepFn,emit:()=>G?.()}),Y=$[Symbol.asyncIterator](),J=Y.next();try{Q.arm();while(!0){let K=new Promise((N)=>{G=()=>N("heartbeat")}),W=await Promise.race([J.then((N)=>({kind:"chunk",r:N})),K.then((N)=>({kind:N}))]);if(G=null,W.kind==="heartbeat"){yield X();continue}if(Q.arm(),W.r.done)return;yield W.r.value,J=Y.next()}}finally{Q.stop(),await Y.return?.(void 0).catch(()=>{})}}var $K$=B(()=>{Kp0()});function CK4($){if(!$)return;if(!("models"in $))return;return $.models??void 0}function ZK$($,Z){if(!$)return!0;if($.includes("*:*"))return!0;return $.some((X)=>X.startsWith(`${Z}:`))}function W3($,Z,X){if(!$)return!0;return $.includes("*:*")||$.includes(`${Z}:*`)||$.includes(`${Z}:${X}`)}function Vw0($,Z){if($===void 0)return Z;let X=Z;if(X.image&&!W3($,X.image.credentialId,X.image.id)){let{image:G,...Q}=X;X=Q}if(X.webSearch&&!W3($,X.webSearch.credentialId,X.webSearch.id)){let{webSearch:G,...Q}=X;X=Q}if(X.deepResearch&&!W3($,X.deepResearch.credentialId,X.deepResearch.id)){let{deepResearch:G,...Q}=X;X=Q}return X}function XK$($){if(!$)return{allowAll:!0,models:{}};if($.includes("*:*"))return{allowAll:!0,models:{}};let Z={};for(let X of $){let G=X.indexOf(":");if(G===-1)continue;let Q=X.slice(0,G),Y=X.slice(G+1);if(!Z[Q])Z[Q]=[];Z[Q].push(Y)}return{allowAll:!1,models:Z}}function _K4($){if($.some((X)=>X===void 0))return;let Z=new Set;for(let X of $)for(let G of X??[])Z.add(G);return[...Z]}async function N3($,Z,X){if(!X||NY(X))return;let G=X.split(","),Q=await $.selectFrom("organizationRole").select(["role","permission"]).where("organizationId","=",Z).where("role","in",G).execute(),Y=new Map(Q.map((K)=>[K.role,K.permission])),J=G.map((K)=>{let W=Y.get(K);if(!W)return;try{let N=JSON.parse(W);return CK4(N)}catch{return console.error(`[model-permissions] Failed to parse permissions for role: ${K}`),[]}});return _K4(J)}var hx=B(()=>{HY()});function ux($,Z){let X=$.capabilities?{...$.capabilities.vision!==void 0?{vision:$.capabilities.vision}:{},...$.capabilities.text!==void 0?{text:$.capabilities.text}:{},...$.capabilities.reasoning!==void 0?{reasoning:$.capabilities.reasoning}:{}}:void 0;return{id:$.id,...$.title!==void 0?{title:$.title}:{},...$.provider!==void 0?{provider:$.provider}:{},credentialId:Z,...$.limits?{limits:$.limits}:{},...X&&Object.keys(X).length>0?{capabilities:X}:{}}}function GK$($){let Z=$.credentialId,X=ux($.thinking,Z);return{thinking:{...X,title:X.title??X.id},...$.fast?{fast:ux($.fast,Z)}:{},...$.smart?{smart:ux($.smart,Z)}:{},...$.image?{image:ux($.image,$.image.credentialId??Z)}:{},...$.webSearch?{webSearch:ux($.webSearch,$.webSearch.credentialId??Z)}:{},...$.deepResearch?{deepResearch:ux($.deepResearch,$.deepResearch.credentialId??Z)}:{}}}function vK4($,Z=[]){if($==="stop")return"completed";if($==="tool-calls"){let X=Z.some((Q)=>Q.type==="tool-user_ask"&&Q.state==="input-available"),G=Z.some((Q)=>Q.state==="approval-requested");return X||G?"requires_action":"completed"}return"failed"}function Cw0($,Z=[]){if($==null)return"completed";return vK4($,Z)}function Wp0(){return n0().podName}var QK$=B(()=>{f$()});function bK4($){let Z=null;return new ReadableStream({async pull(X){try{Z??=$().getReader();let{done:G,value:Q}=await Z.read();if(G)X.close();else X.enqueue(Q)}catch(G){X.error(G)}},async cancel(X){await Z?.cancel(X)}},{highWaterMark:0})}function fK4($){let Z=$.startSeq??0;async function*X(){for await(let G of $.chunks)yield{seq:++Z,chunk:G}}return new ReadableStream({async start(G){try{let Q=await $.loadOriginalMessages?.();await jw0({runId:$.runId,fenceToken:$.fenceToken,chunks:X(),errorMessageId:$.errorMessageId,originalMessages:Q,...$.initialAckSeq!==void 0?{initialAckSeq:$.initialAckSeq}:{},...$.onPublished?{onPublished:$.onPublished}:{}},{streamBuffer:$.streamBuffer,hooks:$.hooks,title:$.title}),G.close()}catch(Q){G.error(Q)}}})}async function xK4($,Z,X,G){let{keyInfo:Q,apiKey:Y}=await $.storage.aiProviderKeys.resolve(X,Z),J=Iw0({providerId:Q.providerId,apiKey:Y,modelId:G});if(J.providerId==="openrouter"||J.providerId==="deco")return{...J,extraHeaders:{...J.extraHeaders,"HTTP-Referer":"https://studio.decocms.com","X-Title":"deco"}};return J}function Np0($){if(!KK$.includes($))throw Error(`hosted dispatch requires one of ${KK$.join(", ")}; got ${JSON.stringify($)}`)}async function yK4($,Z,X){if($==="decopilot")return;if((await X.storage.organizationSettings.get(Z))?.flags?.claude_code_sandbox_enabled===!0)return;throw Error(`the ${$} harness is not enabled for this organization (set the claude_code_sandbox_enabled flag to allow it)`)}function WK$($){return!("messages"in $)}function NK$($,Z){if(!$.taskId)throw Error("buildDurableDispatchInput: taskId is required");let X=$.messages.filter((G)=>G.role==="system").flatMap((G)=>G.parts).filter((G)=>G.type==="text"&&typeof G.text==="string").map((G)=>G.text).join(`
|
|
1542
1542
|
|
|
1543
|
-
`).trim();return{models:$.models,agent:$.agent,temperature:$.temperature,toolApprovalLevel:$.toolApprovalLevel,...$.toolAllowlist!==void 0?{toolAllowlist:$.toolAllowlist}:{},...$.maxAgentSteps!==void 0?{maxAgentSteps:$.maxAgentSteps}:{},...$.isSubagent!==void 0?{isSubagent:$.isSubagent}:{},...$.subtaskJobId!==void 0?{subtaskJobId:$.subtaskJobId}:{},...$.resumedFromBackground!==void 0?{resumedFromBackground:$.resumedFromBackground}:{},mode:$.mode,...$.windowSize!==void 0?{windowSize:$.windowSize}:{},...$.triggerId!==void 0?{triggerId:$.triggerId}:{},...$.runMetadata!==void 0?{runMetadata:$.runMetadata}:{},branch:Z.branch??$.branch??null,sandboxProviderKind:$.sandboxProviderKind,harnessId:$.harnessId,organizationId:$.organizationId,userId:$.userId,taskId:$.taskId,messageId:Z.messageId,...Z.runFenceToken!==void 0?{runFenceToken:Z.runFenceToken}:{},...$.isResume!==void 0?{isResume:$.isResume}:{},...X?{systemContext:X}:{}}}function gK4($,Z){let X=$.find((G)=>G.id===Z);if(!X)throw new Qw("empty_request",`Persisted request message missing for messageId=${Z}`);if(X.role==="system")throw new Qw("empty_request",`Persisted message ${Z} has role=system; expected non-system request message`);return X}function hK4($){let Z=$.models;return{"decopilot.agent.id":$.agent.id,"decopilot.model.id":Z.thinking.id,"decopilot.credential.id":Z.credentialId,"decopilot.organization.id":$.organizationId,"decopilot.user.id":$.userId,"decopilot.thread.id":$.taskId??""}}async function HK$($,Z,X){return M81("decopilot.dispatchRunAndWait",async(G)=>{let{taskId:Q,uiStream:Y,registrySignal:J}=await lK4($,Z,X,G),K=X.streamBuffer,W=K?await K.createTailStream(Q,$.abortSignal,{deliverPolicy:"new",closeOnDone:!0}):null;if(K&&W){let N=K.pump(Y,Q,J,$.organizationId);N.catch(()=>{});let H=W.getReader();try{while(!0){let{done:F}=await H.read();if(F)break}}finally{H.releaseLock()}await N}else{if(K)console.warn(JSON.stringify({msg:"decopilot-stream-diag",event:"producer-fallback-no-pump",taskId:Q,hasTail:!!W,note:"createTailStream returned null \u2014 draining producer stream directly; projector persistence depends on streamBuffer publish health"}));let N=Y.getReader();try{while(!0){let{done:H}=await N.read();if(H)break}}finally{N.releaseLock()}}return{taskId:Q}},hK4($))}async function uK4($,Z,X,G){let[Q,Y,J]=await Promise.all([$.storage.threads.list(G,{limit:9,agentId:X}).catch(()=>null),$.storage.interests.getForAgent(Z,X,G).catch(()=>null),$.storage.virtualMcps.list(Z).catch(()=>null)]),K={};if(Q&&Q.total>0)K.recentThreads={total:Q.total,threads:Q.threads.map((W)=>({id:W.id,title:W.title,updated_at:W.updated_at}))};if(Y&&Y.interests.length>0)K.interests=Y.interests.map((W)=>({title:W.title,summary:W.summary}));if(J)K.agents=J.map((W)=>({id:W.id,name:W.title,description:W.description,status:W.status}));return K}async function cK4({virtualMcp:$,agentId:Z,organizationId:X,ctx:G}){return u$0({virtualMcp:$,agentId:Z,organizationId:X,ctx:G})}async function lK4($,Z,X,G){let{runRegistry:Q,streamBuffer:Y}=X;Np0($.harnessId);let J=$.harnessId;if(await yK4(J,$.organizationId,Z),!WK$($))$={...$,messages:$.messages.map((N)=>N.id?N:{...N,id:qd()})};let K=!1,W;try{let N=$.models;G.setAttribute("decopilot.harnessId",J),Z.sandboxPreference="agent-sandbox",G.setAttribute("decopilot.dispatchTarget.sandboxProviderKind","agent-sandbox");let H=Sw0({harnessId:J,sandboxProviderKind:"agent-sandbox"}),F=GK$(N),U=await N3(Z.db,$.organizationId,Z.organization?.role??Z.auth.user?.role);if(!W3(U,F.thinking.credentialId,F.thinking.id))throw Error("Model not allowed for your role");F=Vw0(U,F);let w=$.windowSize??FY;if(!$.taskId)throw Error("dispatchRunAndWait: taskId is required");if(H)await K3(Y,$.taskId,dn[0]);let O=(s0)=>s0?xK4(Z,$.organizationId,s0.credentialId,s0.id):Promise.resolve(void 0),[D,L,E,z,j,A,P,I,V]=await Promise.all([Z.storage.virtualMcps.findById($.agent.id,$.organizationId),O(F.thinking),O(F.fast),O(F.smart),O(F.image),O(F.webSearch),O(F.deepResearch),Mw0(Z.storage.threads,{organization_id:$.organizationId,thread_id:$.taskId,userId:$.userId,defaultWindowSize:w}),uK4(Z,$.organizationId,$.agent.id,$.userId)]);if(H)await K3(Y,$.taskId,dn[1]);let k=L?{thinking:L,...E?{fast:E}:{},...z?{smart:z}:{},...j?{image:j}:{},...A?{webSearch:A}:{},...P?{deepResearch:P}:{}}:void 0,_=L?v50(L):null;if(W=I.thread.id,Z.metadata.threadId=I.thread.id,G.setAttribute("decopilot.thread.id",I.thread.id),I.thread.created_by!==$.userId)throw Error("You are not allowed to write to this thread because you are not the owner");if(_?.asyncResearch){let s0=[["thinking",F.thinking.id]];if(F.fast)s0.push(["fast",F.fast.id]);if(F.smart)s0.push(["smart",F.smart.id]);if(F.image)s0.push(["image",F.image.id]);for(let[n,U0]of s0)if(_.asyncResearch.canHandle(U0))throw Error(`Model "${U0}" can only be used as a Deep Research model. It is not usable as the ${n} model \u2014 set it in the Deep Research slot instead.`)}let b=I.thread.message_storage_version===2?new t7({storage:Z.storage.threads.messageParts(),orgId:$.organizationId,threadId:I.thread.id,runId:I.thread.id}):null;if(!D)throw new Qw("agent_not_found","Agent not found");let x=await cK4({virtualMcp:D,agentId:$.agent.id,organizationId:$.organizationId,ctx:Z});if($.isResume)await Q.execute({type:"RESUME",taskId:I.thread.id,orgId:$.organizationId,userId:$.userId,abortController:new AbortController,podId:Wp0()});else await Q.execute({type:"START",taskId:I.thread.id,orgId:$.organizationId,userId:$.userId,abortController:new AbortController,podId:Wp0(),runConfig:{models:$.models,agent:$.agent,temperature:$.temperature,toolApprovalLevel:$.toolApprovalLevel,mode:$.mode,windowSize:$.windowSize,triggerId:$.triggerId},messageId:$.messageId});K=!0,await Z.storage.threads.clearCancelRequested(I.thread.id);let p;if($.runFenceToken)p=$.runFenceToken;else p=qw0(),await Z.storage.threads.setRunFence(I.thread.id,p);let d=Q.getAbortSignal(I.thread.id);if(!d)throw await Q.execute({type:"FINISH",taskId:I.thread.id,threadStatus:"failed"}),Error("Run was cancelled immediately after starting");if($.abortSignal){let s0=$.abortSignal;if(s0.aborted)await Q.execute({type:"CANCEL",taskId:I.thread.id});else s0.addEventListener("abort",()=>{Q.execute({type:"CANCEL",taskId:I.thread.id}).catch(()=>{})},{once:!0})}if(!$.isResume)Y?.purge(I.thread.id);let J0=[],O0,T0;if(WK$($)){if(T0=await I.loadHistory(w),O0=gK4(T0,$.messageId),$.systemContext)J0=[{id:`system-${$.messageId}`,role:"system",parts:[{type:"text",text:$.systemContext}]}]}else{J0=$.messages.filter((n)=>n.role==="system");let s0=$.messages.find((n)=>n.role!=="system");if(O0=s0?(await Zw0([s0],Z,{threadId:I.thread.id})).find((n)=>n.role!=="system"):void 0,!$.isResume){if(!O0)throw new Qw("empty_request","No user message found in input \u2014 expected at least one non-system message");if(b)await b.emitUserMessage(O0).catch((n)=>{console.error("[decopilot:stream] v2 user-message emit failed",n)})}}if(O0)await a3$(Y,I.thread.id,O0);let s=[],o=Z.organization,A0=Date.now(),X0=O0?(await Xw0([O0],Z))[0]:void 0;if(!X0||!O0)throw new Qw("empty_request","No user message found in input \u2014 expected at least one non-system message");n3$($.models,[X0]);let E0=await m3$({ctx:Z,threadId:I.thread.id,userMessage:O0,windowSize:w,isSubagent:$.isSubagent===!0,systemMessages:J0}),V0={url:"",headers:{},expiresAt:0},g0=void 0,Z0=void 0,B0={cwd:null},j0=typeof x.metadata?.instructions==="string"?x.metadata.instructions:void 0,q0={taskId:$.taskId,isSubagent:$.isSubagent,subtaskJobId:$.subtaskJobId,resumedFromBackground:$.resumedFromBackground,virtualMcp:x,branch:$.branch,messages:E0,modelSources:k,mcpSource:g0,objectStorageSource:Z0,userContext:V},r={harnessId:J,threadId:I.thread.id,userMessage:X0,harness:{sessionId:void 0},workspace:B0,models:F,mcp:V0,mode:$.mode,temperature:$.temperature,toolApprovalLevel:$.toolApprovalLevel,toolAllowlist:$.toolAllowlist??null,maxAgentSteps:$.maxAgentSteps,user:{id:$.userId,email:Z.auth.user?.email??""},organizationId:$.organizationId,organizationSlug:o.slug,agent:{id:$.agent.id,instructions:j0},triggerId:$.triggerId,currentThreadTitle:I.thread.title,runFenceToken:p};if(H)await K3(Y,$.taskId,dn[2]);let $0=JV(J),M0=$0?await Z.storage.threads.getAckedSeq(I.thread.id):0;if(M0>0)console.log("[dispatch] resuming a sandbox-hosted turn",{runId:I.thread.id,fromSeq:M0});let K0=async function*(){let s0={...r,signal:d};if(vd0(s0,q0),H)await K3(Y,I.thread.id,dn[3]);yield*($0?new Hn0({ctx:Z,harnessId:J,virtualMcpId:x.id,...M0>0?{resume:{reason:"the Studio process driving the previous attempt stopped"}}:{},branch:await xQ$(Z,{threadId:I.thread.id,agentRepo:x.metadata?.githubRepo,runBranch:$.branch}),credential:L?{providerId:L.providerId,apiKey:L.apiKey,...L.baseUrl?{baseUrl:L.baseUrl}:{}}:null}):new yd0({ctx:Z,harnessId:J})).dispatch(s0)},F0=bK4(()=>fK4({runId:I.thread.id,fenceToken:p,streamBuffer:Y??{publishRawChunk:async()=>!1,publishDone:async()=>!1},chunks:e3$(K0()),...$0?{startSeq:M0,initialAckSeq:M0,onPublished:(s0)=>Z.storage.threads.bumpAckedSeq(I.thread.id,p,s0)}:{},errorMessageId:fw(I.thread.id,p),loadOriginalMessages:b?async()=>(await Z.storage.threads.messageParts().loadWindow(I.thread.id,{limit:1})).messages.map(kw0):void 0,title:{currentThreadTitle:I.thread.title,threadId:I.thread.id,persistTitle:async(s0,n)=>{await Z.storage.threads.update(s0,{title:n})}},hooks:{onStep:()=>{let s0=Q.dispatch({type:"STEP_DONE",taskId:I.thread.id});s.push(Q.react(s0).catch((n)=>{console.error("[decopilot:stream] onStepFinish reactor failed",n)}))},onFinish:async(s0,n)=>{let U0=s.length,L0=performance.now();if(await Promise.allSettled(s),YK$.record(performance.now()-L0,{phase:"settle"}),d.aborted)return;await w8(0);let $1=JK$?EO():null,R1=performance.now(),N8=Cw0(n,s0?.parts);await Q.execute({type:"FINISH",taskId:I.thread.id,threadStatus:N8});let x0=performance.now()-R1;if(YK$.record(x0,{phase:"save"}),JK$&&$1){let d1=EO()??$1,E8=-1;try{E8=JSON.stringify(s0)?.length??-1}catch{}console.warn(JSON.stringify({msg:"decopilot-finish-trace",threadId:I.thread.id,pendingOps:U0,saveMs:Math.round(x0),parts:s0?.parts?.length??0,messageBytes:E8,rssDelta:d1.rss-$1.rss,heapUsedDelta:d1.heapUsed-$1.heapUsed,externalDelta:d1.external-$1.external}))}},onError:(s0)=>{if(d.aborted){x1.capture({distinctId:$.userId,event:"chat_message_aborted",groups:{organization:$.organizationId},properties:{organization_id:$.organizationId,thread_id:I.thread.id,agent_id:$.agent.id,model_id:F.thinking.id,mode:$.mode,duration_ms:Date.now()-A0,is_resume:$.isResume??!1}});return}console.error("[decopilot] stream error:",dN(s0)),Q.execute({type:"FINISH",taskId:I.thread.id,threadStatus:"failed"}).catch((n)=>{console.error("[decopilot:stream] onError reactor failed",n)})}}}));return{taskId:I.thread.id,uiStream:F0,registrySignal:d}}catch(N){if(K&&W)Q.execute({type:"FINISH",taskId:W,threadStatus:"failed"}).catch((H)=>{console.error("[decopilot:stream] catch-block reactor failed",H)});throw N}}var YK$,JK$,KK$;var _w0=B(()=>{Il0();B6();X6$();dU0();gK();pv();l3$();Kx();ql0();qU();i3$();vw();Jp0();Cx();p3$();gx();Gp0();$K$();hx();G5();QK$();L5();YK$=Q8.createHistogram("decopilot.finish.duration",{description:"Wall time of onFinish flush segments, tagged by phase",unit:"ms"}),JK$=process.env.DECOPILOT_FINISH_TRACE==="1";KK$=["decopilot","claude-code"]});function FK$($){return o3$($)||r3$($)}async function dK4($){let Z=$.getReader();try{while(!0){let{done:X}=await Z.read();if(X)break}}finally{Z.releaseLock()}}function mK4($,Z){let X=$.getReader(),G=!1,Q=()=>{if(G)return;G=!0,X.releaseLock()};return new ReadableStream({async pull(Y){try{let{done:J,value:K}=await X.read();if(J)Q(),Y.close();else Y.enqueue(K)}catch(J){Z(J),Q(),Y.error(J)}},async cancel(Y){await X.cancel(Y),Q()}})}async function UK$($){if(!$.chunks&&!$.chunkStream)throw Error("projectChunks requires chunks or chunkStream");let Z=null,X=!1,G=void 0,Q={inputTokens:0,outputTokens:0,totalTokens:0},Y=[],J=null,K=(O)=>{if(J===null)J=O;throw O},W=$.chunks?async function*(){try{for await(let O of $.chunks){if(FK$(O))continue;yield O}}catch(O){throw Z=O,O}}():void 0,N=$.chunkStream?mK4($.chunkStream,(O)=>{Z=O}).pipeThrough(new TransformStream({transform(O,D){if(!FK$(O))D.enqueue(O)}})):void 0,H={emitStepParts:(O)=>$.persistence.emitStepParts(O).catch(K),emitFinal:(O)=>$.persistence.emitFinal(O).catch(K),emitError:(O,D)=>$.persistence.emitError(O,D).catch(K)},{uiStream:F,whenComplete:U}=zw0({chunks:W,chunkStream:N,originalMessages:$.originalMessages??[],title:$.title?{currentThreadTitle:$.title.currentThreadTitle,threadId:$.title.threadId,persistTitle:$.title.persistTitle}:{currentThreadTitle:void 0,threadId:"projector",persistTitle:async()=>{}},persistence:H,sanitizeErrorText:$.sanitizeErrorText,errorMessageId:$.errorMessageId,generateMessageId:$.generateMessageId,hooks:{onUsage:(O)=>{Q={inputTokens:O.inputTokens,outputTokens:O.outputTokens,totalTokens:O.totalTokens}},onError:()=>{X=!0},onFinish:(O,D)=>{G=D,Y=Array.isArray(O.parts)?O.parts.filter((L)=>L!=null&&typeof L==="object"&&("type"in L)):[]}}});if(await dK4(F).catch(()=>{}),await U,J!==null)throw J;if(Z!==null)throw Z;return{failed:X&&G===void 0,finishReason:G,usage:Q,finalParts:Y}}var wK$=B(()=>{Xp0();gx()});var nn=786432;function nK4($){if(/[.*>\s]/.test($))throw Error("Invalid NATS subject token")}function xw($){return nK4($),`${vw0}.${$}`}function OK$($){let Z=`${$.runId}:${$.fenceToken}:${$.seq}`;return $.fragmentIndex===void 0?Z:`${Z}:frag:${$.fragmentIndex}`}function pK4($){return`${$.runId}:${$.fenceToken}:done:${$.finalSeq}`}function BK$($){if(!$)return null;let Z=Number($);return Number.isInteger(Z)&&Z>0?Z:null}function tK4($){if(!$)return null;let Z=Number($);return Number.isInteger(Z)&&Z>=0?Z:null}function oK4($){if(!$)return null;let Z=$.split(":"),[X,G,Q,Y,J]=Z;if(!X||!G||!Q)return null;if(Q==="done"){let W=BK$(Y);return Z.length===4&&W!==null?{kind:"done",runId:X,fenceToken:G,finalSeq:W}:null}if(Q==="ckpt")return null;let K=BK$(Q);if(K===null)return null;if(Z.length===3)return{kind:"chunk",runId:X,fenceToken:G,seq:K,fragmentIndex:null};if(Z.length===5&&Y==="frag"){let W=tK4(J);return W===null?null:{kind:"chunk",runId:X,fenceToken:G,seq:K,fragmentIndex:W}}return null}function Fp0($,Z){let X=xw(Z.runId),G=Hp0.encode(JSON.stringify({p:$}));if(G.length>iK4)return[];if(G.length<=nn)return[{subject:X,data:G,msgId:Z.dedup?OK$({runId:Z.runId,...Z.dedup}):void 0}];let Q=Math.ceil(G.length/nn),Y=[];for(let J=0;J<Q;J++)Y.push({subject:X,data:G.slice(J*nn,(J+1)*nn),headers:{[DK$]:String(J),[LK$]:String(Q)},msgId:Z.dedup?OK$({runId:Z.runId,...Z.dedup,fragmentIndex:J}):void 0});return Y}function EK$($){return{subject:xw($.runId),data:Hp0.encode(JSON.stringify({done:!0,finalSeq:$.finalSeq})),msgId:pK4($)}}function zK$($){return{subject:xw($),data:Hp0.encode(JSON.stringify({done:!0}))}}function rK4($){let Z=$.reduce((Q,Y)=>Q+(Y?.length??0),0),X=new Uint8Array(Z),G=0;for(let Q of $){if(!Q)continue;X.set(Q,G),G+=Q.length}return X}function bw0(){let $=null;return new TransformStream({transform(Z,X){let G=Z.headers?.get(LK$);if(!G){X.enqueue(Z);return}let Q=Number(G),Y=Number(Z.headers?.get(DK$)??"0");if(Y===0)$={total:Q,received:0,parts:Array(Q)};else if(!$||$.total!==Q)return;if(!$.parts[Y])$.received++;if($.parts[Y]=Z.data,$.received<$.total)return;let J=rK4($.parts);$=null,X.enqueue({subject:Z.subject,data:J,headers:Z.headers})}})}function aK4($){return typeof $==="number"&&Number.isInteger($)&&$>0}function eK4($){let Z=oK4($.headers?.get("Nats-Msg-Id")||void 0),X;try{X=JSON.parse(sK4.decode($.data))}catch{return null}if(!X||typeof X!=="object")return null;let G=X;if(G.done===!0)return{kind:"done",runId:Z?.kind==="done"?Z.runId:null,fenceToken:Z?.kind==="done"?Z.fenceToken:null,envelopeFinalSeq:aK4(G.finalSeq)?G.finalSeq:null,msgIdFinalSeq:Z?.kind==="done"?Z.finalSeq:null};if("p"in G)return{kind:"chunk",seq:Z?.kind==="chunk"?Z.seq:null,runId:Z?.kind==="chunk"?Z.runId:null,fenceToken:Z?.kind==="chunk"?Z.fenceToken:null,chunk:G.p};return null}function fw0(){return new TransformStream({transform($,Z){let X=eK4($);if(X)Z.enqueue(X)}})}var vw0="decopilot.stream",DK$="Dp-Frag-Idx",LK$="Dp-Frag-Total",iK4=33554432,Hp0,sK4;var jK$=B(()=>{Hp0=new TextEncoder;sK4=new TextDecoder});var xw0=B(()=>{jK$()});var $H="DECOPILOT_STREAMS";var Up0=B(()=>{xw0()});function PK$($,Z){return new TransformStream({transform(X,G){if(X.runId!==$||X.fenceToken!==Z)return;G.enqueue(X)}})}function AK$(){let $=1;return new TransformStream({transform(Z,X){if(Z.kind==="done"){X.enqueue(Z);return}if(Z.seq===null){X.error(Error("projector chunk missing seq"));return}if(Z.seq<$)return;if(Z.seq>$){X.error(new pn($,Z.seq));return}$++,X.enqueue(Z)}})}function TK$($){let Z=$.getReader(),X=!1,G=0,Q=()=>{if(X)return;X=!0,Z.releaseLock()};return new ReadableStream({async pull(Y){for(;;){let{done:J,value:K}=await Z.read();if(J){await Z.cancel(),Q(),Y.error(Error("reader stopped before done"));return}let W=K;if(W.kind==="done"){if(!(W.envelopeFinalSeq!=null&&W.envelopeFinalSeq===W.msgIdFinalSeq))continue;if(W.envelopeFinalSeq!==G){await Z.cancel(),Q(),Y.error(new pn(G+1,null));return}await Z.cancel(),Q(),Y.close();return}G=W.seq??G,Y.enqueue(W.chunk);return}},async cancel(Y){await Z.cancel(Y),Q()}})}function $W4($){if(Symbol.asyncIterator in $)return $[Symbol.asyncIterator]();let Z=$[Symbol.iterator]();return{next:async()=>Z.next(),return:async(X)=>Z.return?Z.return(X):{done:!0,value:X}}}function gw0($){let Z=$W4($.messages),X=$.idleTimeoutMs,G=!1,Q=(Y)=>{if(G)return;G=!0,Z.return?.(Y).catch(()=>{}),$.onCancel?.()};return new ReadableStream({async pull(Y){if(X===void 0){let{done:H,value:F}=await Z.next();if(H){Y.close();return}Y.enqueue(F);return}let J=new AbortController,K=Z.next().then((H)=>{return J.abort(),H}),W=w8(X,{signal:J.signal}).then(()=>"idle").catch(()=>"cancelled"),N=await Promise.race([K,W]);if(N==="idle"){Y.error(new yw0(X));return}if(N==="cancelled")return;if(N.done){Y.close();return}Y.enqueue(N.value)},async cancel(Y){Q(Y)}})}var yw0,pn;var hw0=B(()=>{L5();yw0=class yw0 extends Error{idleTimeoutMs;constructor($){super("producer produced no output before timeout");this.idleTimeoutMs=$;this.name="StreamIdleTimeoutError"}};pn=class pn extends Error{expectedSeq;gotSeq;constructor($,Z){super(Z===null?`missing seq ${$} (stream ended at the fenced done)`:`missing seq ${$} (next delivered is ${Z})`);this.expectedSeq=$;this.gotSeq=Z;this.name="StreamGapError"}}});function ZW4($){let X=gw0({messages:$.messages,idleTimeoutMs:$.idleTimeoutMs,onCancel:$.onDone}).pipeThrough(bw0()).pipeThrough(fw0()).pipeThrough(PK$($.runId,$.fenceToken)).pipeThrough(AK$());return TK$(X)}async function IK$($){let X=await(await $.js.consumers.get($H,{filter_subjects:xw($.runId),deliver_policy:RK$.DeliverPolicy.All})).consume();async function*G(){try{for await(let Q of X)yield{subject:Q.subject,data:Q.data,headers:Q.headers}}finally{X.stop()}}return ZW4({messages:G(),runId:$.runId,fenceToken:$.fenceToken,idleTimeoutMs:$.idleTimeoutMs,onDone:()=>X.stop()})}var RK$;var qK$=B(()=>{Up0();hw0();xw0();RK$=M(CO(),1)});async function XW4($){let X=($.requestMessageId?await $.messageParts.maxCreatedAtMsForMessage($.runId,$.requestMessageId):null)??await $.messageParts.maxCreatedAtMsForRun($.runId);return new t7({storage:$.messageParts,orgId:$.orgId,threadId:$.runId,runId:$.runId,baseTimeMs:(X??Date.now())+1})}async function MK$($){let Z=await XW4($),X=$.replaceFinal?(G)=>Z.replaceFinal(G):(G)=>Z.emitFinal(G);return{emitStepParts:(G)=>Z.emitStepParts(G),emitFinal:X,emitError:(G,Q)=>Z.emitError(G,Q)}}var kK$=B(()=>{vw()});function uw0($,Z){GW4.add(1,{"org.id":Z??"unknown"})}var GW4;var SK$=B(()=>{G5();GW4=Q8.createCounter("decopilot.projector.poison_runs",{description:"Number of decopilot runs that exhausted retries and were sent to the DLQ",unit:"{runs}"})});class wp0{intervalMs;lastBumpMs=new Map;constructor($=3000){this.intervalMs=$}shouldBump($,Z=Date.now()){let X=this.lastBumpMs.get($);if(X!==void 0&&Z-X<this.intervalMs)return!1;return this.lastBumpMs.set($,Z),!0}clear($){this.lastBumpMs.delete($)}}function VK$($,Z,X,G){return $.pipeThrough(new TransformStream({transform(Q,Y){if(X.shouldBump(Z))G();Y.enqueue(Q)},flush(){X.clear(Z)}}))}function QW4($){return`liveness: no stream events for ${Math.round($/60000)}m`}function Bp0($){return $.runFenceToken!==null&&$.runFenceToken!==$.fenceToken}function _K$($){Op0=$}function vK$(){if(!Op0)throw Error("[projector-workflow] runtime not initialized \u2014 setProjectorWorkflowRuntime() must run before workflows fire");return Op0}function bK$(){return vK$()}async function fK$($,Z,X){let G=vK$(),Q=G.getJetStream();if(!Q)throw Error("JetStream unavailable");let Y=(await G.messageParts.loadWindow($.runId,{limit:500})).messages.map(kw0);return{chunkCount:0,attempts:1,outcome:await UK$({chunkStream:VK$(await IK$({js:Q,runId:$.runId,fenceToken:$.fenceToken,idleTimeoutMs:$.idleTimeoutMs}),$.runId,YW4,()=>{G.bumpProgress({runId:$.runId,orgId:Z}).catch(()=>{})}),persistence:await MK$({messageParts:G.messageParts,orgId:Z,runId:$.runId,requestMessageId:$.messageId,replaceFinal:!0}),originalMessages:Y,errorMessageId:fw($.runId,$.fenceToken),title:{threadId:$.runId,currentThreadTitle:X,persistTitle:async(K,W)=>{await G.persistTitle($.runId,Z,W),await G.onTitleUpdated({runId:$.runId,orgId:Z,title:W})}}})}}async function CK$($,Z,X){let G=await $.resolveRun(Z).catch(()=>null);return G!==null&&G.runFenceToken===X&&["completed","failed","requires_action"].includes(G.status)}async function xK$($,Z,X){let G=await JW4($,Z);if("skip"in G)return;let Q=G.row.orgId,Y=G.row.createdBy??$.runId,J=G.row.title;try{let{outcome:K}=await X($,Q,J),W=K?.failed?"failed":Cw0(K?.finishReason,K?.finalParts);if(W==="failed"){let N=K?.finishReason?`harness reported an error: ${K.finishReason}`:"harness reported an error";if(uw0($.runId,Q),await Z.markRunFailed($.runId,Q,N,"harness"))await Z.recordFailed({runId:$.runId,orgId:Q,distinctId:Y,reason:N,kind:"harness"})}else if(W==="requires_action")await Z.markRunRequiresAction($.runId,Q),await Z.clearSynthesizedError($.runId,$.fenceToken);else{if(await Z.completeRunIfNotCompleted($.runId,Q))await Z.recordCompleted({runId:$.runId,orgId:Q,distinctId:Y,usage:K?.usage??{inputTokens:0,outputTokens:0,totalTokens:0}});await Z.clearSynthesizedError($.runId,$.fenceToken)}await Z.purgeRun($.runId,$.fenceToken)}catch(K){if(K instanceof pn){if(await CK$(Z,$.runId,$.fenceToken)){await Z.clearSynthesizedError($.runId,$.fenceToken),await Z.purgeRun($.runId,$.fenceToken);return}let U=`stream truncated before projection could replay it: ${K.message}`;if(uw0($.runId,Q),await Z.markRunFailed($.runId,Q,U,"projection"))await Z.recordFailed({runId:$.runId,orgId:Q,distinctId:Y,reason:U,kind:"projection"});await Z.purgeRun($.runId,$.fenceToken);return}let W=K instanceof yw0;if(W&&await CK$(Z,$.runId,$.fenceToken)){await Z.purgeRun($.runId,$.fenceToken);return}let N=W?QW4(K.idleTimeoutMs):K instanceof Error?K.message:String(K),H=W?"liveness":"projection";if(uw0($.runId,Q),await Z.markRunFailed($.runId,Q,N,H))await Z.recordFailed({runId:$.runId,orgId:Q,distinctId:Y,reason:N,kind:H});if(W)await Z.clearSynthesizedError($.runId,$.fenceToken);throw K}}async function JW4($,Z){let X=await Z.resolveRun($.runId);if(!X)return{skip:"missing"};if(Bp0({status:X.status,runFenceToken:X.runFenceToken,fenceToken:$.fenceToken}))return{skip:"stale",row:X};if(X.version!==2)return{skip:"legacy-v1",row:X};return{row:X}}var Op0=null,YW4;var Dp0=B(()=>{wK$();qK$();hw0();kK$();SK$();Jp0();YW4=new wp0});function yK$($,Z){switch($.type){case"START":{let X={type:"RUN_STARTED",taskId:$.taskId,orgId:$.orgId,userId:$.userId,abortController:$.abortController,runConfig:$.runConfig,podId:$.podId,messageId:$.messageId};if(Z?.status.tag==="running")return[{type:"PREVIOUS_RUN_ABORTED",taskId:$.taskId,orgId:Z.orgId},X];return[X]}case"STEP_DONE":{if(Z?.status.tag!=="running")return[];return[{type:"STEP_COMPLETED",taskId:$.taskId,orgId:Z.orgId,stepCount:Z.status.stepCount+1}]}case"FINISH":{if(Z==null||Z.status.tag!=="running")return[];let{stepCount:X}=Z.status;if($.threadStatus==="completed")return[{type:"RUN_COMPLETED",taskId:$.taskId,orgId:Z.orgId,stepCount:X}];if($.threadStatus==="requires_action")return[{type:"RUN_REQUIRES_ACTION",taskId:$.taskId,orgId:Z.orgId,stepCount:X}];return[{type:"RUN_FAILED",taskId:$.taskId,orgId:Z.orgId,reason:"error"}]}case"CANCEL":{if(Z?.status.tag!=="running")return[];return[{type:"RUN_FAILED",taskId:$.taskId,orgId:Z.orgId,reason:"cancelled"}]}case"RESUME":{if(Z?.status.tag==="running")return[];return[{type:"RUN_RESUMED",taskId:$.taskId,orgId:$.orgId,userId:$.userId,abortController:$.abortController,podId:$.podId}]}case"FORCE_FAIL":{if($.reason==="ghost")return[{type:"RUN_FAILED",taskId:$.taskId,orgId:Z?.orgId??$.orgId,reason:$.reason,expectedFenceToken:$.expectedFenceToken??null}];if(Z?.status.tag!=="running")return[];return[{type:"RUN_FAILED",taskId:$.taskId,orgId:Z.orgId,reason:$.reason}]}}}function gK$($,Z,X=new Date){switch(Z.type){case"RUN_STARTED":return{taskId:Z.taskId,orgId:Z.orgId,userId:Z.userId,status:{tag:"running",abortController:Z.abortController,stepCount:0,startedAt:X}};case"RUN_RESUMED":return{taskId:Z.taskId,orgId:Z.orgId,userId:Z.userId,status:{tag:"running",abortController:Z.abortController,stepCount:0,startedAt:X}};case"STEP_COMPLETED":if($?.status.tag!=="running")return $;return{...$,status:{...$.status,stepCount:Z.stepCount}};case"RUN_COMPLETED":return;case"RUN_REQUIRES_ACTION":return;case"RUN_FAILED":return;case"PREVIOUS_RUN_ABORTED":return}}async function hK$($,Z,X,G){let{storage:Q,sseHub:Y}=G,J=await Q.get($,Z);Y.emit(Z,l3($,X,{virtualMcpId:J?.virtual_mcp_id??void 0,createdBy:J?.created_by,triggerId:J?.trigger_id,title:J?.title,branch:J?.branch??null,createdAt:J?.created_at,updatedAt:J?.updated_at})),Y.emit(Z,N00($,X))}async function WW4($,Z){let{storage:X,sseHub:G}=Z;switch($.type){case"RUN_STARTED":{await X.update($.taskId,$.orgId,{status:"in_progress",run_config:$.runConfig??null,run_started_at:new Date().toISOString(),last_progress_at:null,failure_reason:null,failure_kind:null});let Q=await X.get($.taskId,$.orgId);G.emit($.orgId,l3($.taskId,"in_progress",{virtualMcpId:Q?.virtual_mcp_id??void 0,createdBy:Q?.created_by,triggerId:Q?.trigger_id,title:Q?.title,branch:Q?.branch??null,createdAt:Q?.created_at,updatedAt:Q?.updated_at,messageId:$.messageId}));return}case"RUN_RESUMED":{await X.update($.taskId,$.orgId,{status:"in_progress",run_started_at:new Date().toISOString(),last_progress_at:null,failure_reason:null,failure_kind:null});let Q=await X.get($.taskId,$.orgId);G.emit($.orgId,l3($.taskId,"in_progress",{virtualMcpId:Q?.virtual_mcp_id??void 0,createdBy:Q?.created_by,triggerId:Q?.trigger_id,title:Q?.title,branch:Q?.branch??null,createdAt:Q?.created_at,updatedAt:Q?.updated_at}));return}case"STEP_COMPLETED":G.emit($.orgId,VV0($.taskId,$.stepCount));return;case"RUN_COMPLETED":await hK$($.taskId,$.orgId,"completed",Z);return;case"RUN_REQUIRES_ACTION":await hK$($.taskId,$.orgId,"requires_action",Z);return;case"RUN_FAILED":{if($.reason==="ghost"){if(!await X.forceFailIfInProgress($.taskId,$.orgId,$.expectedFenceToken))return;await X.update($.taskId,$.orgId,{run_config:null,run_started_at:null})}else{if(!await X.forceFailIfInProgress($.taskId,$.orgId))return;await X.update($.taskId,$.orgId,{run_config:null,run_started_at:null,...$.reason==="reaped"?{failure_reason:KW4,failure_kind:"stall"}:{}})}let Q=await X.get($.taskId,$.orgId);G.emit($.orgId,l3($.taskId,"failed",{virtualMcpId:Q?.virtual_mcp_id??void 0,createdBy:Q?.created_by,triggerId:Q?.trigger_id,title:Q?.title,branch:Q?.branch??null,createdAt:Q?.created_at,updatedAt:Q?.updated_at})),G.emit($.orgId,N00($.taskId,"failed"));return}case"PREVIOUS_RUN_ABORTED":return}}async function uK$($,Z){for(let{event:X}of $)await WW4(X,Z)}var KW4="Run stalled \u2014 no progress within the idle timeout window";var cK$=B(()=>{O8()});function lK$($){return $.now-$.lastProgressAt>$.idleTimeoutMs}function dK$($){return Math.max($.persistedLastProgressAt??Number.NEGATIVE_INFINITY,$.currentRunStartedAt)}class Ep0{deps;clock;states=new Map;reaperTimer=null;constructor($,Z=()=>new Date){this.deps=$;this.clock=Z;this.reaperTimer=setInterval(()=>{this.reapStaleRuns().catch((X)=>{console.error("[RunRegistry] Reaper sweep failed",X)})},NW4)}async execute($){let Z=this.dispatch($);return await this.react(Z),Z}dispatch($){let Z=this.states.get($.taskId),X=yK$($,Z),G=[];for(let Q of X){let Y=this.states.get(Q.taskId);if(Q.type==="PREVIOUS_RUN_ABORTED"||Q.type==="RUN_FAILED"){if(Y?.status.tag==="running")Y.status.abortController.abort()}let J=gK$(Y,Q,this.clock());if(J===void 0)this.states.delete(Q.taskId);else this.states.set(Q.taskId,J);if(G.push({event:Q,state:J}),HW4.has(Q.type))mK$().add(1,{"org.id":Q.orgId});else if(FW4.has(Q.type)&&Y?.status.tag==="running")mK$().add(-1,{"org.id":Q.orgId})}return G}react($){return uK$($,this.deps)}getAbortSignal($){let Z=this.states.get($);if(Z?.status.tag==="running")return Z.status.abortController.signal;return null}isRunning($){return this.states.get($)?.status.tag==="running"}async stopAll(){for(let[,$]of this.states)if($.status.tag==="running")$.status.abortController.abort();this.states.clear()}dispose(){if(this.reaperTimer)clearInterval(this.reaperTimer),this.reaperTimer=null}async reapStaleRuns(){let $=this.clock().getTime(),Z=[...this.states].filter(([,X])=>X.status.tag==="running");for(let[X,G]of Z){if(this.states.get(X)?.status.tag!=="running")continue;let Y;try{let K=await this.deps.storage.getProgress(X,G.orgId);Y=dK$({persistedLastProgressAt:K?.lastProgressAt??null,currentRunStartedAt:G.status.startedAt.getTime()})}catch(K){console.warn(`[RunRegistry] Reaper progress read failed for ${X}; skipping`,K);continue}if(!lK$({lastProgressAt:Y,now:$,idleTimeoutMs:cw0}))continue;let J=await this.deps.storage.get(X,G.orgId).catch(()=>null);if(J&&J.status!=="in_progress"){let K=this.states.get(X);if(K?.status.tag==="running")K.status.abortController.abort();this.states.delete(X);continue}console.warn(`[RunRegistry] Reaping stuck run for thread ${X} (idle > ${cw0/60000}m) ...`),UW4().add(1,{"org.id":G.orgId,reason:"idle_timeout"}),await this.execute({type:"FORCE_FAIL",taskId:X,reason:"reaped"}).catch((K)=>{console.error("[RunRegistry] Reaper execute failed",K)})}}}var NW4=300000,Lp0,cw0,HW4,FW4,iK$=($)=>{let Z;return()=>Z??=$()},mK$,UW4;var zp0=B(()=>{cK$();G5();Lp0=Number(process.env.RUN_IDLE_TIMEOUT_MS),cw0=Number.isFinite(Lp0)&&Lp0>0?Lp0:600000,HW4=new Set(["RUN_STARTED","RUN_RESUMED"]),FW4=new Set(["RUN_COMPLETED","RUN_FAILED","RUN_REQUIRES_ACTION","PREVIOUS_RUN_ABORTED"]),mK$=iK$(()=>Q8.createUpDownCounter("decopilot.stream.inflight",{description:"Number of in-flight decopilot stream requests",unit:"{requests}"})),UW4=iK$(()=>Q8.createCounter("decopilot.run.reaped",{description:"Number of decopilot runs force-failed by the progress-based reaper",unit:"{runs}"}))});async function nK$($){let{runId:Z}=$,X=bK$(),G=await X.resolveRun(Z),Q=$.fenceToken??G?.runFenceToken;if(!G||G.version!==2||Q==null)return;if(Bp0({status:G.status,runFenceToken:G.runFenceToken,fenceToken:Q}))return;if(!X.getJetStream())throw Error("JetStream unavailable for consume step");await xK$({runId:Z,fenceToken:Q,messageId:$.messageId,idleTimeoutMs:$.idleTimeoutMs??cw0},X,fK$)}var pK$=B(()=>{Dp0();zp0()});var lw0,yw,tK$=()=>({active:yw.active,pending:yw.pending,max:lw0}),oK$=($)=>{if(yw.active>=lw0)console.log("[hostedHarness] run parked at concurrency cap",{active:yw.active,pending:yw.pending,max:lw0}),$?.();return yw.acquire()};var jp0=B(()=>{Vn0();f$();G5();lw0=n0().decopilotMaxConcurrentHostedRuns,yw=Sn0(lw0);Q8.createObservableGauge("hosted_runs.active",{description:"Hosted agent-loop runs executing on this pod",unit:"{runs}"}).addCallback(($)=>$.observe(yw.active));Q8.createObservableGauge("hosted_runs.pending",{description:"Hosted agent-loop runs parked waiting for a slot on this pod",unit:"{runs}"}).addCallback(($)=>$.observe(yw.pending))});import{DBOS as LV}from"@dbos-inc/dbos-sdk";function Tp0($){Pp0=$}function aK$(){if(!Pp0)throw Error("[hostedHarness] runtime not initialized \u2014 setHostedHarnessRuntime() must run before workflows fire");return Pp0}async function wW4($,Z){let X=aK$(),{request:G}=$,Q=Z??await X.studioContextFactory(G.organizationId,G.userId);if(!Q)throw Error("user membership lost mid-dispatch");if(G.runMetadata)Q.metadata.runMetadata=G.runMetadata;let Y=new AbortController,J=!1,K=new mn({emit:()=>rK$(X,$)}),W=await oK$(()=>{J=!0,rK$(X,$),K.arm()}).finally(()=>K.stop());try{if(J&&await OW4($))throw Error("run cancelled while queued for a free runner");if(_x(Q,"in_progress",$.threadId),!G.runMetadata?.taskBoardItemId)kJ$(Q,$.threadId);await X.dispatchRunFn({...G,abortSignal:Y.signal},Q,X.deps)}finally{W()}}async function OW4($){try{return(await LV.getWorkflowStatus(Rp0($.runId,$.fenceToken)))?.status==="CANCELLED"}catch(Z){return console.error(`[hostedHarness] could not read child status for run=${$.runId} fence=${$.fenceToken}`,Z),!1}}function BW4($,Z,X,G=1){let Q=X instanceof Error?X.message:String(X);return{messageId:fw($,Z),errorChunk:{type:"error",errorText:Q},seq:G,finalSeq:G}}function DW4($){if(!($ instanceof Error))return;let Z=$.lastAckSeq;return typeof Z==="number"?Z+1:void 0}async function LW4($,Z){let X=aK$(),{streamBuffer:G}=X.deps,{messageId:Q,errorChunk:Y,seq:J,finalSeq:K}=BW4($.runId,$.fenceToken,Z,DW4(Z));if(!G){console.error(`[hostedHarness] no streamBuffer configured; dropping terminal error for run=${$.runId} fence=${$.fenceToken} messageId=${Q}`);return}if(!await G.publishRawChunk($.runId,Y,{fenceToken:$.fenceToken,seq:J})){console.error(`[hostedHarness] failed to publish terminal error chunk for run=${$.runId} fence=${$.fenceToken} messageId=${Q}`);return}await G.publishDone($.runId,$.fenceToken,K)}async function EW4($){try{await LV.runStep(()=>wW4($),{name:"runHostedHarness",retriesAllowed:!1})}catch(Z){await LV.runStep(()=>LW4($,Z),{name:"publishHostedHarnessFailure",retriesAllowed:!0}).catch((X)=>{console.error(`[hostedHarness] could not publish terminal error for run=${$.runId} fence=${$.fenceToken}`,X)})}}function Rp0($,Z){return`decopilot-hosted:${$}:${Z}`}async function sK$($){return{workflowID:(await LV.startWorkflow(zW4,{workflowID:Rp0($.runId,$.fenceToken),queueName:BW,enqueueOptions:{queuePartitionKey:$.threadId}})($)).workflowID}}async function Ip0($,Z){await LV.cancelWorkflow(Rp0($,Z))}var Ap0=1,Pp0=null,rK$=($,Z)=>K3($.deps.streamBuffer,Z.runId,"waiting-capacity"),zW4;var qp0=B(()=>{Kp0();gx();jp0();bX();zW4=LV.registerWorkflow(EW4,{name:"hostedHarnessWorkflow",maxRecoveryAttempts:1000})});import{DBOS as cx}from"@dbos-inc/dbos-sdk";function Sp0($){Np0($)}function Vp0($){Mp0=$}function jW4(){if(!Mp0)throw Error("[threadGate] runtime not initialized \u2014 setThreadGateRuntime() must run before workflows fire");return Mp0}function PW4($,Z=qw0){let X=$.runFenceToken;if(X)return{runFenceToken:X,claimedRequest:$,shouldPersistFence:!1};let G=Z();return{runFenceToken:G,claimedRequest:{...$,runFenceToken:G},shouldPersistFence:!0}}async function AW4($){let Z=jW4(),{request:X}=$,G=X.taskId??$.threadId;if(t3$({harnessId:X.harnessId}))await K3(Z.deps.streamBuffer,G,"starting-run");let Q=await Z.studioContextFactory(X.organizationId,X.userId);if(!Q)throw Error("user membership lost mid-dispatch");Sp0(X.harnessId);let Y=X.taskId??$.threadId,{runFenceToken:J,claimedRequest:K,shouldPersistFence:W}=PW4(X);if(W)await Q.storage.threads.setRunFence(Y,J);return{runFenceToken:J,hostedEnqueue:{runId:G,fenceToken:J,threadId:$.threadId,request:K}}}async function TW4($){if($.source!=="user-message")return;let{request:Z}=$;x1.capture({distinctId:Z.userId,event:"chat_message_started",groups:{organization:Z.organizationId},properties:{organization_id:Z.organizationId,agent_id:Z.agent,mode:Z.mode,thread_id:Z.taskId??$.threadId,credential_id:Z.models.credentialId}})}async function RW4($,Z){if($.source!=="user-message")return;let{request:X}=$;x1.capture({distinctId:X.userId,event:"chat_message_failed",groups:{organization:X.organizationId},properties:{organization_id:X.organizationId,thread_id:X.taskId??$.threadId,agent_id:X.agent,model_id:X.models.thinking.id,mode:X.mode,error_category:"setup",error_message:Z}})}async function dw0($){Sp0($.request.harnessId),await cx.runStep(()=>TW4($),{name:"trackMessageStarted"});let Z;try{Z=await cx.runStep(()=>AW4($),{name:"dispatchRunAndWait",retriesAllowed:!0}),await sK$(Z.hostedEnqueue)}catch(Q){let Y=Q instanceof Error?Q.message:String(Q);throw await cx.runStep(()=>RW4($,Y),{name:"trackMessageFailed"}),Q}let X=$.request.taskId??$.threadId,G="messages"in $.request?void 0:$.request.messageId;return await cx.runStep(()=>nK$({runId:X,fenceToken:Z.runFenceToken,messageId:G}),{name:"consumeRunProjection"}),{taskId:$.request.taskId??$.threadId}}async function IW4($){return dw0($)}async function eN($,Z){return Sp0($.request.harnessId),{workflowID:(await cx.startWorkflow(qW4,{queueName:mY,enqueueOptions:{queuePartitionKey:$.threadId},workflowID:Z?.workflowID})($)).workflowID}}var kp0=1,Mp0=null,qW4;var eK$=B(()=>{_w0();B6();gx();pK$();qp0();qW4=cx.registerWorkflow(IW4,{name:"threadGateWorkflow",maxRecoveryAttempts:1000})});var DV=B(()=>{eK$();qp0()});async function tn($,Z,X){let G=Z.organizationId,Q=Z.assignedBy??Z.createdBy,Y=X.harnessId??"decopilot",J=await l7($,"smart"),K=RB(G),W=await $.storage.threads.create({organization_id:G,title:X.title,status:"in_progress",virtual_mcp_id:K,message_storage_version:2,harness_id:Y,sandbox_provider_kind:"agent-sandbox",created_by:Q}),N={...W.metadata??{},...JV(Y)?{read_only:!0}:{},...X.repo?{githubRepo:{url:X.repo.url,owner:X.repo.owner,name:X.repo.name,installationId:X.repo.installationId,connectionId:X.repo.connectionId}}:{}};await $.storage.threads.update(W.id,{metadata:N,...X.repo?{branch:Vn(W.id,X.repo.connectionId)}:{},updated_by:Q}),await $.storage.taskBoard.linkThread(Z.id,W.id,G);let H={id:crypto.randomUUID(),role:"user",parts:[{type:"text",text:X.prompt}]};return await new t7({storage:$.storage.threads.messageParts(),orgId:G,threadId:W.id,runId:W.id}).emitRequestMessage(H),await eN({threadId:W.id,source:"background-tool",request:{messages:[H],models:{credentialId:J.credentialId,thinking:{id:J.modelId,title:J.modelMeta.title}},agent:{id:K},temperature:X.temperature,toolApprovalLevel:"auto",mode:"default",organizationId:G,userId:Q,harnessId:Y,sandboxProviderKind:"agent-sandbox",taskId:W.id,runMetadata:{taskBoardItemId:Z.id}}}),{threadId:W.id}}var Cp0=B(()=>{Gw();DV();vw();O8();gK();dU0()});function MW4($){let Z=new Map($.map((Y)=>[Y.id,Y])),X=new Map;for(let Y of tU0($)){let J=$W$(Y.owner,Y.repo);X.set(J,[...X.get(J)??[],Y])}if(X.size!==1)return null;let G=[...X.values()][0],Q=G.find((Y)=>{let J=Z.get(Y.connectionId);return J?i60(J):!1})??G[0];return{connectionId:Q.connectionId,owner:Q.owner,name:Q.repo,installationId:Q.installationId,url:`https://github.com/${Q.owner}/${Q.repo}`}}async function ZW$($,Z){try{let{items:X}=await $.storage.connections.list(Z,{slug:"mcp-github"}),G=MW4(X);if(!G){let Q=tU0(X),Y=new Set(Q.map((J)=>$W$(J.owner,J.repo)));console.warn(`[task-board] claude-code skipped for org ${Z}: ${Y.size} importable repos (needs exactly 1) \u2014 running Decopilot`)}return G}catch(X){return console.warn("[task-board] repo lookup for claude-code failed",X),null}}async function XW$($,Z){try{return(await $.storage.organizationSettings.get(Z))?.flags?.claude_code_sandbox_enabled===!0}catch(X){return console.warn("[task-board] org flag lookup failed",X),!1}}function GW$($,Z,X){let G=["You've been assigned this task. Complete it and finish with a pull request.","","You are running AUTONOMOUSLY \u2014 no human is watching, so drive this to "+"completion yourself. Make reasonable decisions and move on; do not stop to ask for confirmation.","",`Title: ${$.title}`];if($.description)G.push("","Description:",$.description);if(G.push("",`The repository ${Z.owner}/${Z.name} is already cloned at your working directory, on its own branch. \`git\` and \`gh\` are authenticated.`,""),X?.resolveConflict&&X.pr)G.push(`Pull request #${X.pr.number} (${X.pr.url}) is approved but has a MERGE CONFLICT with its base branch.`,`Check that branch out (\`gh pr checkout ${X.pr.number}\`), merge or rebase the base branch into it, resolve the conflicts, and push to update the SAME pull request \u2014 do NOT open a new one. Resolve by preserving BOTH sides' intent; never blindly discard either side, and change only what the conflict requires.`,"");else if(X?.feedback)G.push(X.pr?`A reviewer requested changes on pull request #${X.pr.number} (${X.pr.url}):`:"A reviewer requested changes on your previous work:",X.feedback,X.pr?`Check that branch out (\`gh pr checkout ${X.pr.number}\`) before editing, address the feedback, then push to update the SAME pull request \u2014 do NOT open a new one.`:"Address this feedback.","");return G.push("How to finish:","- Make the change, commit it, push the branch, and open a pull request"+(X?.pr?" \u2014 or push to the existing one, per the instruction above.":"."),"- Change only what the task needs. Don't refactor around it.",`- Then move this task to review on the board: call \`mcp__studio__TASK_BOARD_ITEM_UPDATE\` with id "${$.id}" and status "in_review". Pass ONLY the fields you are changing.`,"- If the task turns out to need no code change, say why in your final message and move it to review anyway so a human can close it out.","",`(task id: ${$.id})`),G.join(`
|
|
1543
|
+
`).trim();return{models:$.models,agent:$.agent,temperature:$.temperature,toolApprovalLevel:$.toolApprovalLevel,...$.toolAllowlist!==void 0?{toolAllowlist:$.toolAllowlist}:{},...$.maxAgentSteps!==void 0?{maxAgentSteps:$.maxAgentSteps}:{},...$.isSubagent!==void 0?{isSubagent:$.isSubagent}:{},...$.subtaskJobId!==void 0?{subtaskJobId:$.subtaskJobId}:{},...$.resumedFromBackground!==void 0?{resumedFromBackground:$.resumedFromBackground}:{},mode:$.mode,...$.windowSize!==void 0?{windowSize:$.windowSize}:{},...$.triggerId!==void 0?{triggerId:$.triggerId}:{},...$.runMetadata!==void 0?{runMetadata:$.runMetadata}:{},branch:Z.branch??$.branch??null,sandboxProviderKind:$.sandboxProviderKind,harnessId:$.harnessId,organizationId:$.organizationId,userId:$.userId,taskId:$.taskId,messageId:Z.messageId,...Z.runFenceToken!==void 0?{runFenceToken:Z.runFenceToken}:{},...$.isResume!==void 0?{isResume:$.isResume}:{},...X?{systemContext:X}:{}}}function gK4($,Z){let X=$.find((G)=>G.id===Z);if(!X)throw new Qw("empty_request",`Persisted request message missing for messageId=${Z}`);if(X.role==="system")throw new Qw("empty_request",`Persisted message ${Z} has role=system; expected non-system request message`);return X}function hK4($){let Z=$.models;return{"decopilot.agent.id":$.agent.id,"decopilot.model.id":Z.thinking.id,"decopilot.credential.id":Z.credentialId,"decopilot.organization.id":$.organizationId,"decopilot.user.id":$.userId,"decopilot.thread.id":$.taskId??""}}async function HK$($,Z,X){return M81("decopilot.dispatchRunAndWait",async(G)=>{let{taskId:Q,uiStream:Y,registrySignal:J}=await lK4($,Z,X,G),K=X.streamBuffer,W=K?await K.createTailStream(Q,$.abortSignal,{deliverPolicy:"new",closeOnDone:!0}):null;if(K&&W){let N=K.pump(Y,Q,J,$.organizationId);N.catch(()=>{});let H=W.getReader();try{while(!0){let{done:F}=await H.read();if(F)break}}finally{H.releaseLock()}await N}else{if(K)console.warn(JSON.stringify({msg:"decopilot-stream-diag",event:"producer-fallback-no-pump",taskId:Q,hasTail:!!W,note:"createTailStream returned null \u2014 draining producer stream directly; projector persistence depends on streamBuffer publish health"}));let N=Y.getReader();try{while(!0){let{done:H}=await N.read();if(H)break}}finally{N.releaseLock()}}return{taskId:Q}},hK4($))}async function uK4($,Z,X,G){let[Q,Y,J]=await Promise.all([$.storage.threads.list(G,{limit:9,agentId:X}).catch(()=>null),$.storage.interests.getForAgent(Z,X,G).catch(()=>null),$.storage.virtualMcps.list(Z).catch(()=>null)]),K={};if(Q&&Q.total>0)K.recentThreads={total:Q.total,threads:Q.threads.map((W)=>({id:W.id,title:W.title,updated_at:W.updated_at}))};if(Y&&Y.interests.length>0)K.interests=Y.interests.map((W)=>({title:W.title,summary:W.summary}));if(J)K.agents=J.map((W)=>({id:W.id,name:W.title,description:W.description,status:W.status}));return K}async function cK4({virtualMcp:$,agentId:Z,organizationId:X,ctx:G}){return u$0({virtualMcp:$,agentId:Z,organizationId:X,ctx:G})}async function lK4($,Z,X,G){let{runRegistry:Q,streamBuffer:Y}=X;Np0($.harnessId);let J=$.harnessId;if(await yK4(J,$.organizationId,Z),!WK$($))$={...$,messages:$.messages.map((N)=>N.id?N:{...N,id:qd()})};let K=!1,W;try{let N=$.models;G.setAttribute("decopilot.harnessId",J),Z.sandboxPreference="agent-sandbox",G.setAttribute("decopilot.dispatchTarget.sandboxProviderKind","agent-sandbox");let H=Sw0({harnessId:J,sandboxProviderKind:"agent-sandbox"}),F=GK$(N),U=await N3(Z.db,$.organizationId,Z.organization?.role??Z.auth.user?.role);if(!W3(U,F.thinking.credentialId,F.thinking.id))throw Error("Model not allowed for your role");F=Vw0(U,F);let w=$.windowSize??FY;if(!$.taskId)throw Error("dispatchRunAndWait: taskId is required");if(H)await K3(Y,$.taskId,dn[0]);let O=(s0)=>s0?xK4(Z,$.organizationId,s0.credentialId,s0.id):Promise.resolve(void 0),[D,L,E,z,j,A,P,I,V]=await Promise.all([Z.storage.virtualMcps.findById($.agent.id,$.organizationId),O(F.thinking),O(F.fast),O(F.smart),O(F.image),O(F.webSearch),O(F.deepResearch),Mw0(Z.storage.threads,{organization_id:$.organizationId,thread_id:$.taskId,userId:$.userId,defaultWindowSize:w}),uK4(Z,$.organizationId,$.agent.id,$.userId)]);if(H)await K3(Y,$.taskId,dn[1]);let k=L?{thinking:L,...E?{fast:E}:{},...z?{smart:z}:{},...j?{image:j}:{},...A?{webSearch:A}:{},...P?{deepResearch:P}:{}}:void 0,_=L?v50(L):null;if(W=I.thread.id,Z.metadata.threadId=I.thread.id,G.setAttribute("decopilot.thread.id",I.thread.id),I.thread.created_by!==$.userId)throw Error("You are not allowed to write to this thread because you are not the owner");if(_?.asyncResearch){let s0=[["thinking",F.thinking.id]];if(F.fast)s0.push(["fast",F.fast.id]);if(F.smart)s0.push(["smart",F.smart.id]);if(F.image)s0.push(["image",F.image.id]);for(let[n,U0]of s0)if(_.asyncResearch.canHandle(U0))throw Error(`Model "${U0}" can only be used as a Deep Research model. It is not usable as the ${n} model \u2014 set it in the Deep Research slot instead.`)}let b=I.thread.message_storage_version===2?new t7({storage:Z.storage.threads.messageParts(),orgId:$.organizationId,threadId:I.thread.id,runId:I.thread.id}):null;if(!D)throw new Qw("agent_not_found","Agent not found");let x=await cK4({virtualMcp:D,agentId:$.agent.id,organizationId:$.organizationId,ctx:Z});if($.isResume)await Q.execute({type:"RESUME",taskId:I.thread.id,orgId:$.organizationId,userId:$.userId,abortController:new AbortController,podId:Wp0()});else await Q.execute({type:"START",taskId:I.thread.id,orgId:$.organizationId,userId:$.userId,abortController:new AbortController,podId:Wp0(),runConfig:{models:$.models,agent:$.agent,temperature:$.temperature,toolApprovalLevel:$.toolApprovalLevel,mode:$.mode,windowSize:$.windowSize,triggerId:$.triggerId},messageId:$.messageId});K=!0,await Z.storage.threads.clearCancelRequested(I.thread.id);let p;if($.runFenceToken)p=$.runFenceToken;else p=qw0(),await Z.storage.threads.setRunFence(I.thread.id,p);let d=Q.getAbortSignal(I.thread.id);if(!d)throw await Q.execute({type:"FINISH",taskId:I.thread.id,threadStatus:"failed"}),Error("Run was cancelled immediately after starting");if($.abortSignal){let s0=$.abortSignal;if(s0.aborted)await Q.execute({type:"CANCEL",taskId:I.thread.id});else s0.addEventListener("abort",()=>{Q.execute({type:"CANCEL",taskId:I.thread.id}).catch(()=>{})},{once:!0})}if(!$.isResume)Y?.purge(I.thread.id);let J0=[],O0,T0;if(WK$($)){if(T0=await I.loadHistory(w),O0=gK4(T0,$.messageId),$.systemContext)J0=[{id:`system-${$.messageId}`,role:"system",parts:[{type:"text",text:$.systemContext}]}]}else{J0=$.messages.filter((n)=>n.role==="system");let s0=$.messages.find((n)=>n.role!=="system");if(O0=s0?(await Zw0([s0],Z,{threadId:I.thread.id})).find((n)=>n.role!=="system"):void 0,!$.isResume){if(!O0)throw new Qw("empty_request","No user message found in input \u2014 expected at least one non-system message");if(b)await b.emitUserMessage(O0).catch((n)=>{console.error("[decopilot:stream] v2 user-message emit failed",n)})}}if(O0)await a3$(Y,I.thread.id,O0);let s=[],o=Z.organization,A0=Date.now(),X0=O0?(await Xw0([O0],Z))[0]:void 0;if(!X0||!O0)throw new Qw("empty_request","No user message found in input \u2014 expected at least one non-system message");n3$($.models,[X0]);let E0=await m3$({ctx:Z,threadId:I.thread.id,userMessage:O0,windowSize:w,isSubagent:$.isSubagent===!0,systemMessages:J0}),V0={url:"",headers:{},expiresAt:0},g0=void 0,Z0=void 0,B0={cwd:null},j0=typeof x.metadata?.instructions==="string"?x.metadata.instructions:void 0,q0={taskId:$.taskId,isSubagent:$.isSubagent,subtaskJobId:$.subtaskJobId,resumedFromBackground:$.resumedFromBackground,virtualMcp:x,branch:$.branch,messages:E0,modelSources:k,mcpSource:g0,objectStorageSource:Z0,userContext:V},r={harnessId:J,threadId:I.thread.id,userMessage:X0,harness:{sessionId:void 0},workspace:B0,models:F,mcp:V0,mode:$.mode,temperature:$.temperature,toolApprovalLevel:$.toolApprovalLevel,toolAllowlist:$.toolAllowlist??null,maxAgentSteps:$.maxAgentSteps,user:{id:$.userId,email:Z.auth.user?.email??""},organizationId:$.organizationId,organizationSlug:o.slug,agent:{id:$.agent.id,instructions:j0},triggerId:$.triggerId,currentThreadTitle:I.thread.title,runFenceToken:p};if(H)await K3(Y,$.taskId,dn[2]);let $0=JV(J),M0=$0?await Z.storage.threads.getAckedSeq(I.thread.id):0;if(M0>0)console.log("[dispatch] resuming a sandbox-hosted turn",{runId:I.thread.id,fromSeq:M0});let K0=async function*(){let s0={...r,signal:d};if(vd0(s0,q0),H)await K3(Y,I.thread.id,dn[3]);yield*($0?new Hn0({ctx:Z,harnessId:J,virtualMcpId:x.id,...M0>0?{resume:{reason:"the Studio process driving the previous attempt stopped"}}:{},branch:await xQ$(Z,{threadId:I.thread.id,agentRepo:x.metadata?.githubRepo,runBranch:$.branch}),credential:L?{providerId:L.providerId,apiKey:L.apiKey,...L.baseUrl?{baseUrl:L.baseUrl}:{}}:null}):new yd0({ctx:Z,harnessId:J})).dispatch(s0)},F0=bK4(()=>fK4({runId:I.thread.id,fenceToken:p,streamBuffer:Y??{publishRawChunk:async()=>!1,publishDone:async()=>!1},chunks:e3$(K0()),...$0?{startSeq:M0,initialAckSeq:M0,onPublished:(s0)=>Z.storage.threads.bumpAckedSeq(I.thread.id,p,s0)}:{},errorMessageId:fw(I.thread.id,p),loadOriginalMessages:b?async()=>(await Z.storage.threads.messageParts().loadWindow(I.thread.id,{limit:1})).messages.map(kw0):void 0,title:{currentThreadTitle:I.thread.title,threadId:I.thread.id,persistTitle:async(s0,n)=>{await Z.storage.threads.update(s0,{title:n})}},hooks:{onStep:()=>{let s0=Q.dispatch({type:"STEP_DONE",taskId:I.thread.id});s.push(Q.react(s0).catch((n)=>{console.error("[decopilot:stream] onStepFinish reactor failed",n)}))},onFinish:async(s0,n)=>{let U0=s.length,L0=performance.now();if(await Promise.allSettled(s),YK$.record(performance.now()-L0,{phase:"settle"}),d.aborted)return;await w8(0);let $1=JK$?EO():null,R1=performance.now(),N8=Cw0(n,s0?.parts);await Q.execute({type:"FINISH",taskId:I.thread.id,threadStatus:N8});let x0=performance.now()-R1;if(YK$.record(x0,{phase:"save"}),JK$&&$1){let d1=EO()??$1,E8=-1;try{E8=JSON.stringify(s0)?.length??-1}catch{}console.warn(JSON.stringify({msg:"decopilot-finish-trace",threadId:I.thread.id,pendingOps:U0,saveMs:Math.round(x0),parts:s0?.parts?.length??0,messageBytes:E8,rssDelta:d1.rss-$1.rss,heapUsedDelta:d1.heapUsed-$1.heapUsed,externalDelta:d1.external-$1.external}))}},onError:(s0)=>{if(d.aborted){x1.capture({distinctId:$.userId,event:"chat_message_aborted",groups:{organization:$.organizationId},properties:{organization_id:$.organizationId,thread_id:I.thread.id,agent_id:$.agent.id,model_id:F.thinking.id,mode:$.mode,duration_ms:Date.now()-A0,is_resume:$.isResume??!1}});return}console.error("[decopilot] stream error:",dN(s0)),Q.execute({type:"FINISH",taskId:I.thread.id,threadStatus:"failed"}).catch((n)=>{console.error("[decopilot:stream] onError reactor failed",n)})}}}));return{taskId:I.thread.id,uiStream:F0,registrySignal:d}}catch(N){if(K&&W)Q.execute({type:"FINISH",taskId:W,threadStatus:"failed"}).catch((H)=>{console.error("[decopilot:stream] catch-block reactor failed",H)});throw N}}var YK$,JK$,KK$;var _w0=B(()=>{Il0();B6();X6$();dU0();gK();pv();l3$();Kx();ql0();qU();i3$();vw();Jp0();Cx();p3$();gx();Gp0();$K$();hx();G5();QK$();L5();YK$=Q8.createHistogram("decopilot.finish.duration",{description:"Wall time of onFinish flush segments, tagged by phase",unit:"ms"}),JK$=process.env.DECOPILOT_FINISH_TRACE==="1";KK$=["decopilot","claude-code"]});function FK$($){return o3$($)||r3$($)}async function dK4($){let Z=$.getReader();try{while(!0){let{done:X}=await Z.read();if(X)break}}finally{Z.releaseLock()}}function mK4($,Z){let X=$.getReader(),G=!1,Q=()=>{if(G)return;G=!0,X.releaseLock()};return new ReadableStream({async pull(Y){try{let{done:J,value:K}=await X.read();if(J)Q(),Y.close();else Y.enqueue(K)}catch(J){Z(J),Q(),Y.error(J)}},async cancel(Y){await X.cancel(Y),Q()}})}async function UK$($){if(!$.chunks&&!$.chunkStream)throw Error("projectChunks requires chunks or chunkStream");let Z=null,X=!1,G=void 0,Q={inputTokens:0,outputTokens:0,totalTokens:0},Y=[],J=null,K=(O)=>{if(J===null)J=O;throw O},W=$.chunks?async function*(){try{for await(let O of $.chunks){if(FK$(O))continue;yield O}}catch(O){throw Z=O,O}}():void 0,N=$.chunkStream?mK4($.chunkStream,(O)=>{Z=O}).pipeThrough(new TransformStream({transform(O,D){if(!FK$(O))D.enqueue(O)}})):void 0,H={emitStepParts:(O)=>$.persistence.emitStepParts(O).catch(K),emitFinal:(O)=>$.persistence.emitFinal(O).catch(K),emitError:(O,D)=>$.persistence.emitError(O,D).catch(K)},{uiStream:F,whenComplete:U}=zw0({chunks:W,chunkStream:N,originalMessages:$.originalMessages??[],title:$.title?{currentThreadTitle:$.title.currentThreadTitle,threadId:$.title.threadId,persistTitle:$.title.persistTitle}:{currentThreadTitle:void 0,threadId:"projector",persistTitle:async()=>{}},persistence:H,sanitizeErrorText:$.sanitizeErrorText,errorMessageId:$.errorMessageId,generateMessageId:$.generateMessageId,hooks:{onUsage:(O)=>{Q={inputTokens:O.inputTokens,outputTokens:O.outputTokens,totalTokens:O.totalTokens}},onError:()=>{X=!0},onFinish:(O,D)=>{G=D,Y=Array.isArray(O.parts)?O.parts.filter((L)=>L!=null&&typeof L==="object"&&("type"in L)):[]}}});if(await dK4(F).catch(()=>{}),await U,J!==null)throw J;if(Z!==null)throw Z;return{failed:X&&G===void 0,finishReason:G,usage:Q,finalParts:Y}}var wK$=B(()=>{Xp0();gx()});var nn=786432;function nK4($){if(/[.*>\s]/.test($))throw Error("Invalid NATS subject token")}function xw($){return nK4($),`${vw0}.${$}`}function OK$($){let Z=`${$.runId}:${$.fenceToken}:${$.seq}`;return $.fragmentIndex===void 0?Z:`${Z}:frag:${$.fragmentIndex}`}function pK4($){return`${$.runId}:${$.fenceToken}:done:${$.finalSeq}`}function BK$($){if(!$)return null;let Z=Number($);return Number.isInteger(Z)&&Z>0?Z:null}function tK4($){if(!$)return null;let Z=Number($);return Number.isInteger(Z)&&Z>=0?Z:null}function oK4($){if(!$)return null;let Z=$.split(":"),[X,G,Q,Y,J]=Z;if(!X||!G||!Q)return null;if(Q==="done"){let W=BK$(Y);return Z.length===4&&W!==null?{kind:"done",runId:X,fenceToken:G,finalSeq:W}:null}if(Q==="ckpt")return null;let K=BK$(Q);if(K===null)return null;if(Z.length===3)return{kind:"chunk",runId:X,fenceToken:G,seq:K,fragmentIndex:null};if(Z.length===5&&Y==="frag"){let W=tK4(J);return W===null?null:{kind:"chunk",runId:X,fenceToken:G,seq:K,fragmentIndex:W}}return null}function Fp0($,Z){let X=xw(Z.runId),G=Hp0.encode(JSON.stringify({p:$}));if(G.length>iK4)return[];if(G.length<=nn)return[{subject:X,data:G,msgId:Z.dedup?OK$({runId:Z.runId,...Z.dedup}):void 0}];let Q=Math.ceil(G.length/nn),Y=[];for(let J=0;J<Q;J++)Y.push({subject:X,data:G.slice(J*nn,(J+1)*nn),headers:{[DK$]:String(J),[LK$]:String(Q)},msgId:Z.dedup?OK$({runId:Z.runId,...Z.dedup,fragmentIndex:J}):void 0});return Y}function EK$($){return{subject:xw($.runId),data:Hp0.encode(JSON.stringify({done:!0,finalSeq:$.finalSeq})),msgId:pK4($)}}function zK$($){return{subject:xw($),data:Hp0.encode(JSON.stringify({done:!0}))}}function rK4($){let Z=$.reduce((Q,Y)=>Q+(Y?.length??0),0),X=new Uint8Array(Z),G=0;for(let Q of $){if(!Q)continue;X.set(Q,G),G+=Q.length}return X}function bw0(){let $=null;return new TransformStream({transform(Z,X){let G=Z.headers?.get(LK$);if(!G){X.enqueue(Z);return}let Q=Number(G),Y=Number(Z.headers?.get(DK$)??"0");if(Y===0)$={total:Q,received:0,parts:Array(Q)};else if(!$||$.total!==Q)return;if(!$.parts[Y])$.received++;if($.parts[Y]=Z.data,$.received<$.total)return;let J=rK4($.parts);$=null,X.enqueue({subject:Z.subject,data:J,headers:Z.headers})}})}function aK4($){return typeof $==="number"&&Number.isInteger($)&&$>0}function eK4($){let Z=oK4($.headers?.get("Nats-Msg-Id")||void 0),X;try{X=JSON.parse(sK4.decode($.data))}catch{return null}if(!X||typeof X!=="object")return null;let G=X;if(G.done===!0)return{kind:"done",runId:Z?.kind==="done"?Z.runId:null,fenceToken:Z?.kind==="done"?Z.fenceToken:null,envelopeFinalSeq:aK4(G.finalSeq)?G.finalSeq:null,msgIdFinalSeq:Z?.kind==="done"?Z.finalSeq:null};if("p"in G)return{kind:"chunk",seq:Z?.kind==="chunk"?Z.seq:null,runId:Z?.kind==="chunk"?Z.runId:null,fenceToken:Z?.kind==="chunk"?Z.fenceToken:null,chunk:G.p};return null}function fw0(){return new TransformStream({transform($,Z){let X=eK4($);if(X)Z.enqueue(X)}})}var vw0="decopilot.stream",DK$="Dp-Frag-Idx",LK$="Dp-Frag-Total",iK4=33554432,Hp0,sK4;var jK$=B(()=>{Hp0=new TextEncoder;sK4=new TextDecoder});var xw0=B(()=>{jK$()});var $H="DECOPILOT_STREAMS";var Up0=B(()=>{xw0()});function PK$($,Z){return new TransformStream({transform(X,G){if(X.runId!==$||X.fenceToken!==Z)return;G.enqueue(X)}})}function AK$(){let $=1;return new TransformStream({transform(Z,X){if(Z.kind==="done"){X.enqueue(Z);return}if(Z.seq===null){X.error(Error("projector chunk missing seq"));return}if(Z.seq<$)return;if(Z.seq>$){X.error(new pn($,Z.seq));return}$++,X.enqueue(Z)}})}function TK$($){let Z=$.getReader(),X=!1,G=0,Q=()=>{if(X)return;X=!0,Z.releaseLock()};return new ReadableStream({async pull(Y){for(;;){let{done:J,value:K}=await Z.read();if(J){await Z.cancel(),Q(),Y.error(Error("reader stopped before done"));return}let W=K;if(W.kind==="done"){if(!(W.envelopeFinalSeq!=null&&W.envelopeFinalSeq===W.msgIdFinalSeq))continue;if(W.envelopeFinalSeq!==G){await Z.cancel(),Q(),Y.error(new pn(G+1,null));return}await Z.cancel(),Q(),Y.close();return}G=W.seq??G,Y.enqueue(W.chunk);return}},async cancel(Y){await Z.cancel(Y),Q()}})}function $W4($){if(Symbol.asyncIterator in $)return $[Symbol.asyncIterator]();let Z=$[Symbol.iterator]();return{next:async()=>Z.next(),return:async(X)=>Z.return?Z.return(X):{done:!0,value:X}}}function gw0($){let Z=$W4($.messages),X=$.idleTimeoutMs,G=!1,Q=(Y)=>{if(G)return;G=!0,Z.return?.(Y).catch(()=>{}),$.onCancel?.()};return new ReadableStream({async pull(Y){if(X===void 0){let{done:H,value:F}=await Z.next();if(H){Y.close();return}Y.enqueue(F);return}let J=new AbortController,K=Z.next().then((H)=>{return J.abort(),H}),W=w8(X,{signal:J.signal}).then(()=>"idle").catch(()=>"cancelled"),N=await Promise.race([K,W]);if(N==="idle"){Y.error(new yw0(X));return}if(N==="cancelled")return;if(N.done){Y.close();return}Y.enqueue(N.value)},async cancel(Y){Q(Y)}})}var yw0,pn;var hw0=B(()=>{L5();yw0=class yw0 extends Error{idleTimeoutMs;constructor($){super("producer produced no output before timeout");this.idleTimeoutMs=$;this.name="StreamIdleTimeoutError"}};pn=class pn extends Error{expectedSeq;gotSeq;constructor($,Z){super(Z===null?`missing seq ${$} (stream ended at the fenced done)`:`missing seq ${$} (next delivered is ${Z})`);this.expectedSeq=$;this.gotSeq=Z;this.name="StreamGapError"}}});function ZW4($){let X=gw0({messages:$.messages,idleTimeoutMs:$.idleTimeoutMs,onCancel:$.onDone}).pipeThrough(bw0()).pipeThrough(fw0()).pipeThrough(PK$($.runId,$.fenceToken)).pipeThrough(AK$());return TK$(X)}async function IK$($){let X=await(await $.js.consumers.get($H,{filter_subjects:xw($.runId),deliver_policy:RK$.DeliverPolicy.All})).consume();async function*G(){try{for await(let Q of X)yield{subject:Q.subject,data:Q.data,headers:Q.headers}}finally{X.stop()}}return ZW4({messages:G(),runId:$.runId,fenceToken:$.fenceToken,idleTimeoutMs:$.idleTimeoutMs,onDone:()=>X.stop()})}var RK$;var qK$=B(()=>{Up0();hw0();xw0();RK$=M(CO(),1)});async function XW4($){let X=($.requestMessageId?await $.messageParts.maxCreatedAtMsForMessage($.runId,$.requestMessageId):null)??await $.messageParts.maxCreatedAtMsForRun($.runId);return new t7({storage:$.messageParts,orgId:$.orgId,threadId:$.runId,runId:$.runId,baseTimeMs:(X??Date.now())+1})}async function MK$($){let Z=await XW4($),X=$.replaceFinal?(G)=>Z.replaceFinal(G):(G)=>Z.emitFinal(G);return{emitStepParts:(G)=>Z.emitStepParts(G),emitFinal:X,emitError:(G,Q)=>Z.emitError(G,Q)}}var kK$=B(()=>{vw()});function uw0($,Z){GW4.add(1,{"org.id":Z??"unknown"})}var GW4;var SK$=B(()=>{G5();GW4=Q8.createCounter("decopilot.projector.poison_runs",{description:"Number of decopilot runs that exhausted retries and were sent to the DLQ",unit:"{runs}"})});class wp0{intervalMs;lastBumpMs=new Map;constructor($=3000){this.intervalMs=$}shouldBump($,Z=Date.now()){let X=this.lastBumpMs.get($);if(X!==void 0&&Z-X<this.intervalMs)return!1;return this.lastBumpMs.set($,Z),!0}clear($){this.lastBumpMs.delete($)}}function VK$($,Z,X,G){return $.pipeThrough(new TransformStream({transform(Q,Y){if(X.shouldBump(Z))G();Y.enqueue(Q)},flush(){X.clear(Z)}}))}function QW4($){return`liveness: no stream events for ${Math.round($/60000)}m`}function Bp0($){return $.runFenceToken!==null&&$.runFenceToken!==$.fenceToken}function _K$($){Op0=$}function vK$(){if(!Op0)throw Error("[projector-workflow] runtime not initialized \u2014 setProjectorWorkflowRuntime() must run before workflows fire");return Op0}function bK$(){return vK$()}async function fK$($,Z,X){let G=vK$(),Q=G.getJetStream();if(!Q)throw Error("JetStream unavailable");let Y=(await G.messageParts.loadWindow($.runId,{limit:500})).messages.map(kw0);return{chunkCount:0,attempts:1,outcome:await UK$({chunkStream:VK$(await IK$({js:Q,runId:$.runId,fenceToken:$.fenceToken,idleTimeoutMs:$.idleTimeoutMs}),$.runId,YW4,()=>{G.bumpProgress({runId:$.runId,orgId:Z}).catch(()=>{})}),persistence:await MK$({messageParts:G.messageParts,orgId:Z,runId:$.runId,requestMessageId:$.messageId,replaceFinal:!0}),originalMessages:Y,errorMessageId:fw($.runId,$.fenceToken),title:{threadId:$.runId,currentThreadTitle:X,persistTitle:async(K,W)=>{await G.persistTitle($.runId,Z,W),await G.onTitleUpdated({runId:$.runId,orgId:Z,title:W})}}})}}async function CK$($,Z,X){let G=await $.resolveRun(Z).catch(()=>null);return G!==null&&G.runFenceToken===X&&["completed","failed","requires_action"].includes(G.status)}async function xK$($,Z,X){let G=await JW4($,Z);if("skip"in G)return;let Q=G.row.orgId,Y=G.row.createdBy??$.runId,J=G.row.title;try{let{outcome:K}=await X($,Q,J),W=K?.failed?"failed":Cw0(K?.finishReason,K?.finalParts);if(W==="failed"){let N=K?.finishReason?`harness reported an error: ${K.finishReason}`:"harness reported an error";if(uw0($.runId,Q),await Z.markRunFailed($.runId,Q,N,"harness"))await Z.recordFailed({runId:$.runId,orgId:Q,distinctId:Y,reason:N,kind:"harness"})}else if(W==="requires_action")await Z.markRunRequiresAction($.runId,Q),await Z.clearSynthesizedError($.runId,$.fenceToken);else{if(await Z.completeRunIfNotCompleted($.runId,Q))await Z.recordCompleted({runId:$.runId,orgId:Q,distinctId:Y,usage:K?.usage??{inputTokens:0,outputTokens:0,totalTokens:0}});await Z.clearSynthesizedError($.runId,$.fenceToken)}await Z.purgeRun($.runId,$.fenceToken)}catch(K){if(K instanceof pn){if(await CK$(Z,$.runId,$.fenceToken)){await Z.clearSynthesizedError($.runId,$.fenceToken),await Z.purgeRun($.runId,$.fenceToken);return}let U=`stream truncated before projection could replay it: ${K.message}`;if(uw0($.runId,Q),await Z.markRunFailed($.runId,Q,U,"projection"))await Z.recordFailed({runId:$.runId,orgId:Q,distinctId:Y,reason:U,kind:"projection"});await Z.purgeRun($.runId,$.fenceToken);return}let W=K instanceof yw0;if(W&&await CK$(Z,$.runId,$.fenceToken)){await Z.purgeRun($.runId,$.fenceToken);return}let N=W?QW4(K.idleTimeoutMs):K instanceof Error?K.message:String(K),H=W?"liveness":"projection";if(uw0($.runId,Q),await Z.markRunFailed($.runId,Q,N,H))await Z.recordFailed({runId:$.runId,orgId:Q,distinctId:Y,reason:N,kind:H});if(W)await Z.clearSynthesizedError($.runId,$.fenceToken);throw K}}async function JW4($,Z){let X=await Z.resolveRun($.runId);if(!X)return{skip:"missing"};if(Bp0({status:X.status,runFenceToken:X.runFenceToken,fenceToken:$.fenceToken}))return{skip:"stale",row:X};if(X.version!==2)return{skip:"legacy-v1",row:X};return{row:X}}var Op0=null,YW4;var Dp0=B(()=>{wK$();qK$();hw0();kK$();SK$();Jp0();YW4=new wp0});function yK$($,Z){switch($.type){case"START":{let X={type:"RUN_STARTED",taskId:$.taskId,orgId:$.orgId,userId:$.userId,abortController:$.abortController,runConfig:$.runConfig,podId:$.podId,messageId:$.messageId};if(Z?.status.tag==="running")return[{type:"PREVIOUS_RUN_ABORTED",taskId:$.taskId,orgId:Z.orgId},X];return[X]}case"STEP_DONE":{if(Z?.status.tag!=="running")return[];return[{type:"STEP_COMPLETED",taskId:$.taskId,orgId:Z.orgId,stepCount:Z.status.stepCount+1}]}case"FINISH":{if(Z==null||Z.status.tag!=="running")return[];let{stepCount:X}=Z.status;if($.threadStatus==="completed")return[{type:"RUN_COMPLETED",taskId:$.taskId,orgId:Z.orgId,stepCount:X}];if($.threadStatus==="requires_action")return[{type:"RUN_REQUIRES_ACTION",taskId:$.taskId,orgId:Z.orgId,stepCount:X}];return[{type:"RUN_FAILED",taskId:$.taskId,orgId:Z.orgId,reason:"error"}]}case"CANCEL":{if(Z?.status.tag!=="running")return[];return[{type:"RUN_FAILED",taskId:$.taskId,orgId:Z.orgId,reason:"cancelled"}]}case"RESUME":{if(Z?.status.tag==="running")return[];return[{type:"RUN_RESUMED",taskId:$.taskId,orgId:$.orgId,userId:$.userId,abortController:$.abortController,podId:$.podId}]}case"FORCE_FAIL":{if($.reason==="ghost")return[{type:"RUN_FAILED",taskId:$.taskId,orgId:Z?.orgId??$.orgId,reason:$.reason,expectedFenceToken:$.expectedFenceToken??null}];if(Z?.status.tag!=="running")return[];return[{type:"RUN_FAILED",taskId:$.taskId,orgId:Z.orgId,reason:$.reason}]}}}function gK$($,Z,X=new Date){switch(Z.type){case"RUN_STARTED":return{taskId:Z.taskId,orgId:Z.orgId,userId:Z.userId,status:{tag:"running",abortController:Z.abortController,stepCount:0,startedAt:X}};case"RUN_RESUMED":return{taskId:Z.taskId,orgId:Z.orgId,userId:Z.userId,status:{tag:"running",abortController:Z.abortController,stepCount:0,startedAt:X}};case"STEP_COMPLETED":if($?.status.tag!=="running")return $;return{...$,status:{...$.status,stepCount:Z.stepCount}};case"RUN_COMPLETED":return;case"RUN_REQUIRES_ACTION":return;case"RUN_FAILED":return;case"PREVIOUS_RUN_ABORTED":return}}async function hK$($,Z,X,G){let{storage:Q,sseHub:Y}=G,J=await Q.get($,Z);Y.emit(Z,l3($,X,{virtualMcpId:J?.virtual_mcp_id??void 0,createdBy:J?.created_by,triggerId:J?.trigger_id,title:J?.title,branch:J?.branch??null,harnessId:J?.harness_id??void 0,createdAt:J?.created_at,updatedAt:J?.updated_at})),Y.emit(Z,N00($,X))}async function WW4($,Z){let{storage:X,sseHub:G}=Z;switch($.type){case"RUN_STARTED":{await X.update($.taskId,$.orgId,{status:"in_progress",run_config:$.runConfig??null,run_started_at:new Date().toISOString(),last_progress_at:null,failure_reason:null,failure_kind:null});let Q=await X.get($.taskId,$.orgId);G.emit($.orgId,l3($.taskId,"in_progress",{virtualMcpId:Q?.virtual_mcp_id??void 0,createdBy:Q?.created_by,triggerId:Q?.trigger_id,title:Q?.title,branch:Q?.branch??null,harnessId:Q?.harness_id??void 0,createdAt:Q?.created_at,updatedAt:Q?.updated_at,messageId:$.messageId}));return}case"RUN_RESUMED":{await X.update($.taskId,$.orgId,{status:"in_progress",run_started_at:new Date().toISOString(),last_progress_at:null,failure_reason:null,failure_kind:null});let Q=await X.get($.taskId,$.orgId);G.emit($.orgId,l3($.taskId,"in_progress",{virtualMcpId:Q?.virtual_mcp_id??void 0,createdBy:Q?.created_by,triggerId:Q?.trigger_id,title:Q?.title,branch:Q?.branch??null,harnessId:Q?.harness_id??void 0,createdAt:Q?.created_at,updatedAt:Q?.updated_at}));return}case"STEP_COMPLETED":G.emit($.orgId,VV0($.taskId,$.stepCount));return;case"RUN_COMPLETED":await hK$($.taskId,$.orgId,"completed",Z);return;case"RUN_REQUIRES_ACTION":await hK$($.taskId,$.orgId,"requires_action",Z);return;case"RUN_FAILED":{if($.reason==="ghost"){if(!await X.forceFailIfInProgress($.taskId,$.orgId,$.expectedFenceToken))return;await X.update($.taskId,$.orgId,{run_config:null,run_started_at:null})}else{if(!await X.forceFailIfInProgress($.taskId,$.orgId))return;await X.update($.taskId,$.orgId,{run_config:null,run_started_at:null,...$.reason==="reaped"?{failure_reason:KW4,failure_kind:"stall"}:{}})}let Q=await X.get($.taskId,$.orgId);G.emit($.orgId,l3($.taskId,"failed",{virtualMcpId:Q?.virtual_mcp_id??void 0,createdBy:Q?.created_by,triggerId:Q?.trigger_id,title:Q?.title,branch:Q?.branch??null,harnessId:Q?.harness_id??void 0,createdAt:Q?.created_at,updatedAt:Q?.updated_at})),G.emit($.orgId,N00($.taskId,"failed"));return}case"PREVIOUS_RUN_ABORTED":return}}async function uK$($,Z){for(let{event:X}of $)await WW4(X,Z)}var KW4="Run stalled \u2014 no progress within the idle timeout window";var cK$=B(()=>{O8()});function lK$($){return $.now-$.lastProgressAt>$.idleTimeoutMs}function dK$($){return Math.max($.persistedLastProgressAt??Number.NEGATIVE_INFINITY,$.currentRunStartedAt)}class Ep0{deps;clock;states=new Map;reaperTimer=null;constructor($,Z=()=>new Date){this.deps=$;this.clock=Z;this.reaperTimer=setInterval(()=>{this.reapStaleRuns().catch((X)=>{console.error("[RunRegistry] Reaper sweep failed",X)})},NW4)}async execute($){let Z=this.dispatch($);return await this.react(Z),Z}dispatch($){let Z=this.states.get($.taskId),X=yK$($,Z),G=[];for(let Q of X){let Y=this.states.get(Q.taskId);if(Q.type==="PREVIOUS_RUN_ABORTED"||Q.type==="RUN_FAILED"){if(Y?.status.tag==="running")Y.status.abortController.abort()}let J=gK$(Y,Q,this.clock());if(J===void 0)this.states.delete(Q.taskId);else this.states.set(Q.taskId,J);if(G.push({event:Q,state:J}),HW4.has(Q.type))mK$().add(1,{"org.id":Q.orgId});else if(FW4.has(Q.type)&&Y?.status.tag==="running")mK$().add(-1,{"org.id":Q.orgId})}return G}react($){return uK$($,this.deps)}getAbortSignal($){let Z=this.states.get($);if(Z?.status.tag==="running")return Z.status.abortController.signal;return null}isRunning($){return this.states.get($)?.status.tag==="running"}async stopAll(){for(let[,$]of this.states)if($.status.tag==="running")$.status.abortController.abort();this.states.clear()}dispose(){if(this.reaperTimer)clearInterval(this.reaperTimer),this.reaperTimer=null}async reapStaleRuns(){let $=this.clock().getTime(),Z=[...this.states].filter(([,X])=>X.status.tag==="running");for(let[X,G]of Z){if(this.states.get(X)?.status.tag!=="running")continue;let Y;try{let K=await this.deps.storage.getProgress(X,G.orgId);Y=dK$({persistedLastProgressAt:K?.lastProgressAt??null,currentRunStartedAt:G.status.startedAt.getTime()})}catch(K){console.warn(`[RunRegistry] Reaper progress read failed for ${X}; skipping`,K);continue}if(!lK$({lastProgressAt:Y,now:$,idleTimeoutMs:cw0}))continue;let J=await this.deps.storage.get(X,G.orgId).catch(()=>null);if(J&&J.status!=="in_progress"){let K=this.states.get(X);if(K?.status.tag==="running")K.status.abortController.abort();this.states.delete(X);continue}console.warn(`[RunRegistry] Reaping stuck run for thread ${X} (idle > ${cw0/60000}m) ...`),UW4().add(1,{"org.id":G.orgId,reason:"idle_timeout"}),await this.execute({type:"FORCE_FAIL",taskId:X,reason:"reaped"}).catch((K)=>{console.error("[RunRegistry] Reaper execute failed",K)})}}}var NW4=300000,Lp0,cw0,HW4,FW4,iK$=($)=>{let Z;return()=>Z??=$()},mK$,UW4;var zp0=B(()=>{cK$();G5();Lp0=Number(process.env.RUN_IDLE_TIMEOUT_MS),cw0=Number.isFinite(Lp0)&&Lp0>0?Lp0:600000,HW4=new Set(["RUN_STARTED","RUN_RESUMED"]),FW4=new Set(["RUN_COMPLETED","RUN_FAILED","RUN_REQUIRES_ACTION","PREVIOUS_RUN_ABORTED"]),mK$=iK$(()=>Q8.createUpDownCounter("decopilot.stream.inflight",{description:"Number of in-flight decopilot stream requests",unit:"{requests}"})),UW4=iK$(()=>Q8.createCounter("decopilot.run.reaped",{description:"Number of decopilot runs force-failed by the progress-based reaper",unit:"{runs}"}))});async function nK$($){let{runId:Z}=$,X=bK$(),G=await X.resolveRun(Z),Q=$.fenceToken??G?.runFenceToken;if(!G||G.version!==2||Q==null)return;if(Bp0({status:G.status,runFenceToken:G.runFenceToken,fenceToken:Q}))return;if(!X.getJetStream())throw Error("JetStream unavailable for consume step");await xK$({runId:Z,fenceToken:Q,messageId:$.messageId,idleTimeoutMs:$.idleTimeoutMs??cw0},X,fK$)}var pK$=B(()=>{Dp0();zp0()});var lw0,yw,tK$=()=>({active:yw.active,pending:yw.pending,max:lw0}),oK$=($)=>{if(yw.active>=lw0)console.log("[hostedHarness] run parked at concurrency cap",{active:yw.active,pending:yw.pending,max:lw0}),$?.();return yw.acquire()};var jp0=B(()=>{Vn0();f$();G5();lw0=n0().decopilotMaxConcurrentHostedRuns,yw=Sn0(lw0);Q8.createObservableGauge("hosted_runs.active",{description:"Hosted agent-loop runs executing on this pod",unit:"{runs}"}).addCallback(($)=>$.observe(yw.active));Q8.createObservableGauge("hosted_runs.pending",{description:"Hosted agent-loop runs parked waiting for a slot on this pod",unit:"{runs}"}).addCallback(($)=>$.observe(yw.pending))});import{DBOS as LV}from"@dbos-inc/dbos-sdk";function Tp0($){Pp0=$}function aK$(){if(!Pp0)throw Error("[hostedHarness] runtime not initialized \u2014 setHostedHarnessRuntime() must run before workflows fire");return Pp0}async function wW4($,Z){let X=aK$(),{request:G}=$,Q=Z??await X.studioContextFactory(G.organizationId,G.userId);if(!Q)throw Error("user membership lost mid-dispatch");if(G.runMetadata)Q.metadata.runMetadata=G.runMetadata;let Y=new AbortController,J=!1,K=new mn({emit:()=>rK$(X,$)}),W=await oK$(()=>{J=!0,rK$(X,$),K.arm()}).finally(()=>K.stop());try{if(J&&await OW4($))throw Error("run cancelled while queued for a free runner");if(_x(Q,"in_progress",$.threadId),!G.runMetadata?.taskBoardItemId)kJ$(Q,$.threadId);await X.dispatchRunFn({...G,abortSignal:Y.signal},Q,X.deps)}finally{W()}}async function OW4($){try{return(await LV.getWorkflowStatus(Rp0($.runId,$.fenceToken)))?.status==="CANCELLED"}catch(Z){return console.error(`[hostedHarness] could not read child status for run=${$.runId} fence=${$.fenceToken}`,Z),!1}}function BW4($,Z,X,G=1){let Q=X instanceof Error?X.message:String(X);return{messageId:fw($,Z),errorChunk:{type:"error",errorText:Q},seq:G,finalSeq:G}}function DW4($){if(!($ instanceof Error))return;let Z=$.lastAckSeq;return typeof Z==="number"?Z+1:void 0}async function LW4($,Z){let X=aK$(),{streamBuffer:G}=X.deps,{messageId:Q,errorChunk:Y,seq:J,finalSeq:K}=BW4($.runId,$.fenceToken,Z,DW4(Z));if(!G){console.error(`[hostedHarness] no streamBuffer configured; dropping terminal error for run=${$.runId} fence=${$.fenceToken} messageId=${Q}`);return}if(!await G.publishRawChunk($.runId,Y,{fenceToken:$.fenceToken,seq:J})){console.error(`[hostedHarness] failed to publish terminal error chunk for run=${$.runId} fence=${$.fenceToken} messageId=${Q}`);return}await G.publishDone($.runId,$.fenceToken,K)}async function EW4($){try{await LV.runStep(()=>wW4($),{name:"runHostedHarness",retriesAllowed:!1})}catch(Z){await LV.runStep(()=>LW4($,Z),{name:"publishHostedHarnessFailure",retriesAllowed:!0}).catch((X)=>{console.error(`[hostedHarness] could not publish terminal error for run=${$.runId} fence=${$.fenceToken}`,X)})}}function Rp0($,Z){return`decopilot-hosted:${$}:${Z}`}async function sK$($){return{workflowID:(await LV.startWorkflow(zW4,{workflowID:Rp0($.runId,$.fenceToken),queueName:BW,enqueueOptions:{queuePartitionKey:$.threadId}})($)).workflowID}}async function Ip0($,Z){await LV.cancelWorkflow(Rp0($,Z))}var Ap0=1,Pp0=null,rK$=($,Z)=>K3($.deps.streamBuffer,Z.runId,"waiting-capacity"),zW4;var qp0=B(()=>{Kp0();gx();jp0();bX();zW4=LV.registerWorkflow(EW4,{name:"hostedHarnessWorkflow",maxRecoveryAttempts:1000})});import{DBOS as cx}from"@dbos-inc/dbos-sdk";function Sp0($){Np0($)}function Vp0($){Mp0=$}function jW4(){if(!Mp0)throw Error("[threadGate] runtime not initialized \u2014 setThreadGateRuntime() must run before workflows fire");return Mp0}function PW4($,Z=qw0){let X=$.runFenceToken;if(X)return{runFenceToken:X,claimedRequest:$,shouldPersistFence:!1};let G=Z();return{runFenceToken:G,claimedRequest:{...$,runFenceToken:G},shouldPersistFence:!0}}async function AW4($){let Z=jW4(),{request:X}=$,G=X.taskId??$.threadId;if(t3$({harnessId:X.harnessId}))await K3(Z.deps.streamBuffer,G,"starting-run");let Q=await Z.studioContextFactory(X.organizationId,X.userId);if(!Q)throw Error("user membership lost mid-dispatch");Sp0(X.harnessId);let Y=X.taskId??$.threadId,{runFenceToken:J,claimedRequest:K,shouldPersistFence:W}=PW4(X);if(W)await Q.storage.threads.setRunFence(Y,J);return{runFenceToken:J,hostedEnqueue:{runId:G,fenceToken:J,threadId:$.threadId,request:K}}}async function TW4($){if($.source!=="user-message")return;let{request:Z}=$;x1.capture({distinctId:Z.userId,event:"chat_message_started",groups:{organization:Z.organizationId},properties:{organization_id:Z.organizationId,agent_id:Z.agent,mode:Z.mode,thread_id:Z.taskId??$.threadId,credential_id:Z.models.credentialId}})}async function RW4($,Z){if($.source!=="user-message")return;let{request:X}=$;x1.capture({distinctId:X.userId,event:"chat_message_failed",groups:{organization:X.organizationId},properties:{organization_id:X.organizationId,thread_id:X.taskId??$.threadId,agent_id:X.agent,model_id:X.models.thinking.id,mode:X.mode,error_category:"setup",error_message:Z}})}async function dw0($){Sp0($.request.harnessId),await cx.runStep(()=>TW4($),{name:"trackMessageStarted"});let Z;try{Z=await cx.runStep(()=>AW4($),{name:"dispatchRunAndWait",retriesAllowed:!0}),await sK$(Z.hostedEnqueue)}catch(Q){let Y=Q instanceof Error?Q.message:String(Q);throw await cx.runStep(()=>RW4($,Y),{name:"trackMessageFailed"}),Q}let X=$.request.taskId??$.threadId,G="messages"in $.request?void 0:$.request.messageId;return await cx.runStep(()=>nK$({runId:X,fenceToken:Z.runFenceToken,messageId:G}),{name:"consumeRunProjection"}),{taskId:$.request.taskId??$.threadId}}async function IW4($){return dw0($)}async function eN($,Z){return Sp0($.request.harnessId),{workflowID:(await cx.startWorkflow(qW4,{queueName:mY,enqueueOptions:{queuePartitionKey:$.threadId},workflowID:Z?.workflowID})($)).workflowID}}var kp0=1,Mp0=null,qW4;var eK$=B(()=>{_w0();B6();gx();pK$();qp0();qW4=cx.registerWorkflow(IW4,{name:"threadGateWorkflow",maxRecoveryAttempts:1000})});var DV=B(()=>{eK$();qp0()});async function tn($,Z,X){let G=Z.organizationId,Q=Z.assignedBy??Z.createdBy,Y=X.harnessId??"decopilot",J=await l7($,"smart"),K=RB(G),W=await $.storage.threads.create({organization_id:G,title:X.title,status:"in_progress",virtual_mcp_id:K,message_storage_version:2,harness_id:Y,sandbox_provider_kind:"agent-sandbox",created_by:Q}),N={...W.metadata??{},...JV(Y)?{read_only:!0}:{},...X.repo?{githubRepo:{url:X.repo.url,owner:X.repo.owner,name:X.repo.name,installationId:X.repo.installationId,connectionId:X.repo.connectionId}}:{}};await $.storage.threads.update(W.id,{metadata:N,...X.repo?{branch:Vn(W.id,X.repo.connectionId)}:{},updated_by:Q}),await $.storage.taskBoard.linkThread(Z.id,W.id,G);let H={id:crypto.randomUUID(),role:"user",parts:[{type:"text",text:X.prompt}]};return await new t7({storage:$.storage.threads.messageParts(),orgId:G,threadId:W.id,runId:W.id}).emitRequestMessage(H),await eN({threadId:W.id,source:"background-tool",request:{messages:[H],models:{credentialId:J.credentialId,thinking:{id:J.modelId,title:J.modelMeta.title}},agent:{id:K},temperature:X.temperature,toolApprovalLevel:"auto",mode:"default",organizationId:G,userId:Q,harnessId:Y,sandboxProviderKind:"agent-sandbox",taskId:W.id,runMetadata:{taskBoardItemId:Z.id}}}),{threadId:W.id}}var Cp0=B(()=>{Gw();DV();vw();O8();gK();dU0()});function MW4($){let Z=new Map($.map((Y)=>[Y.id,Y])),X=new Map;for(let Y of tU0($)){let J=$W$(Y.owner,Y.repo);X.set(J,[...X.get(J)??[],Y])}if(X.size!==1)return null;let G=[...X.values()][0],Q=G.find((Y)=>{let J=Z.get(Y.connectionId);return J?i60(J):!1})??G[0];return{connectionId:Q.connectionId,owner:Q.owner,name:Q.repo,installationId:Q.installationId,url:`https://github.com/${Q.owner}/${Q.repo}`}}async function ZW$($,Z){try{let{items:X}=await $.storage.connections.list(Z,{slug:"mcp-github"}),G=MW4(X);if(!G){let Q=tU0(X),Y=new Set(Q.map((J)=>$W$(J.owner,J.repo)));console.warn(`[task-board] claude-code skipped for org ${Z}: ${Y.size} importable repos (needs exactly 1) \u2014 running Decopilot`)}return G}catch(X){return console.warn("[task-board] repo lookup for claude-code failed",X),null}}async function XW$($,Z){try{return(await $.storage.organizationSettings.get(Z))?.flags?.claude_code_sandbox_enabled===!0}catch(X){return console.warn("[task-board] org flag lookup failed",X),!1}}function GW$($,Z,X){let G=["You've been assigned this task. Complete it and finish with a pull request.","","You are running AUTONOMOUSLY \u2014 no human is watching, so drive this to "+"completion yourself. Make reasonable decisions and move on; do not stop to ask for confirmation.","",`Title: ${$.title}`];if($.description)G.push("","Description:",$.description);if(G.push("",`The repository ${Z.owner}/${Z.name} is already cloned at your working directory, on its own branch. \`git\` and \`gh\` are authenticated.`,""),X?.resolveConflict&&X.pr)G.push(`Pull request #${X.pr.number} (${X.pr.url}) is approved but has a MERGE CONFLICT with its base branch.`,`Check that branch out (\`gh pr checkout ${X.pr.number}\`), merge or rebase the base branch into it, resolve the conflicts, and push to update the SAME pull request \u2014 do NOT open a new one. Resolve by preserving BOTH sides' intent; never blindly discard either side, and change only what the conflict requires.`,"");else if(X?.feedback)G.push(X.pr?`A reviewer requested changes on pull request #${X.pr.number} (${X.pr.url}):`:"A reviewer requested changes on your previous work:",X.feedback,X.pr?`Check that branch out (\`gh pr checkout ${X.pr.number}\`) before editing, address the feedback, then push to update the SAME pull request \u2014 do NOT open a new one.`:"Address this feedback.","");return G.push("How to finish:","- Make the change, commit it, push the branch, and open a pull request"+(X?.pr?" \u2014 or push to the existing one, per the instruction above.":"."),"- Change only what the task needs. Don't refactor around it.",`- Then move this task to review on the board: call \`mcp__studio__TASK_BOARD_ITEM_UPDATE\` with id "${$.id}" and status "in_review". Pass ONLY the fields you are changing.`,"- If the task turns out to need no code change, say why in your final message and move it to review anyway so a human can close it out.","",`(task id: ${$.id})`),G.join(`
|
|
1544
1544
|
`)}var $W$=($,Z)=>`${$}/${Z}`.toLowerCase();var QW$=B(()=>{Dn0();AK()});async function lx($,Z){if(Z.assigneeId!==A5)return;await on($,Z).catch((X)=>{console.error("[task-board] Super Agent enqueue failed",X)})}function kW4($,Z){return["You've been assigned this task. Complete it.","","You are running AUTONOMOUSLY \u2014 no human is watching this run, so drive it "+"to completion on your own. Use `user_ask` ONLY for a genuine, unresolvable blocker a human must clear (a missing credential/secret, or "+"a decision so ambiguous you truly cannot proceed) \u2014 that should be rare. "+"Do not ask for confirmation of a reasonable choice; make it and move on.","",`Title: ${$.title}`,$.description?`
|
|
1545
1545
|
Description:
|
|
1546
1546
|
${$.description}
|
|
@@ -2716,10 +2716,10 @@ Do NOT require review (requiresReview = false) when the changes are low-risk, su
|
|
|
2716
2716
|
|
|
2717
2717
|
When unsure between the two, lean toward NOT requiring review for small frontend-only diffs, and toward requiring it for anything backend or large.
|
|
2718
2718
|
|
|
2719
|
-
Respond with the structured verdict and a short reason.`,hS$;var cS$=B(()=>{S4();Gw();J$1();Ne4=K$1.object({requiresReview:K$1.boolean().describe("true if the changes should go through pull-request review"),reason:K$1.string().describe("One short sentence explaining the decision (max ~120 chars)")});hS$={requiresReview:!1,reason:""}});function we4($){if(!$||$.includes(".."))return!1;return Ue4.test($)}function lS$($){let Z=typeof $.__resolveType==="string"?$.__resolveType:null;if(!Z||!we4(Z))return null;let{__resolveType:X,...G}=$;return{resolveType:Z,payload:G}}function dS$($,Z){return`${$.replace(/\/+$/,"")}/deco/invoke/${Z}`}var Ue4;var mS$=B(()=>{Ue4=/^[\w./@-]+$/});function W$1($){let Z;try{Z=new URL($)}catch{return null}if(!Z.hostname.endsWith(".localhost"))return null;let X=Z.host;return Z.hostname="127.0.0.1",{url:Z.toString(),hostHeader:X}}function iS$($,Z){let X=$?.githubRepo;if(!X?.owner||!X?.name)return null;if(!X.connectionId)return X;if(!Z.includes(X.connectionId))return null;return X}async function nS$($,Z,X,G){if(!G.connectionId)throw new Hg("Push requires a connected GitHub account. Connect mcp-github for this project and restart the sandbox.");let Q=$.organization?.id;if(!Q)throw new Hg(h7);await w90({ctx:$,connectionId:G.connectionId,organizationId:Q,forceRefresh:!0,onLegacyMintError:(H)=>{let F=H instanceof Error?H.message:h7;throw new Hg(F)}});let{cloneUrl:Y,gitUserName:J,gitUserEmail:K}=await Nx(G.connectionId,G.owner,G.name,$.db,$.vault),W=LE0($),N=await Z.proxyDaemonRequest(X,"/_sandbox/config",{method:"PUT",headers:new Headers({"content-type":"application/json"}),body:JSON.stringify({git:{repository:{cloneUrl:Y},identity:{userName:J,userEmail:K}},...W?{operator:W}:{}})});if(!N.ok){let H=await Sw(N,Oe4).catch(()=>N.statusText);throw Error(`Failed to refresh sandbox git credentials (${N.status}): ${H}`)}}var Oe4=10485760,Hg;var pS$=B(()=>{oU();e11();_n();O90();Hg=class Hg extends Error{constructor($){super($);this.name="GitPushAuthError"}}});function De4($){let Z=$.startsWith("thread:")?$.slice(7):$;if(!Z||Z.length>255||Z.includes("..")||Z.startsWith("/")||Z.endsWith("/")||Z.endsWith(".lock")||!Be4.test(Z))throw Error(`Invalid branch name: ${$}`)}function FC($){return AbortSignal.any([$.req.raw.signal,AbortSignal.timeout(Ee4)])}function UC($){let{runner:Z}=$.get("vmClaim");if(!Z)return $.json({error:"No sandbox runner configured"},503);return Z}function N$1($,Z){let G=(EE0.get($)??Promise.resolve()).catch(()=>{}).then(Z),Q=G.catch(()=>{});return EE0.set($,Q),Q.finally(()=>{if(EE0.get($)===Q)EE0.delete($)}),G}async function kZ($,Z,X){let G=UC($);if(G instanceof Response)return G;let{claimName:Q,userId:Y,projectRef:J}=$.get("vmClaim"),K=X?.method??"POST",W=null,N=new Headers;if(X?.jsonBody!==void 0)W=X.jsonBody,N.set("content-type","application/json");else if(X?.forwardJsonBody)W=await $.req.text(),N.set("content-type","application/json");let H=X?.signal,F={method:K,headers:N,body:W,...H?{signal:H}:{}},U=async()=>{let w=await G.proxyDaemonRequest(Q,Z,F);if(X?.map404to410&&w.status===404){try{await w.body?.cancel()}catch{}if(await G.adoptLiveClaim?.({userId:Y,projectRef:J},Q))w=await G.proxyDaemonRequest(Q,Z,F);if(w.status===404){try{await w.body?.cancel()}catch{}return new Response(JSON.stringify({error:"Sandbox handle is gone. The sandbox needs to be re-provisioned."}),{status:410,headers:{"content-type":"application/json",...vQ}})}}let O=await w.text(),D=X?.redactRepoDirUnlessDesktop&&G.kind!=="user-desktop"?je4(O):O,L=w.headers.get("content-type")??"application/json";return new Response(D,{status:w.status,headers:{"content-type":L,...vQ}})};try{if(H){let w=U();return w.catch(()=>{}),await Promise.race([w,new Promise((D,L)=>{if(H.aborted)return L(H.reason);H.addEventListener("abort",()=>L(H.reason),{once:!0})})])}return await U()}catch(w){let O=w instanceof Error?w.message:String(w);return $.json({error:`Daemon unreachable: ${O}`},502)}}function je4($){try{let Z=JSON.parse($);if(Z&&typeof Z==="object"&&!Array.isArray(Z)&&"repoDir"in Z)return JSON.stringify({...Z,repoDir:null})}catch{}return $}async function zE0($,Z,X,G="GET",Q){let Y=await $.proxyDaemonRequest(Z,X,{method:G,headers:new Headers,body:null});if(Y.status===404&&Q){try{await Y.body?.cancel()}catch{}if(await $.adoptLiveClaim?.(Q,Z))Y=await $.proxyDaemonRequest(Z,X,{method:G,headers:new Headers,body:null})}if(Y.status===404){try{await Y.body?.cancel()}catch{}throw Error("SANDBOX_GONE")}let J=await Y.text();if(!Y.ok)try{let K=JSON.parse(J);throw Error(K.error??`Daemon error (${Y.status})`)}catch(K){if(K instanceof Error&&K.message!==J)throw K;throw Error(`Daemon error (${Y.status})`)}return JSON.parse(J)}function Pe4($){return rS$.includes($)}var Be4,tS$=524288,Le4=65536,Ee4=1e4,oS$=2000,ze4,EE0,vQ,rS$,aS$=()=>{let $=new L1;return $.use("/:virtualMcpId/:branch/*",ze4),$.post("/:virtualMcpId/:branch/write",(Z)=>kZ(Z,"/_sandbox/write",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/unlink",(Z)=>kZ(Z,"/_sandbox/unlink",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/mkdir",(Z)=>kZ(Z,"/_sandbox/mkdir",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/rename",(Z)=>kZ(Z,"/_sandbox/rename",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/read",(Z)=>kZ(Z,"/_sandbox/read",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/glob",(Z)=>kZ(Z,"/_sandbox/glob",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/grep",(Z)=>kZ(Z,"/_sandbox/grep",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/exec/:script",async(Z)=>{let X=Z.req.param("script");if(!X)return Z.json({error:"missing script name"},400);return kZ(Z,`/_sandbox/exec/${encodeURIComponent(X)}`)}),$.post("/:virtualMcpId/:branch/exec/:script/kill",async(Z)=>{let X=Z.req.param("script");if(!X)return Z.json({error:"missing script name"},400);return kZ(Z,`/_sandbox/exec/${encodeURIComponent(X)}/kill`)}),$.get("/:virtualMcpId/:branch/config",(Z)=>kZ(Z,"/_sandbox/config",{method:"GET",map404to410:!0,redactRepoDirUnlessDesktop:!0})),$.put("/:virtualMcpId/:branch/config",(Z)=>kZ(Z,"/_sandbox/config",{method:"PUT",forwardJsonBody:!0,map404to410:!0})),$.post("/:virtualMcpId/:branch/setup/:step",async(Z)=>{let X=Z.req.param("step");if(!X||!Pe4(X))return Z.json({error:`step must be one of: ${rS$.join(", ")}`},400);if(X==="start"){let G=Z.get("vmClaim");if(G.runner){let Q=e(Z.var.studioContext),Y=hU0(G.virtualMcpMetadata);try{await uU0({ctx:Z.var.studioContext,runner:G.runner,handle:G.claimName,orgId:Q.id,userId:G.callerUserId,entries:Y})}catch(J){let K=J instanceof Error?J.message:String(J);return Z.json({error:`Failed to push env to daemon: ${K}`},502)}}}return kZ(Z,`/_sandbox/setup/${X}`,{signal:Z.req.raw.signal,map404to410:!0})}),$.get("/:virtualMcpId/:branch/events",(Z)=>{let X=Z.get("vmClaim");if(!X.runner)return qH(Z,async(G)=>{await G.writeSSE({event:"phase",data:JSON.stringify({kind:"failed",reason:"unknown",message:"No sandbox runner configured on this studio instance."})})});return vS$(Z,{ctx:Z.var.studioContext,claimName:X.claimName,runner:X.runner,virtualMcpId:X.virtualMcpId,branch:X.branch,userId:X.userId,projectRef:X.projectRef,virtualMcpMetadata:X.virtualMcpMetadata})}),$.get("/:virtualMcpId/:branch/git/status",(Z)=>kZ(Z,"/_sandbox/git/status",{method:"GET",map404to410:!0,signal:AbortSignal.any([Z.req.raw.signal,AbortSignal.timeout(oS$)])})),$.post("/:virtualMcpId/:branch/git/status",(Z)=>kZ(Z,"/_sandbox/git/status",{map404to410:!0,signal:AbortSignal.any([Z.req.raw.signal,AbortSignal.timeout(oS$)])})),$.post("/:virtualMcpId/:branch/git/diff",(Z)=>kZ(Z,"/_sandbox/git/diff",{forwardJsonBody:!0,map404to410:!0})),$.post("/:virtualMcpId/:branch/git/publish",async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G,virtualMcpMetadata:Q,connectionIds:Y}=Z.get("vmClaim"),J=Z.var.studioContext;return N$1(G,async()=>{try{await $$1(J,X,G);let K=iS$(Q,Y);if(K)await nS$(J,X,G,K)}catch(K){if(K instanceof Hg)return Z.json({error:K.message},403,vQ);let W=K instanceof Error?K.message:String(K);return Z.json({error:W},502,vQ)}return kZ(Z,"/_sandbox/git/publish",{forwardJsonBody:!0,map404to410:!0})})}),$.post("/:virtualMcpId/:branch/git/discard",(Z)=>{let{claimName:X}=Z.get("vmClaim");return N$1(X,()=>kZ(Z,"/_sandbox/git/discard",{forwardJsonBody:!0,map404to410:!0}))}),$.post("/:virtualMcpId/:branch/git/rebase",async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G}=Z.get("vmClaim"),Q=Z.var.studioContext;return N$1(G,async()=>{try{await $$1(Q,X,G)}catch(Y){let J=Y instanceof Error?Y.message:String(Y);return Z.json({error:J},502,vQ)}return kZ(Z,"/_sandbox/git/rebase",{forwardJsonBody:!0,map404to410:!0})})}),$.post("/:virtualMcpId/:branch/git/suggest-commit",H7({maxSize:tS$,onError:(Z)=>Z.json({error:"Payload too large"},413,vQ)}),async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G,userId:Q,projectRef:Y}=Z.get("vmClaim"),J=Z.var.studioContext;try{let K=await Z.req.json().catch(()=>({})),W=K.status,N=K.diff,H=N!=null&&typeof N.diffs==="object"&&N.diffs!==null,[F,U]=G$1(W)&&H?[W,N]:await Promise.all([zE0(X,G,"/_sandbox/git/status","GET",{userId:Q,projectRef:Y}),zE0(X,G,"/_sandbox/git/diff","GET",{userId:Q,projectRef:Y})]),w=await gS$(J,F,U);return Z.json(w,200,vQ)}catch(K){let W=K instanceof Error?K.message:String(K);if(W==="SANDBOX_GONE")return Z.json({error:"Sandbox handle is gone. The sandbox needs to be re-provisioned."},410,vQ);return Z.json({error:W},502,vQ)}}),$.post("/:virtualMcpId/:branch/git/judge-review",H7({maxSize:tS$,onError:(Z)=>Z.json({error:"Payload too large"},413,vQ)}),async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G,userId:Q,projectRef:Y}=Z.get("vmClaim"),J=Z.var.studioContext;try{let K=await Z.req.json().catch(()=>({})),W=K.status,N=K.diff,H=N!=null&&typeof N.diffs==="object"&&N.diffs!==null,[F,U]=G$1(W)&&H?[W,N]:await Promise.all([zE0(X,G,"/_sandbox/git/status","GET",{userId:Q,projectRef:Y}),zE0(X,G,"/_sandbox/git/diff","GET",{userId:Q,projectRef:Y})]),w=await uS$(J,F,U,typeof K.language==="string"?K.language:void 0);return Z.json(w,200,vQ)}catch(K){let W=K instanceof Error?K.message:String(K);if(W==="SANDBOX_GONE")return Z.json({error:"Sandbox handle is gone. The sandbox needs to be re-provisioned."},410,vQ);return Z.json({error:W},502,vQ)}}),$.get("/:virtualMcpId/:branch/preview-fetch",async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G}=Z.get("vmClaim"),Q=Z.req.query("path");if(!Q||!Q.startsWith("/")||Q.startsWith("//")||Q.includes("..")||Q.includes("\\"))return Z.json({error:"Path not allowed"},403);let Y;try{Y=await X.getPreviewUrl(G)}catch{return Z.json({error:"Preview not available"},502)}if(!Y)return Z.json({error:"Preview not available"},502);let J=Y.replace(/\/+$/,""),K=W$1(`${J}${Q}`),W;try{W=await fetch(K?.url??`${J}${Q}`,{...K?{headers:{host:K.hostHeader}}:{}})}catch{return Z.json({error:"Preview unreachable"},502)}let N;try{N=await W.text()}catch{return Z.json({error:"Preview unreachable"},502)}return new Response(N,{status:W.status,headers:{"content-type":W.headers.get("content-type")??"application/json"}})}),$.post("/:virtualMcpId/:branch/preview-invoke",H7({maxSize:Le4,onError:(Z)=>Z.json({error:"Payload too large"},413)}),async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G}=Z.get("vmClaim"),Q;try{Q=await X.getPreviewUrl(G)}catch{return Z.json({error:"Preview not available"},502)}if(!Q)return Z.json({error:"Preview not available"},502);let Y;try{Y=await Z.req.json()}catch{return Z.json({error:"Invalid JSON body"},400)}if(!Y||typeof Y!=="object"||Array.isArray(Y))return Z.json({error:"Invalid JSON body"},400);let J=lS$(Y);if(!J)return Z.json({error:"Invalid or missing __resolveType"},400);let K=dS$(Q,J.resolveType),W=W$1(K),N;try{N=await fetch(W?.url??K,{method:"POST",headers:{"content-type":"application/json",...W?{host:W.hostHeader}:{}},body:JSON.stringify(J.payload),signal:AbortSignal.timeout(30000)})}catch{return Z.json({error:"Preview unreachable"},502)}let H;try{H=await N.text()}catch{return Z.json({error:"Preview unreachable"},502)}return new Response(H,{status:N.status,headers:{"content-type":N.headers.get("content-type")??"application/json"}})}),$};var sS$=B(()=>{i8();XC();Ng();SS$();mN();CS$();gK();GV();_S$();bS$();Kn0();Cn();J$1();cS$();mS$();pS$();Be4=/^[a-zA-Z0-9][a-zA-Z0-9/._-]*$/;ze4=kS$(async($,Z)=>{let X=$.var.studioContext;try{W0(X)}catch{return $.json({error:"Unauthorized"},401)}let G=z1(X);if(!G)return $.json({error:"Unauthorized"},401);let Q;try{Q=e(X)}catch{return $.json({error:"Organization scope required"},403)}let Y=$.req.param("virtualMcpId"),J=$.req.param("branch");if(!Y||!J)return $.json({error:"virtualMcpId and branch are required"},400);try{De4(J)}catch(w){let O=w instanceof Error?w.message:String(w);return $.json({error:O},400)}let K=await X.storage.virtualMcps.findById(Y);if(!K||K.organization_id!==Q.id)return $.json({error:"Virtual MCP not found"},404);let W=$n({orgId:Q.id,virtualMcpId:Y,branch:J}),N=await QV(X,J,G),H=VS$({userId:N,projectRef:W},J),F=K.metadata??null,U;try{U=(await TQ(X,{userId:N,branch:J,virtualMcpMetadata:F})).provider}catch{U=null}if(!U)return $.json({error:"No sandbox runner found"},404);return $.set("vmClaim",{claimName:H,callerUserId:G,runner:U,virtualMcpId:Y,branch:J,userId:N,projectRef:W,virtualMcpMetadata:F,connectionIds:K.connections?.map((w)=>w.connection_id)??[]}),Z()});EE0=new Map;vQ={"Cache-Control":"no-store, no-cache, must-revalidate",Pragma:"no-cache"};rS$=["clone","install","start"]});var eS$=($)=>{let Z=new L1;if(Z.use("*",ZC),Z.route("/",bL0()),Z.route("/",Bq$()),Z.route("/",BS$()),Z.route("/",wS$()),Z.route("/",OE0()),Z.route("/tools",AS$()),Z.route("/",zS$()),Z.route("/",ak$({kvStorage:$.kvStorage})),Z.route("/",ok$()),Z.route("/fs",WS$({getConnection:$.getNatsConnection})),Z.route("/sandbox",aS$()),Z.route("/",HS$()),Z.route("/deco-sites",xL0()),Z.route("/sso",ML0()),Z.route("/",BE0({tokenStorage:$.tokenStorage,automationEventDispatcher:$.automationEventDispatcher})),Z.route("/webhooks",Kq$()),$.mountDevAssets)Z.route("/dev-assets",yL0({orgFromPath:!0}));return Z.use("/mcp/:connectionId?",$.mcpAuth),Z.use("/mcp/:connectionId/ui-resource",$.mcpAuth),Z.use("/mcp/gateway/:virtualMcpId?",$.mcpAuth),Z.use("/mcp/virtual-mcp/:virtualMcpId?",$.mcpAuth),Z.use("/mcp/self",$.mcpAuth),Z.route("/",Ba1()),Z.get("/mcp/:gateway?/:connectionId/.well-known/oauth-protected-resource/*",$.betterAuthProtectedResourceHandler),Z.get("/mcp/.well-known/oauth-protected-resource",$.betterAuthProtectedResourceHandler),Z.route("/mcp",KO0()),Z.route("/mcp/self",wE0()),Z.route("/mcp",HO0()),Z.all("/oauth-proxy/:connectionId/*",$.oauthProxyHandler),Z.get("/watch",$.watchHandler),Z};var $V$=B(()=>{i8();j01();Wq$();I01();gL0();Tt();E01();rk$();sk$();NS$();Ji();N01();FO0();n11();FS$();OS$();DS$();jS$();t11();TS$();o11();WO0();sS$()});function Te4($){return $.filter((Z)=>Z.vendors?.alias).map((Z)=>({name:Z.name,title:Z.title,description:Z.description,logo:Z.logo,category:Z.category,vendor:{alias:Z.vendors.alias,url:Z.vendors.url}}))}async function Re4($,Z){let X=await fetch(`${$}/rest/v1/apps?select=name,title,description,logo,category,vendors(alias,url)`,{headers:{apikey:Z,Authorization:`Bearer ${Z}`,Accept:"application/json"},signal:AbortSignal.timeout(Ae4)});if(!X.ok){let G=await X.text().catch(()=>X.statusText);throw console.error(`[deco-apps] Supabase error (${X.status}): ${G.slice(0,200)}`),Error(`External service error (${X.status})`)}return await X.json()}var Ae4=1e4,Ie4=async($,Z)=>{if(!$.get("studioContext").auth.user?.id)return $.json({error:"Unauthorized"},401);return Z()},ZV$=()=>{let $=new L1;return $.use("*",Ie4),$.get("/",async(Z)=>{let X=n0(),G=X.decoSupabaseUrl,Q=X.decoSupabaseServiceKey;if(!G||!Q)return Z.json({apps:[]});try{let Y=await Re4(G,Q);return Z.json({apps:Te4(Y)})}catch(Y){return console.error("[deco-apps] GET error:",Y),Z.json({error:"Failed to fetch apps"},502)}}),$};var XV$=B(()=>{i8();f$()});import{z as I1}from"zod";function FW($,Z="invalid_request_error",X=null,G=null){return{error:{message:$,type:Z,param:X,code:G}}}function fe4($){if(!$)return null;let Z=$.indexOf(":");if(Z===-1)return{credentialId:null,modelId:$};let X=$.substring(0,Z),G=$.substring(Z+1);if(!X||!G)return null;return{credentialId:X,modelId:G}}function xe4($,Z,X){try{return JSON.parse($)}catch{throw new YV$(`Invalid JSON in tool call arguments for function '${X}' (tool_call_id: ${Z}): ${$}`)}}function ye4($){let Z={};for(let X of $)if(X.role==="assistant"&&X.tool_calls)for(let G of X.tool_calls)Z[G.id]=G.function.name;return $.map((X)=>{switch(X.role){case"system":return{role:"system",content:X.content};case"user":if(typeof X.content==="string")return{role:"user",content:X.content};return{role:"user",content:X.content.map((Q)=>{if(Q.type==="text")return{type:"text",text:Q.text};return{type:"image",image:Q.image_url.url}})};case"assistant":if(X.tool_calls&&X.tool_calls.length>0)return{role:"assistant",content:X.tool_calls.map((Q)=>({type:"tool-call",toolCallId:Q.id,toolName:Q.function.name,input:xe4(Q.function.arguments,Q.id,Q.function.name)}))};return{role:"assistant",content:X.content??""};case"tool":let G=Z[X.tool_call_id]??"unknown";return{role:"tool",content:[{type:"tool-result",toolCallId:X.tool_call_id,toolName:G,output:{type:"text",value:X.content}}]}}})}function ge4($){let Z=$.map((X)=>{let G=X.function.parameters?HQ(X.function.parameters):HQ({type:"object",properties:{}});return[X.function.name,V$({description:X.function.description,inputSchema:G})]});return Object.fromEntries(Z)}function he4($){if(!$)return;return{openai:{response_format:$}}}function ue4(){return`chatcmpl-${crypto.randomUUID().replace(/-/g,"").substring(0,29)}`}function GV$($,Z,X,G,Q,Y){let J={model:$,messages:Z,tools:X,temperature:G.temperature,maxTokens:G.max_tokens,topP:G.top_p,frequencyPenalty:G.frequency_penalty,presencePenalty:G.presence_penalty,stopSequences:G.stop?Array.isArray(G.stop)?G.stop:[G.stop]:void 0,abortSignal:Y};return Q?{...J,providerOptions:Q}:J}function QV$($){if($==="tool-calls")return"tool_calls";if($==="length")return"length";return"stop"}var qe4=256,Me4,ke4,Se4,Ve4,Ce4,_e4,ve4,be4,YV$,JV$,KV$;var WV$=B(()=>{S4();i8();Ng();YH();Me4=I1.object({type:I1.literal("function"),function:I1.object({name:I1.string(),description:I1.string().optional(),parameters:I1.record(I1.string(),I1.unknown()).optional()})}),ke4=I1.object({id:I1.string(),type:I1.literal("function"),function:I1.object({name:I1.string(),arguments:I1.string()})}),Se4=I1.discriminatedUnion("role",[I1.object({role:I1.literal("system"),content:I1.string(),name:I1.string().optional()}),I1.object({role:I1.literal("user"),content:I1.union([I1.string(),I1.array(I1.union([I1.object({type:I1.literal("text"),text:I1.string()}),I1.object({type:I1.literal("image_url"),image_url:I1.object({url:I1.string(),detail:I1.string().optional()})})]))]),name:I1.string().optional()}),I1.object({role:I1.literal("assistant"),content:I1.string().nullable().optional(),name:I1.string().optional(),tool_calls:I1.array(ke4).optional()}),I1.object({role:I1.literal("tool"),content:I1.string(),tool_call_id:I1.string()})]),Ve4=I1.object({type:I1.literal("text")}),Ce4=I1.object({type:I1.literal("json_object")}),_e4=I1.object({type:I1.literal("json_schema"),json_schema:I1.object({name:I1.string(),description:I1.string().optional(),schema:I1.record(I1.string(),I1.unknown()),strict:I1.boolean().optional()})}),ve4=I1.union([Ve4,Ce4,_e4]),be4=I1.object({model:I1.string().describe("Format: 'model_id' or 'credential_id:model_id'"),messages:I1.array(Se4),stream:I1.boolean().optional().default(!1),temperature:I1.number().min(0).max(2).optional(),max_tokens:I1.number().positive().optional(),top_p:I1.number().min(0).max(1).optional(),frequency_penalty:I1.number().min(-2).max(2).optional(),presence_penalty:I1.number().min(-2).max(2).optional(),stop:I1.union([I1.string(),I1.array(I1.string())]).optional(),tools:I1.array(Me4).optional(),tool_choice:I1.union([I1.literal("auto"),I1.literal("none"),I1.literal("required"),I1.object({type:I1.literal("function"),function:I1.object({name:I1.string()})})]).optional(),response_format:ve4.optional(),user:I1.string().optional()});YV$=class YV$ extends Error{constructor($){super($);this.name="MessageConversionError"}};JV$=new L1;JV$.post("/:org/v1/chat/completions",async($)=>{let Z=$.get("studioContext"),X=$.req.param("org");try{if(!Z.auth.apiKey?.id)return $.json(FW("API key authentication required. Provide a valid API key via Authorization header.","authentication_error"),401);if(!Z.organization)return $.json(FW("Organization context is required. Ensure your API key has organization metadata.","invalid_request_error","organization"),400);if((Z.organization.slug??Z.organization.id)!==X)return $.json(FW("Organization mismatch. The API key's organization does not match the requested organization.","invalid_request_error","organization"),403);let G=await $.req.json(),Q=be4.safeParse(G);if(!Q.success){let L=Q.error.issues[0]??{message:"Invalid request",path:[]};return $.json(FW(`Invalid request: ${L.message}`,"invalid_request_error",L.path.length>0?L.path.join("."):null),400)}let Y=Q.data,J=fe4(Y.model);if(!J)return $.json(FW("Invalid model format. Expected 'model_id' or 'credential_id:model_id' (e.g., 'claude-sonnet-4-6' or 'key_abc123:claude-sonnet-4-6')","invalid_request_error","model"),400);let{credentialId:K}=J,{modelId:W}=J;if(!K){let E=(await Z.storage.aiProviderKeys.list({organizationId:Z.organization.id})).find((z)=>TB(z.providerId));if(!E)return $.json(FW("No AI provider credentials configured for this organization. Add a credential in settings or specify one explicitly via 'credential_id:model_id'.","invalid_request_error","model"),400);K=E.id}let N;try{N=await Z.aiProviders.activate(K,Z.organization.id)}catch{return $.json(FW(`AI provider credential not found or inaccessible: ${K}`,"invalid_request_error","model"),404)}let H=N.aiSdk.languageModel(W),F=ye4(Y.messages),U=Y.tools?ge4(Y.tools):void 0,w=he4(Y.response_format),O=ue4(),D=Math.floor(Date.now()/1000);if(Y.stream)return qH($,async(L)=>{let E=GV$(H,F,U,Y,w,$.req.raw.signal);try{let z=Fw(E),j=!1,A=0,P="",I=async()=>{if(P.length===0)return;let V=P;P="",await L.writeSSE({data:JSON.stringify({id:O,object:"chat.completion.chunk",created:D,model:Y.model,choices:[{index:0,delta:{content:V},finish_reason:null}]})})};for await(let V of z.fullStream){if(!j&&(V.type==="text-delta"||V.type==="tool-call"))await L.writeSSE({data:JSON.stringify({id:O,object:"chat.completion.chunk",created:D,model:Y.model,choices:[{index:0,delta:{role:"assistant",content:""},finish_reason:null}]})}),j=!0;if(V.type==="text-delta"){if(P+=V.text,P.length>=qe4)await I()}else if(V.type==="tool-call"){await I();let k=A++;await L.writeSSE({data:JSON.stringify({id:O,object:"chat.completion.chunk",created:D,model:Y.model,choices:[{index:0,delta:{tool_calls:[{index:k,id:V.toolCallId,type:"function",function:{name:V.toolName,arguments:JSON.stringify(V.input)}}]},finish_reason:null}]})})}else if(V.type==="finish")await I(),await L.writeSSE({data:JSON.stringify({id:O,object:"chat.completion.chunk",created:D,model:Y.model,choices:[{index:0,delta:{},finish_reason:QV$(V.finishReason)}],usage:V.totalUsage?{prompt_tokens:V.totalUsage.inputTokens??0,completion_tokens:V.totalUsage.outputTokens??0,total_tokens:V.totalUsage.totalTokens??0}:void 0})})}await I(),await L.writeSSE({data:"[DONE]"})}catch(z){let j=z;console.error("[openai-compat:stream] Error:",j.message),await L.writeSSE({data:JSON.stringify({error:{message:j.message,type:"server_error"}})})}});else{let L=GV$(H,F,U,Y,w,$.req.raw.signal),E=await Nw(L),z={role:"assistant",content:E.text||null};if(E.toolCalls&&E.toolCalls.length>0)z.tool_calls=E.toolCalls.map((j)=>({id:j.toolCallId,type:"function",function:{name:j.toolName,arguments:JSON.stringify("input"in j?j.input:{})}})),z.content=null;return $.json({id:O,object:"chat.completion",created:D,model:Y.model,choices:[{index:0,message:z,finish_reason:QV$(E.finishReason)}],usage:{prompt_tokens:E.usage?.inputTokens??0,completion_tokens:E.usage?.outputTokens??0,total_tokens:E.usage?.totalTokens??0}})}}catch(G){let Q=G;if(Q.name==="AbortError")return $.json(FW("Request aborted","invalid_request_error"),400);if(Q.name==="MessageConversionError")return $.json(FW(Q.message,"invalid_request_error","messages"),400);return console.error("[openai-compat] Error:",Q.message,Q.stack),$.json(FW(Q.message,"server_error"),500)}});KV$=JV$});var HV$;var NV$=B(()=>{HV$={name:"decocms",version:"4.170.6",description:"Deco CMS \u2014 Self-hostable MCP Gateway for managing AI connections and tools",author:"Deco team",repository:{type:"git",url:"git+https://github.com/decocms/studio.git",directory:"apps/api"},bugs:{url:"https://github.com/decocms/studio/issues"},type:"module",bin:{deco:"./dist/server/cli.js"},files:["dist/**/*"],scripts:{dev:"bun run migrate && bun run dev:server","dev:server":"bun run --cwd=../../packages/sandbox build && NODE_ENV=development bun --env-file=.env --hot run src/index.ts",build:"bun run build:server","build:server":"bun run scripts/bundle-server-script.ts --dist ./dist/server","generate:tool-contracts":"bun run scripts/generate-tool-contracts.ts","db:migrate":"bun run ./dist/server/migrate.js",check:"tsc --noEmit",start:"bun run ./dist/server/server.js",migrate:"bun run src/database/migrate.ts",test:"bun test src","better-auth:migrate":"bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",prepublishOnly:"bun run --cwd=../.. build:studio"},optionalDependencies:{"@duckdb/node-api":"^1.5.0-r.1"},dependencies:{"@ai-sdk/anthropic":"^3.0.85","@ai-sdk/google":"^3.0.83","@ai-sdk/openai":"^3.0.73","@anthropic-ai/sdk":"^0.105.0","@aws-sdk/client-s3":"^3.1013.0","@aws-sdk/client-sts":"^3.1013.0","@aws-sdk/lib-storage":"^3.1013.0","@aws-sdk/s3-request-presigner":"^3.1013.0","@clickhouse/client":"^1.8.1","@dbos-inc/dbos-sdk":"^4.21.6","@inkjs/ui":"^2.0.0","@nats-io/jetstream":"3.4.0","@nats-io/kv":"3.4.0","@nats-io/nats-core":"3.4.0","@nats-io/transport-node":"3.4.0","@openrouter/ai-sdk-provider":"^2.9.1","@opentelemetry/core":"^2.6.0","embedded-postgres":"^18.3.0-beta.16",ink:"^6.8.0",kysely:"^0.28.12","posthog-node":"^5.0.0",react:"^19.2.6","react-dom":"^19.2.6"},devDependencies:{"@ai-sdk/provider":"^3.0.10","@better-auth/sso":"1.4.1","@decocms/better-auth":"1.5.17","@decocms/bindings":"workspace:*","@decocms/mcp-utils":"workspace:*","@decocms/runtime":"workspace:*","@decocms/sandbox":"workspace:*","@decocms/shared":"workspace:*","@jitl/quickjs-wasmfile-release-sync":"0.31.0","@modelcontextprotocol/sdk":"1.29.0","@nats-io/jwt":"0.0.10-5","@opentelemetry/api":"^1.9.0","@opentelemetry/api-logs":"^0.211.0","@opentelemetry/exporter-logs-otlp-proto":"^0.211.0","@opentelemetry/exporter-prometheus":"^0.208.0","@opentelemetry/exporter-trace-otlp-proto":"^0.207.0","@opentelemetry/instrumentation-runtime-node":"^0.24.0","@opentelemetry/resources":"^2.6.0","@opentelemetry/sdk-logs":"^0.211.0","@opentelemetry/sdk-metrics":"^2.2.0","@opentelemetry/sdk-node":"^0.207.0","@opentelemetry/sdk-trace-base":"^2.5.0","@types/bun":"^1.3.1","@types/google.maps":"^3.65.2","@types/pg":"^8.15.6","@types/react-syntax-highlighter":"^15.5.13","@vercel/nft":"^1.1.1",ai:"^6.0.208","better-auth":"1.4.22",croner:"^9.1.0",degit:"^2.8.4",hono:"^4.10.7",jose:"^6.0.11",nanoid:"^5.1.6",pg:"^8.16.3",typescript:"^7.0.2",typescript5:"npm:typescript@^5.9.3",zod:"4.3.6"},homepage:"https://github.com/decocms/studio",keywords:["mcp","model-context-protocol","ai","gateway","self-hosted","tools"],license:"MIT",publishConfig:{access:"public"}}});function de4(){let $=process.env.POSTHOG_KEY;if(!$)return null;return{key:$,host:process.env.POSTHOG_HOST??le4}}var FV$,le4="https://ph.studio.decocms.com",UV$;var wV$=B(()=>{i8();$C0();WV();wZ();f$();Q01();NV$();FV$=new L1;FV$.get("/",($)=>{let Z={version:HV$.version,theme:Iq1(),...kB().logo&&{logo:kB().logo},...uK()&&{internalUrl:MI1()},...n0().enableDecoImport&&{enableDecoImport:!0},brandExtractEnabled:!!n0().firecrawlApiKey,auth:A2$(),posthog:de4(),googleMapsApiKey:process.env.GOOGLE_MAPS_API_KEY?.trim()||null,runtime:{agentSandbox:!uK()&&n0().sandboxProviderKind==="agent-sandbox"}};return $.header("Cache-Control","no-store"),$.json({success:!0,config:Z})});UV$=FV$});function Fg($){let Z=($??"").trim().toLowerCase();return Z=Z.replace(/^https?:\/\//,""),Z=Z.replace(/^www\./,""),Z=Z.split(/[/?#]/)[0]??"",Z.replace(/\/+$/,"")}function H$1($){return(Fg($).split(".")[0]||$).replace(/[-_]/g," ").split(" ").filter(Boolean).map((X)=>X.charAt(0).toUpperCase()+X.slice(1)).join(" ")}function BV$($,Z=64){return`https://www.google.com/s2/favicons?domain=${encodeURIComponent(Fg($))}&sz=${Z}`}function OV$($,Z){let X=$.trim();if(X.length<=Z)return X;let G=X.slice(0,Z-1),Q=G.lastIndexOf(" ");return`${(Q>Z*0.6?G.slice(0,Q):G).trimEnd()}\u2026`}function DV$($){let{brand:Z,domain:X,score:G,verdict:Q}=$,Y=typeof G==="number"?`${Z} commerce report \u2014 ${Math.round(G)}/100 \xB7 decocms`:`${Z} commerce report \xB7 decocms`,J=`See the full ${Z} scorecard \u2014 SEO, performance, conversion & AEO signals scored by decocms.`,K=Q?.trim()?OV$(`${Q.trim().replace(/\s+/g," ")} \u2014 ${J}`,200):OV$(`How does ${X} really perform? ${J}`,200);return{title:Y,description:K}}import{z as c0}from"zod";var wC,me4,ie4,ne4,pe4,LV$;var EV$=B(()=>{wC=c0.enum(["good","bad","neutral"]),me4=c0.preprocess(($)=>{if(Array.isArray($))return{kind:"text",value:$.find((X)=>X!==null&&typeof X!=="object")??""};return $!==null&&typeof $==="object"?$:{kind:"text",value:$}},c0.object({kind:c0.enum(["text","number","sparkline","badge","score"]).catch("text"),value:c0.coerce.string().optional(),tone:wC.optional(),muted:c0.boolean().optional(),delta:c0.coerce.string().optional(),deltaDir:c0.enum(["up","down","neutral"]).optional(),points:c0.array(c0.coerce.number()).optional(),label:c0.coerce.string().optional()}).transform(($)=>{if($.kind==="badge"&&$.label==null)$.label=$.value??"";if($.kind==="score"){let Z=Number($.value);if(Number.isNaN(Z))return{...$,kind:"text"}}return $})),ie4=c0.preprocess(($)=>{let Z=$;if(Z&&typeof Z==="object"&&!Array.isArray(Z)&&Array.isArray(Z.cells))Z=Z.cells;if(Array.isArray(Z)&&Z.length===1&&Array.isArray(Z[0]))Z=Z[0];if(Array.isArray(Z))return Z;if(Z&&typeof Z==="object")return Object.values(Z);return Z},c0.array(me4)),ne4={key:c0.coerce.string(),title:c0.coerce.string(),eyebrow:c0.coerce.string().optional(),headline:c0.coerce.string(),annotation:c0.coerce.string().optional(),methodology:c0.coerce.string().optional(),sources:c0.array(c0.object({name:c0.coerce.string(),logoUrl:c0.coerce.string()})).optional()},pe4=c0.discriminatedUnion("template",[c0.object({template:c0.literal("cover"),score:c0.object({value:c0.coerce.number(),max:c0.coerce.number().optional(),grade:c0.coerce.string().optional(),label:c0.coerce.string().optional()}).optional(),brandImage:c0.coerce.string().optional(),screenshot:c0.coerce.string().optional(),mobileScreenshot:c0.coerce.string().optional()}),c0.object({template:c0.literal("cta"),ctaUrl:c0.coerce.string().optional(),ctaLabel:c0.coerce.string().optional(),bullets:c0.array(c0.coerce.string()).optional()}),c0.object({template:c0.literal("series"),points:c0.array(c0.coerce.number()).min(2),xLabels:c0.array(c0.coerce.string()).min(1),unit:c0.coerce.string().optional(),callout:c0.object({index:c0.coerce.number(),value:c0.coerce.string(),tone:wC.optional()})}),c0.object({template:c0.literal("threshold"),value:c0.coerce.string().default(""),metricLabel:c0.coerce.string().optional(),ratio:c0.coerce.number(),thresholdRatio:c0.coerce.number().optional(),thresholdLabel:c0.coerce.string().default(""),tone:wC.optional()}),c0.object({template:c0.literal("stats"),stats:c0.array(c0.object({value:c0.coerce.string(),label:c0.coerce.string(),tone:wC.optional()})).min(1)}),c0.object({template:c0.literal("bars"),items:c0.array(c0.object({value:c0.coerce.string(),label:c0.coerce.string(),ratio:c0.coerce.number(),tone:wC.optional()})).min(1)}),c0.object({template:c0.literal("gauges"),gauges:c0.array(c0.object({label:c0.coerce.string(),value:c0.coerce.string(),status:c0.enum(["good","warn","bad"]).catch("warn"),caption:c0.coerce.string().optional(),ratio:c0.coerce.number().optional()})).min(1)}),c0.object({template:c0.literal("checklist"),checks:c0.array(c0.object({label:c0.coerce.string(),status:c0.enum(["pass","fail","warn"]).catch("fail"),value:c0.coerce.string().optional()})).min(1)}),c0.object({template:c0.literal("table"),columns:c0.array(c0.object({label:c0.coerce.string(),align:c0.enum(["left","right"]).optional()})).min(1),rows:c0.array(ie4).min(1),highlightRow:c0.coerce.number().optional()}),c0.object({template:c0.literal("products"),products:c0.array(c0.object({name:c0.coerce.string(),price:c0.coerce.string().optional(),image:c0.coerce.string().optional(),url:c0.coerce.string().optional()})).min(1)}),c0.object({template:c0.literal("list"),entries:c0.array(c0.object({label:c0.coerce.string(),severity:c0.enum(["error","warning","notice"]).catch("notice")})).min(1),moreCount:c0.coerce.number().optional()}),c0.object({template:c0.literal("keywords"),volumeLabel:c0.coerce.string().optional(),keywords:c0.array(c0.object({term:c0.coerce.string(),volume:c0.coerce.string(),position:c0.coerce.number().catch(0)})).min(1)}),c0.object({template:c0.literal("competitor"),metricLabel:c0.coerce.string().optional(),competitors:c0.array(c0.object({name:c0.coerce.string(),value:c0.coerce.string(),tone:wC.optional(),isYou:c0.boolean().optional()})).min(1)}),c0.object({template:c0.literal("scorecard"),rivalLabel:c0.coerce.string().optional(),dimensions:c0.array(c0.object({label:c0.coerce.string(),you:c0.coerce.string(),rival:c0.coerce.string().optional(),rivalName:c0.coerce.string().optional(),tone:wC.optional()})).min(1)})]),LV$=c0.object({...ne4,template:pe4})});function jE0($){let Z=[],X=[...$.sections].sort((G,Q)=>G.position-Q.position).map((G)=>{let Q=LV$.safeParse(G.props);if(Q.success)return Q.data;let Y=Q.error.issues[0];return Z.push({section_type:G.section_type,position:G.position,reason:Y?`${Y.path.join(".")||"(root)"}: ${Y.message}`:"contract violation"}),null}).filter((G)=>G!==null);return{deck:{meta:{...$.meta,scores:$.summary?.scores},slides:X},drops:Z}}var F$1=B(()=>{EV$()});import{join as zV$}from"path";async function oe4($){try{let Z=await fetch(`${e3({})}/api/v2/public/diagnostics/${encodeURIComponent($)}`,{headers:{Accept:"application/json"},signal:AbortSignal.timeout(te4)});if(!Z.ok)return null;let X=await Z.json(),{deck:G}=jE0(X);if(!G.slides.length)return null;let Q=G.slides.find((K)=>K.template.template==="cover"),Y=Q?.template,J=Y&&Y.template==="cover"?Y:void 0;return{brand:G.meta.brand?.trim()||H$1($),score:G.meta.scores?.cover??J?.score?.value,verdict:Q?.annotation?.trim()||Q?.headline?.trim()||void 0}}catch{return null}}function bQ($){return $.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""")}function re4($,Z){let X=Fg($),G=Z?.brand?.trim()||H$1(X),Q=BV$(X,128),J=`${(n0().baseUrl??"https://studio.decocms.com").replace(/\/+$/,"")}/report/${encodeURIComponent(X)}`,{title:K,description:W}=DV$({brand:G,domain:X,score:Z?.score,verdict:Z?.verdict}),N=`${J}/og.png`,H=`${G} commerce report by decocms`;return[`<title>${bQ(K)}</title>`,`<meta name="description" content="${bQ(W)}" />`,'<meta name="robots" content="noindex, follow" />','<meta property="og:type" content="website" />','<meta property="og:site_name" content="decocms" />',`<meta property="og:title" content="${bQ(K)}" />`,`<meta property="og:description" content="${bQ(W)}" />`,`<meta property="og:url" content="${bQ(J)}" />`,`<meta property="og:image" content="${bQ(N)}" />`,'<meta property="og:image:width" content="1200" />','<meta property="og:image:height" content="630" />',`<meta property="og:image:alt" content="${bQ(H)}" />`,'<meta name="twitter:card" content="summary_large_image" />',`<meta name="twitter:title" content="${bQ(K)}" />`,`<meta name="twitter:description" content="${bQ(W)}" />`,`<meta name="twitter:image" content="${bQ(N)}" />`,`<meta name="twitter:image:alt" content="${bQ(H)}" />`,`<link rel="canonical" href="${bQ(J)}" />`,`<link rel="icon" href="${bQ(Q)}" sizes="any" />`].join(`
|
|
2719
|
+
Respond with the structured verdict and a short reason.`,hS$;var cS$=B(()=>{S4();Gw();J$1();Ne4=K$1.object({requiresReview:K$1.boolean().describe("true if the changes should go through pull-request review"),reason:K$1.string().describe("One short sentence explaining the decision (max ~120 chars)")});hS$={requiresReview:!1,reason:""}});function we4($){if(!$||$.includes(".."))return!1;return Ue4.test($)}function lS$($){let Z=typeof $.__resolveType==="string"?$.__resolveType:null;if(!Z||!we4(Z))return null;let{__resolveType:X,...G}=$;return{resolveType:Z,payload:G}}function dS$($,Z){return`${$.replace(/\/+$/,"")}/deco/invoke/${Z}`}var Ue4;var mS$=B(()=>{Ue4=/^[\w./@-]+$/});function W$1($){let Z;try{Z=new URL($)}catch{return null}if(!Z.hostname.endsWith(".localhost"))return null;let X=Z.host;return Z.hostname="127.0.0.1",{url:Z.toString(),hostHeader:X}}function iS$($,Z){let X=$?.githubRepo;if(!X?.owner||!X?.name)return null;if(!X.connectionId)return X;if(!Z.includes(X.connectionId))return null;return X}async function nS$($,Z,X,G){if(!G.connectionId)throw new Hg("Push requires a connected GitHub account. Connect mcp-github for this project and restart the sandbox.");let Q=$.organization?.id;if(!Q)throw new Hg(h7);await w90({ctx:$,connectionId:G.connectionId,organizationId:Q,forceRefresh:!0,onLegacyMintError:(H)=>{let F=H instanceof Error?H.message:h7;throw new Hg(F)}});let{cloneUrl:Y,gitUserName:J,gitUserEmail:K}=await Nx(G.connectionId,G.owner,G.name,$.db,$.vault),W=LE0($),N=await Z.proxyDaemonRequest(X,"/_sandbox/config",{method:"PUT",headers:new Headers({"content-type":"application/json"}),body:JSON.stringify({git:{repository:{cloneUrl:Y},identity:{userName:J,userEmail:K}},...W?{operator:W}:{}})});if(!N.ok){let H=await Sw(N,Oe4).catch(()=>N.statusText);throw Error(`Failed to refresh sandbox git credentials (${N.status}): ${H}`)}}var Oe4=10485760,Hg;var pS$=B(()=>{oU();e11();_n();O90();Hg=class Hg extends Error{constructor($){super($);this.name="GitPushAuthError"}}});function De4($){let Z=$.startsWith("thread:")?$.slice(7):$;if(!Z||Z.length>255||Z.includes("..")||Z.startsWith("/")||Z.endsWith("/")||Z.endsWith(".lock")||!Be4.test(Z))throw Error(`Invalid branch name: ${$}`)}function FC($){return AbortSignal.any([$.req.raw.signal,AbortSignal.timeout(Ee4)])}function UC($){let{runner:Z}=$.get("vmClaim");if(!Z)return $.json({error:"No sandbox runner configured"},503);return Z}function N$1($,Z){let G=(EE0.get($)??Promise.resolve()).catch(()=>{}).then(Z),Q=G.catch(()=>{});return EE0.set($,Q),Q.finally(()=>{if(EE0.get($)===Q)EE0.delete($)}),G}async function kZ($,Z,X){let G=UC($);if(G instanceof Response)return G;let{claimName:Q,userId:Y,projectRef:J}=$.get("vmClaim"),K=X?.method??"POST",W=null,N=new Headers;if(X?.jsonBody!==void 0)W=X.jsonBody,N.set("content-type","application/json");else if(X?.forwardJsonBody)W=await $.req.text(),N.set("content-type","application/json");let H=X?.signal,F={method:K,headers:N,body:W,...H?{signal:H}:{}},U=async()=>{let w=await G.proxyDaemonRequest(Q,Z,F);if(X?.map404to410&&w.status===404){try{await w.body?.cancel()}catch{}if(await G.adoptLiveClaim?.({userId:Y,projectRef:J},Q))w=await G.proxyDaemonRequest(Q,Z,F);if(w.status===404){try{await w.body?.cancel()}catch{}return new Response(JSON.stringify({error:"Sandbox handle is gone. The sandbox needs to be re-provisioned."}),{status:410,headers:{"content-type":"application/json",...vQ}})}}let O=await w.text(),D=X?.redactRepoDirUnlessDesktop&&G.kind!=="user-desktop"?je4(O):O,L=w.headers.get("content-type")??"application/json";return new Response(D,{status:w.status,headers:{"content-type":L,...vQ}})};try{if(H){let w=U();return w.catch(()=>{}),await Promise.race([w,new Promise((D,L)=>{if(H.aborted)return L(H.reason);H.addEventListener("abort",()=>L(H.reason),{once:!0})})])}return await U()}catch(w){let O=w instanceof Error?w.message:String(w);return $.json({error:`Daemon unreachable: ${O}`},502)}}function je4($){try{let Z=JSON.parse($);if(Z&&typeof Z==="object"&&!Array.isArray(Z)&&"repoDir"in Z)return JSON.stringify({...Z,repoDir:null})}catch{}return $}async function zE0($,Z,X,G="GET",Q){let Y=await $.proxyDaemonRequest(Z,X,{method:G,headers:new Headers,body:null});if(Y.status===404&&Q){try{await Y.body?.cancel()}catch{}if(await $.adoptLiveClaim?.(Q,Z))Y=await $.proxyDaemonRequest(Z,X,{method:G,headers:new Headers,body:null})}if(Y.status===404){try{await Y.body?.cancel()}catch{}throw Error("SANDBOX_GONE")}let J=await Y.text();if(!Y.ok)try{let K=JSON.parse(J);throw Error(K.error??`Daemon error (${Y.status})`)}catch(K){if(K instanceof Error&&K.message!==J)throw K;throw Error(`Daemon error (${Y.status})`)}return JSON.parse(J)}function Pe4($){return rS$.includes($)}var Be4,tS$=524288,Le4=65536,Ee4=1e4,oS$=2000,ze4,EE0,vQ,rS$,aS$=()=>{let $=new L1;return $.use("/:virtualMcpId/:branch/*",ze4),$.post("/:virtualMcpId/:branch/write",(Z)=>kZ(Z,"/_sandbox/write",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/unlink",(Z)=>kZ(Z,"/_sandbox/unlink",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/mkdir",(Z)=>kZ(Z,"/_sandbox/mkdir",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/rename",(Z)=>kZ(Z,"/_sandbox/rename",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/read",(Z)=>kZ(Z,"/_sandbox/read",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/glob",(Z)=>kZ(Z,"/_sandbox/glob",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/grep",(Z)=>kZ(Z,"/_sandbox/grep",{forwardJsonBody:!0,signal:FC(Z)})),$.post("/:virtualMcpId/:branch/exec/:script",async(Z)=>{let X=Z.req.param("script");if(!X)return Z.json({error:"missing script name"},400);return kZ(Z,`/_sandbox/exec/${encodeURIComponent(X)}`)}),$.post("/:virtualMcpId/:branch/exec/:script/kill",async(Z)=>{let X=Z.req.param("script");if(!X)return Z.json({error:"missing script name"},400);return kZ(Z,`/_sandbox/exec/${encodeURIComponent(X)}/kill`)}),$.get("/:virtualMcpId/:branch/config",(Z)=>kZ(Z,"/_sandbox/config",{method:"GET",map404to410:!0,redactRepoDirUnlessDesktop:!0})),$.put("/:virtualMcpId/:branch/config",(Z)=>kZ(Z,"/_sandbox/config",{method:"PUT",forwardJsonBody:!0,map404to410:!0})),$.post("/:virtualMcpId/:branch/setup/:step",async(Z)=>{let X=Z.req.param("step");if(!X||!Pe4(X))return Z.json({error:`step must be one of: ${rS$.join(", ")}`},400);if(X==="start"){let G=Z.get("vmClaim");if(G.runner){let Q=e(Z.var.studioContext),Y=hU0(G.virtualMcpMetadata);try{await uU0({ctx:Z.var.studioContext,runner:G.runner,handle:G.claimName,orgId:Q.id,userId:G.callerUserId,entries:Y})}catch(J){let K=J instanceof Error?J.message:String(J);return Z.json({error:`Failed to push env to daemon: ${K}`},502)}}}return kZ(Z,`/_sandbox/setup/${X}`,{signal:Z.req.raw.signal,map404to410:!0})}),$.get("/:virtualMcpId/:branch/events",(Z)=>{let X=Z.get("vmClaim");if(!X.runner)return qH(Z,async(G)=>{await G.writeSSE({event:"phase",data:JSON.stringify({kind:"failed",reason:"unknown",message:"No sandbox runner configured on this studio instance."})})});return vS$(Z,{ctx:Z.var.studioContext,claimName:X.claimName,runner:X.runner,virtualMcpId:X.virtualMcpId,branch:X.branch,userId:X.userId,projectRef:X.projectRef,virtualMcpMetadata:X.virtualMcpMetadata})}),$.get("/:virtualMcpId/:branch/git/status",(Z)=>kZ(Z,"/_sandbox/git/status",{method:"GET",map404to410:!0,signal:AbortSignal.any([Z.req.raw.signal,AbortSignal.timeout(oS$)])})),$.post("/:virtualMcpId/:branch/git/status",(Z)=>kZ(Z,"/_sandbox/git/status",{map404to410:!0,signal:AbortSignal.any([Z.req.raw.signal,AbortSignal.timeout(oS$)])})),$.post("/:virtualMcpId/:branch/git/diff",(Z)=>kZ(Z,"/_sandbox/git/diff",{forwardJsonBody:!0,map404to410:!0})),$.post("/:virtualMcpId/:branch/git/publish",async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G,virtualMcpMetadata:Q,connectionIds:Y}=Z.get("vmClaim"),J=Z.var.studioContext;return N$1(G,async()=>{try{await $$1(J,X,G);let K=iS$(Q,Y);if(K)await nS$(J,X,G,K)}catch(K){if(K instanceof Hg)return Z.json({error:K.message},403,vQ);let W=K instanceof Error?K.message:String(K);return Z.json({error:W},502,vQ)}return kZ(Z,"/_sandbox/git/publish",{forwardJsonBody:!0,map404to410:!0})})}),$.post("/:virtualMcpId/:branch/git/discard",(Z)=>{let{claimName:X}=Z.get("vmClaim");return N$1(X,()=>kZ(Z,"/_sandbox/git/discard",{forwardJsonBody:!0,map404to410:!0}))}),$.post("/:virtualMcpId/:branch/git/rebase",async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G}=Z.get("vmClaim"),Q=Z.var.studioContext;return N$1(G,async()=>{try{await $$1(Q,X,G)}catch(Y){let J=Y instanceof Error?Y.message:String(Y);return Z.json({error:J},502,vQ)}return kZ(Z,"/_sandbox/git/rebase",{forwardJsonBody:!0,map404to410:!0})})}),$.post("/:virtualMcpId/:branch/git/suggest-commit",H7({maxSize:tS$,onError:(Z)=>Z.json({error:"Payload too large"},413,vQ)}),async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G,userId:Q,projectRef:Y}=Z.get("vmClaim"),J=Z.var.studioContext;try{let K=await Z.req.json().catch(()=>({})),W=K.status,N=K.diff,H=N!=null&&typeof N.diffs==="object"&&N.diffs!==null,[F,U]=G$1(W)&&H?[W,N]:await Promise.all([zE0(X,G,"/_sandbox/git/status","GET",{userId:Q,projectRef:Y}),zE0(X,G,"/_sandbox/git/diff","GET",{userId:Q,projectRef:Y})]),w=await gS$(J,F,U);return Z.json(w,200,vQ)}catch(K){let W=K instanceof Error?K.message:String(K);if(W==="SANDBOX_GONE")return Z.json({error:"Sandbox handle is gone. The sandbox needs to be re-provisioned."},410,vQ);return Z.json({error:W},502,vQ)}}),$.post("/:virtualMcpId/:branch/git/judge-review",H7({maxSize:tS$,onError:(Z)=>Z.json({error:"Payload too large"},413,vQ)}),async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G,userId:Q,projectRef:Y}=Z.get("vmClaim"),J=Z.var.studioContext;try{let K=await Z.req.json().catch(()=>({})),W=K.status,N=K.diff,H=N!=null&&typeof N.diffs==="object"&&N.diffs!==null,[F,U]=G$1(W)&&H?[W,N]:await Promise.all([zE0(X,G,"/_sandbox/git/status","GET",{userId:Q,projectRef:Y}),zE0(X,G,"/_sandbox/git/diff","GET",{userId:Q,projectRef:Y})]),w=await uS$(J,F,U,typeof K.language==="string"?K.language:void 0);return Z.json(w,200,vQ)}catch(K){let W=K instanceof Error?K.message:String(K);if(W==="SANDBOX_GONE")return Z.json({error:"Sandbox handle is gone. The sandbox needs to be re-provisioned."},410,vQ);return Z.json({error:W},502,vQ)}}),$.get("/:virtualMcpId/:branch/preview-fetch",async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G}=Z.get("vmClaim"),Q=Z.req.query("path");if(!Q||!Q.startsWith("/")||Q.startsWith("//")||Q.includes("..")||Q.includes("\\"))return Z.json({error:"Path not allowed"},403);let Y;try{Y=await X.getPreviewUrl(G)}catch{return Z.json({error:"Preview not available"},502)}if(!Y)return Z.json({error:"Preview not available"},502);let J=Y.replace(/\/+$/,""),K=W$1(`${J}${Q}`),W;try{W=await fetch(K?.url??`${J}${Q}`,{...K?{headers:{host:K.hostHeader}}:{}})}catch{return Z.json({error:"Preview unreachable"},502)}let N;try{N=await W.text()}catch{return Z.json({error:"Preview unreachable"},502)}return new Response(N,{status:W.status,headers:{"content-type":W.headers.get("content-type")??"application/json"}})}),$.post("/:virtualMcpId/:branch/preview-invoke",H7({maxSize:Le4,onError:(Z)=>Z.json({error:"Payload too large"},413)}),async(Z)=>{let X=UC(Z);if(X instanceof Response)return X;let{claimName:G}=Z.get("vmClaim"),Q;try{Q=await X.getPreviewUrl(G)}catch{return Z.json({error:"Preview not available"},502)}if(!Q)return Z.json({error:"Preview not available"},502);let Y;try{Y=await Z.req.json()}catch{return Z.json({error:"Invalid JSON body"},400)}if(!Y||typeof Y!=="object"||Array.isArray(Y))return Z.json({error:"Invalid JSON body"},400);let J=lS$(Y);if(!J)return Z.json({error:"Invalid or missing __resolveType"},400);let K=dS$(Q,J.resolveType),W=W$1(K),N;try{N=await fetch(W?.url??K,{method:"POST",headers:{"content-type":"application/json",...W?{host:W.hostHeader}:{}},body:JSON.stringify(J.payload),signal:AbortSignal.timeout(30000)})}catch{return Z.json({error:"Preview unreachable"},502)}let H;try{H=await N.text()}catch{return Z.json({error:"Preview unreachable"},502)}return new Response(H,{status:N.status,headers:{"content-type":N.headers.get("content-type")??"application/json"}})}),$};var sS$=B(()=>{i8();XC();Ng();SS$();mN();CS$();gK();GV();_S$();bS$();Kn0();Cn();J$1();cS$();mS$();pS$();Be4=/^[a-zA-Z0-9][a-zA-Z0-9/._-]*$/;ze4=kS$(async($,Z)=>{let X=$.var.studioContext;try{W0(X)}catch{return $.json({error:"Unauthorized"},401)}let G=z1(X);if(!G)return $.json({error:"Unauthorized"},401);let Q;try{Q=e(X)}catch{return $.json({error:"Organization scope required"},403)}let Y=$.req.param("virtualMcpId"),J=$.req.param("branch");if(!Y||!J)return $.json({error:"virtualMcpId and branch are required"},400);try{De4(J)}catch(w){let O=w instanceof Error?w.message:String(w);return $.json({error:O},400)}let K=await X.storage.virtualMcps.findById(Y);if(!K||K.organization_id!==Q.id)return $.json({error:"Virtual MCP not found"},404);let W=$n({orgId:Q.id,virtualMcpId:Y,branch:J}),N=await QV(X,J,G),H=VS$({userId:N,projectRef:W},J),F=K.metadata??null,U;try{U=(await TQ(X,{userId:N,branch:J,virtualMcpMetadata:F})).provider}catch{U=null}if(!U)return $.json({error:"No sandbox runner found"},404);return $.set("vmClaim",{claimName:H,callerUserId:G,runner:U,virtualMcpId:Y,branch:J,userId:N,projectRef:W,virtualMcpMetadata:F,connectionIds:K.connections?.map((w)=>w.connection_id)??[]}),Z()});EE0=new Map;vQ={"Cache-Control":"no-store, no-cache, must-revalidate",Pragma:"no-cache"};rS$=["clone","install","start"]});var eS$=($)=>{let Z=new L1;if(Z.use("*",ZC),Z.route("/",bL0()),Z.route("/",Bq$()),Z.route("/",BS$()),Z.route("/",wS$()),Z.route("/",OE0()),Z.route("/tools",AS$()),Z.route("/",zS$()),Z.route("/",ak$({kvStorage:$.kvStorage})),Z.route("/",ok$()),Z.route("/fs",WS$({getConnection:$.getNatsConnection})),Z.route("/sandbox",aS$()),Z.route("/",HS$()),Z.route("/deco-sites",xL0()),Z.route("/sso",ML0()),Z.route("/",BE0({tokenStorage:$.tokenStorage,automationEventDispatcher:$.automationEventDispatcher})),Z.route("/webhooks",Kq$()),$.mountDevAssets)Z.route("/dev-assets",yL0({orgFromPath:!0}));return Z.use("/mcp/:connectionId?",$.mcpAuth),Z.use("/mcp/:connectionId/ui-resource",$.mcpAuth),Z.use("/mcp/gateway/:virtualMcpId?",$.mcpAuth),Z.use("/mcp/virtual-mcp/:virtualMcpId?",$.mcpAuth),Z.use("/mcp/self",$.mcpAuth),Z.route("/",Ba1()),Z.get("/mcp/:gateway?/:connectionId/.well-known/oauth-protected-resource/*",$.betterAuthProtectedResourceHandler),Z.get("/mcp/.well-known/oauth-protected-resource",$.betterAuthProtectedResourceHandler),Z.route("/mcp",KO0()),Z.route("/mcp/self",wE0()),Z.route("/mcp",HO0()),Z.all("/oauth-proxy/:connectionId/*",$.oauthProxyHandler),Z.get("/watch",$.watchHandler),Z};var $V$=B(()=>{i8();j01();Wq$();I01();gL0();Tt();E01();rk$();sk$();NS$();Ji();N01();FO0();n11();FS$();OS$();DS$();jS$();t11();TS$();o11();WO0();sS$()});function Te4($){return $.filter((Z)=>Z.vendors?.alias).map((Z)=>({name:Z.name,title:Z.title,description:Z.description,logo:Z.logo,category:Z.category,vendor:{alias:Z.vendors.alias,url:Z.vendors.url}}))}async function Re4($,Z){let X=await fetch(`${$}/rest/v1/apps?select=name,title,description,logo,category,vendors(alias,url)`,{headers:{apikey:Z,Authorization:`Bearer ${Z}`,Accept:"application/json"},signal:AbortSignal.timeout(Ae4)});if(!X.ok){let G=await X.text().catch(()=>X.statusText);throw console.error(`[deco-apps] Supabase error (${X.status}): ${G.slice(0,200)}`),Error(`External service error (${X.status})`)}return await X.json()}var Ae4=1e4,Ie4=async($,Z)=>{if(!$.get("studioContext").auth.user?.id)return $.json({error:"Unauthorized"},401);return Z()},ZV$=()=>{let $=new L1;return $.use("*",Ie4),$.get("/",async(Z)=>{let X=n0(),G=X.decoSupabaseUrl,Q=X.decoSupabaseServiceKey;if(!G||!Q)return Z.json({apps:[]});try{let Y=await Re4(G,Q);return Z.json({apps:Te4(Y)})}catch(Y){return console.error("[deco-apps] GET error:",Y),Z.json({error:"Failed to fetch apps"},502)}}),$};var XV$=B(()=>{i8();f$()});import{z as I1}from"zod";function FW($,Z="invalid_request_error",X=null,G=null){return{error:{message:$,type:Z,param:X,code:G}}}function fe4($){if(!$)return null;let Z=$.indexOf(":");if(Z===-1)return{credentialId:null,modelId:$};let X=$.substring(0,Z),G=$.substring(Z+1);if(!X||!G)return null;return{credentialId:X,modelId:G}}function xe4($,Z,X){try{return JSON.parse($)}catch{throw new YV$(`Invalid JSON in tool call arguments for function '${X}' (tool_call_id: ${Z}): ${$}`)}}function ye4($){let Z={};for(let X of $)if(X.role==="assistant"&&X.tool_calls)for(let G of X.tool_calls)Z[G.id]=G.function.name;return $.map((X)=>{switch(X.role){case"system":return{role:"system",content:X.content};case"user":if(typeof X.content==="string")return{role:"user",content:X.content};return{role:"user",content:X.content.map((Q)=>{if(Q.type==="text")return{type:"text",text:Q.text};return{type:"image",image:Q.image_url.url}})};case"assistant":if(X.tool_calls&&X.tool_calls.length>0)return{role:"assistant",content:X.tool_calls.map((Q)=>({type:"tool-call",toolCallId:Q.id,toolName:Q.function.name,input:xe4(Q.function.arguments,Q.id,Q.function.name)}))};return{role:"assistant",content:X.content??""};case"tool":let G=Z[X.tool_call_id]??"unknown";return{role:"tool",content:[{type:"tool-result",toolCallId:X.tool_call_id,toolName:G,output:{type:"text",value:X.content}}]}}})}function ge4($){let Z=$.map((X)=>{let G=X.function.parameters?HQ(X.function.parameters):HQ({type:"object",properties:{}});return[X.function.name,V$({description:X.function.description,inputSchema:G})]});return Object.fromEntries(Z)}function he4($){if(!$)return;return{openai:{response_format:$}}}function ue4(){return`chatcmpl-${crypto.randomUUID().replace(/-/g,"").substring(0,29)}`}function GV$($,Z,X,G,Q,Y){let J={model:$,messages:Z,tools:X,temperature:G.temperature,maxTokens:G.max_tokens,topP:G.top_p,frequencyPenalty:G.frequency_penalty,presencePenalty:G.presence_penalty,stopSequences:G.stop?Array.isArray(G.stop)?G.stop:[G.stop]:void 0,abortSignal:Y};return Q?{...J,providerOptions:Q}:J}function QV$($){if($==="tool-calls")return"tool_calls";if($==="length")return"length";return"stop"}var qe4=256,Me4,ke4,Se4,Ve4,Ce4,_e4,ve4,be4,YV$,JV$,KV$;var WV$=B(()=>{S4();i8();Ng();YH();Me4=I1.object({type:I1.literal("function"),function:I1.object({name:I1.string(),description:I1.string().optional(),parameters:I1.record(I1.string(),I1.unknown()).optional()})}),ke4=I1.object({id:I1.string(),type:I1.literal("function"),function:I1.object({name:I1.string(),arguments:I1.string()})}),Se4=I1.discriminatedUnion("role",[I1.object({role:I1.literal("system"),content:I1.string(),name:I1.string().optional()}),I1.object({role:I1.literal("user"),content:I1.union([I1.string(),I1.array(I1.union([I1.object({type:I1.literal("text"),text:I1.string()}),I1.object({type:I1.literal("image_url"),image_url:I1.object({url:I1.string(),detail:I1.string().optional()})})]))]),name:I1.string().optional()}),I1.object({role:I1.literal("assistant"),content:I1.string().nullable().optional(),name:I1.string().optional(),tool_calls:I1.array(ke4).optional()}),I1.object({role:I1.literal("tool"),content:I1.string(),tool_call_id:I1.string()})]),Ve4=I1.object({type:I1.literal("text")}),Ce4=I1.object({type:I1.literal("json_object")}),_e4=I1.object({type:I1.literal("json_schema"),json_schema:I1.object({name:I1.string(),description:I1.string().optional(),schema:I1.record(I1.string(),I1.unknown()),strict:I1.boolean().optional()})}),ve4=I1.union([Ve4,Ce4,_e4]),be4=I1.object({model:I1.string().describe("Format: 'model_id' or 'credential_id:model_id'"),messages:I1.array(Se4),stream:I1.boolean().optional().default(!1),temperature:I1.number().min(0).max(2).optional(),max_tokens:I1.number().positive().optional(),top_p:I1.number().min(0).max(1).optional(),frequency_penalty:I1.number().min(-2).max(2).optional(),presence_penalty:I1.number().min(-2).max(2).optional(),stop:I1.union([I1.string(),I1.array(I1.string())]).optional(),tools:I1.array(Me4).optional(),tool_choice:I1.union([I1.literal("auto"),I1.literal("none"),I1.literal("required"),I1.object({type:I1.literal("function"),function:I1.object({name:I1.string()})})]).optional(),response_format:ve4.optional(),user:I1.string().optional()});YV$=class YV$ extends Error{constructor($){super($);this.name="MessageConversionError"}};JV$=new L1;JV$.post("/:org/v1/chat/completions",async($)=>{let Z=$.get("studioContext"),X=$.req.param("org");try{if(!Z.auth.apiKey?.id)return $.json(FW("API key authentication required. Provide a valid API key via Authorization header.","authentication_error"),401);if(!Z.organization)return $.json(FW("Organization context is required. Ensure your API key has organization metadata.","invalid_request_error","organization"),400);if((Z.organization.slug??Z.organization.id)!==X)return $.json(FW("Organization mismatch. The API key's organization does not match the requested organization.","invalid_request_error","organization"),403);let G=await $.req.json(),Q=be4.safeParse(G);if(!Q.success){let L=Q.error.issues[0]??{message:"Invalid request",path:[]};return $.json(FW(`Invalid request: ${L.message}`,"invalid_request_error",L.path.length>0?L.path.join("."):null),400)}let Y=Q.data,J=fe4(Y.model);if(!J)return $.json(FW("Invalid model format. Expected 'model_id' or 'credential_id:model_id' (e.g., 'claude-sonnet-4-6' or 'key_abc123:claude-sonnet-4-6')","invalid_request_error","model"),400);let{credentialId:K}=J,{modelId:W}=J;if(!K){let E=(await Z.storage.aiProviderKeys.list({organizationId:Z.organization.id})).find((z)=>TB(z.providerId));if(!E)return $.json(FW("No AI provider credentials configured for this organization. Add a credential in settings or specify one explicitly via 'credential_id:model_id'.","invalid_request_error","model"),400);K=E.id}let N;try{N=await Z.aiProviders.activate(K,Z.organization.id)}catch{return $.json(FW(`AI provider credential not found or inaccessible: ${K}`,"invalid_request_error","model"),404)}let H=N.aiSdk.languageModel(W),F=ye4(Y.messages),U=Y.tools?ge4(Y.tools):void 0,w=he4(Y.response_format),O=ue4(),D=Math.floor(Date.now()/1000);if(Y.stream)return qH($,async(L)=>{let E=GV$(H,F,U,Y,w,$.req.raw.signal);try{let z=Fw(E),j=!1,A=0,P="",I=async()=>{if(P.length===0)return;let V=P;P="",await L.writeSSE({data:JSON.stringify({id:O,object:"chat.completion.chunk",created:D,model:Y.model,choices:[{index:0,delta:{content:V},finish_reason:null}]})})};for await(let V of z.fullStream){if(!j&&(V.type==="text-delta"||V.type==="tool-call"))await L.writeSSE({data:JSON.stringify({id:O,object:"chat.completion.chunk",created:D,model:Y.model,choices:[{index:0,delta:{role:"assistant",content:""},finish_reason:null}]})}),j=!0;if(V.type==="text-delta"){if(P+=V.text,P.length>=qe4)await I()}else if(V.type==="tool-call"){await I();let k=A++;await L.writeSSE({data:JSON.stringify({id:O,object:"chat.completion.chunk",created:D,model:Y.model,choices:[{index:0,delta:{tool_calls:[{index:k,id:V.toolCallId,type:"function",function:{name:V.toolName,arguments:JSON.stringify(V.input)}}]},finish_reason:null}]})})}else if(V.type==="finish")await I(),await L.writeSSE({data:JSON.stringify({id:O,object:"chat.completion.chunk",created:D,model:Y.model,choices:[{index:0,delta:{},finish_reason:QV$(V.finishReason)}],usage:V.totalUsage?{prompt_tokens:V.totalUsage.inputTokens??0,completion_tokens:V.totalUsage.outputTokens??0,total_tokens:V.totalUsage.totalTokens??0}:void 0})})}await I(),await L.writeSSE({data:"[DONE]"})}catch(z){let j=z;console.error("[openai-compat:stream] Error:",j.message),await L.writeSSE({data:JSON.stringify({error:{message:j.message,type:"server_error"}})})}});else{let L=GV$(H,F,U,Y,w,$.req.raw.signal),E=await Nw(L),z={role:"assistant",content:E.text||null};if(E.toolCalls&&E.toolCalls.length>0)z.tool_calls=E.toolCalls.map((j)=>({id:j.toolCallId,type:"function",function:{name:j.toolName,arguments:JSON.stringify("input"in j?j.input:{})}})),z.content=null;return $.json({id:O,object:"chat.completion",created:D,model:Y.model,choices:[{index:0,message:z,finish_reason:QV$(E.finishReason)}],usage:{prompt_tokens:E.usage?.inputTokens??0,completion_tokens:E.usage?.outputTokens??0,total_tokens:E.usage?.totalTokens??0}})}}catch(G){let Q=G;if(Q.name==="AbortError")return $.json(FW("Request aborted","invalid_request_error"),400);if(Q.name==="MessageConversionError")return $.json(FW(Q.message,"invalid_request_error","messages"),400);return console.error("[openai-compat] Error:",Q.message,Q.stack),$.json(FW(Q.message,"server_error"),500)}});KV$=JV$});var HV$;var NV$=B(()=>{HV$={name:"decocms",version:"4.170.7",description:"Deco CMS \u2014 Self-hostable MCP Gateway for managing AI connections and tools",author:"Deco team",repository:{type:"git",url:"git+https://github.com/decocms/studio.git",directory:"apps/api"},bugs:{url:"https://github.com/decocms/studio/issues"},type:"module",bin:{deco:"./dist/server/cli.js"},files:["dist/**/*"],scripts:{dev:"bun run migrate && bun run dev:server","dev:server":"bun run --cwd=../../packages/sandbox build && NODE_ENV=development bun --env-file=.env --hot run src/index.ts",build:"bun run build:server","build:server":"bun run scripts/bundle-server-script.ts --dist ./dist/server","generate:tool-contracts":"bun run scripts/generate-tool-contracts.ts","db:migrate":"bun run ./dist/server/migrate.js",check:"tsc --noEmit",start:"bun run ./dist/server/server.js",migrate:"bun run src/database/migrate.ts",test:"bun test src","better-auth:migrate":"bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",prepublishOnly:"bun run --cwd=../.. build:studio"},optionalDependencies:{"@duckdb/node-api":"^1.5.0-r.1"},dependencies:{"@ai-sdk/anthropic":"^3.0.85","@ai-sdk/google":"^3.0.83","@ai-sdk/openai":"^3.0.73","@anthropic-ai/sdk":"^0.105.0","@aws-sdk/client-s3":"^3.1013.0","@aws-sdk/client-sts":"^3.1013.0","@aws-sdk/lib-storage":"^3.1013.0","@aws-sdk/s3-request-presigner":"^3.1013.0","@clickhouse/client":"^1.8.1","@dbos-inc/dbos-sdk":"^4.21.6","@inkjs/ui":"^2.0.0","@nats-io/jetstream":"3.4.0","@nats-io/kv":"3.4.0","@nats-io/nats-core":"3.4.0","@nats-io/transport-node":"3.4.0","@openrouter/ai-sdk-provider":"^2.9.1","@opentelemetry/core":"^2.6.0","embedded-postgres":"^18.3.0-beta.16",ink:"^6.8.0",kysely:"^0.28.12","posthog-node":"^5.0.0",react:"^19.2.6","react-dom":"^19.2.6"},devDependencies:{"@ai-sdk/provider":"^3.0.10","@better-auth/sso":"1.4.1","@decocms/better-auth":"1.5.17","@decocms/bindings":"workspace:*","@decocms/mcp-utils":"workspace:*","@decocms/runtime":"workspace:*","@decocms/sandbox":"workspace:*","@decocms/shared":"workspace:*","@jitl/quickjs-wasmfile-release-sync":"0.31.0","@modelcontextprotocol/sdk":"1.29.0","@nats-io/jwt":"0.0.10-5","@opentelemetry/api":"^1.9.0","@opentelemetry/api-logs":"^0.211.0","@opentelemetry/exporter-logs-otlp-proto":"^0.211.0","@opentelemetry/exporter-prometheus":"^0.208.0","@opentelemetry/exporter-trace-otlp-proto":"^0.207.0","@opentelemetry/instrumentation-runtime-node":"^0.24.0","@opentelemetry/resources":"^2.6.0","@opentelemetry/sdk-logs":"^0.211.0","@opentelemetry/sdk-metrics":"^2.2.0","@opentelemetry/sdk-node":"^0.207.0","@opentelemetry/sdk-trace-base":"^2.5.0","@types/bun":"^1.3.1","@types/google.maps":"^3.65.2","@types/pg":"^8.15.6","@types/react-syntax-highlighter":"^15.5.13","@vercel/nft":"^1.1.1",ai:"^6.0.208","better-auth":"1.4.22",croner:"^9.1.0",degit:"^2.8.4",hono:"^4.10.7",jose:"^6.0.11",nanoid:"^5.1.6",pg:"^8.16.3",typescript:"^7.0.2",typescript5:"npm:typescript@^5.9.3",zod:"4.3.6"},homepage:"https://github.com/decocms/studio",keywords:["mcp","model-context-protocol","ai","gateway","self-hosted","tools"],license:"MIT",publishConfig:{access:"public"}}});function de4(){let $=process.env.POSTHOG_KEY;if(!$)return null;return{key:$,host:process.env.POSTHOG_HOST??le4}}var FV$,le4="https://ph.studio.decocms.com",UV$;var wV$=B(()=>{i8();$C0();WV();wZ();f$();Q01();NV$();FV$=new L1;FV$.get("/",($)=>{let Z={version:HV$.version,theme:Iq1(),...kB().logo&&{logo:kB().logo},...uK()&&{internalUrl:MI1()},...n0().enableDecoImport&&{enableDecoImport:!0},brandExtractEnabled:!!n0().firecrawlApiKey,auth:A2$(),posthog:de4(),googleMapsApiKey:process.env.GOOGLE_MAPS_API_KEY?.trim()||null,runtime:{agentSandbox:!uK()&&n0().sandboxProviderKind==="agent-sandbox"}};return $.header("Cache-Control","no-store"),$.json({success:!0,config:Z})});UV$=FV$});function Fg($){let Z=($??"").trim().toLowerCase();return Z=Z.replace(/^https?:\/\//,""),Z=Z.replace(/^www\./,""),Z=Z.split(/[/?#]/)[0]??"",Z.replace(/\/+$/,"")}function H$1($){return(Fg($).split(".")[0]||$).replace(/[-_]/g," ").split(" ").filter(Boolean).map((X)=>X.charAt(0).toUpperCase()+X.slice(1)).join(" ")}function BV$($,Z=64){return`https://www.google.com/s2/favicons?domain=${encodeURIComponent(Fg($))}&sz=${Z}`}function OV$($,Z){let X=$.trim();if(X.length<=Z)return X;let G=X.slice(0,Z-1),Q=G.lastIndexOf(" ");return`${(Q>Z*0.6?G.slice(0,Q):G).trimEnd()}\u2026`}function DV$($){let{brand:Z,domain:X,score:G,verdict:Q}=$,Y=typeof G==="number"?`${Z} commerce report \u2014 ${Math.round(G)}/100 \xB7 decocms`:`${Z} commerce report \xB7 decocms`,J=`See the full ${Z} scorecard \u2014 SEO, performance, conversion & AEO signals scored by decocms.`,K=Q?.trim()?OV$(`${Q.trim().replace(/\s+/g," ")} \u2014 ${J}`,200):OV$(`How does ${X} really perform? ${J}`,200);return{title:Y,description:K}}import{z as c0}from"zod";var wC,me4,ie4,ne4,pe4,LV$;var EV$=B(()=>{wC=c0.enum(["good","bad","neutral"]),me4=c0.preprocess(($)=>{if(Array.isArray($))return{kind:"text",value:$.find((X)=>X!==null&&typeof X!=="object")??""};return $!==null&&typeof $==="object"?$:{kind:"text",value:$}},c0.object({kind:c0.enum(["text","number","sparkline","badge","score"]).catch("text"),value:c0.coerce.string().optional(),tone:wC.optional(),muted:c0.boolean().optional(),delta:c0.coerce.string().optional(),deltaDir:c0.enum(["up","down","neutral"]).optional(),points:c0.array(c0.coerce.number()).optional(),label:c0.coerce.string().optional()}).transform(($)=>{if($.kind==="badge"&&$.label==null)$.label=$.value??"";if($.kind==="score"){let Z=Number($.value);if(Number.isNaN(Z))return{...$,kind:"text"}}return $})),ie4=c0.preprocess(($)=>{let Z=$;if(Z&&typeof Z==="object"&&!Array.isArray(Z)&&Array.isArray(Z.cells))Z=Z.cells;if(Array.isArray(Z)&&Z.length===1&&Array.isArray(Z[0]))Z=Z[0];if(Array.isArray(Z))return Z;if(Z&&typeof Z==="object")return Object.values(Z);return Z},c0.array(me4)),ne4={key:c0.coerce.string(),title:c0.coerce.string(),eyebrow:c0.coerce.string().optional(),headline:c0.coerce.string(),annotation:c0.coerce.string().optional(),methodology:c0.coerce.string().optional(),sources:c0.array(c0.object({name:c0.coerce.string(),logoUrl:c0.coerce.string()})).optional()},pe4=c0.discriminatedUnion("template",[c0.object({template:c0.literal("cover"),score:c0.object({value:c0.coerce.number(),max:c0.coerce.number().optional(),grade:c0.coerce.string().optional(),label:c0.coerce.string().optional()}).optional(),brandImage:c0.coerce.string().optional(),screenshot:c0.coerce.string().optional(),mobileScreenshot:c0.coerce.string().optional()}),c0.object({template:c0.literal("cta"),ctaUrl:c0.coerce.string().optional(),ctaLabel:c0.coerce.string().optional(),bullets:c0.array(c0.coerce.string()).optional()}),c0.object({template:c0.literal("series"),points:c0.array(c0.coerce.number()).min(2),xLabels:c0.array(c0.coerce.string()).min(1),unit:c0.coerce.string().optional(),callout:c0.object({index:c0.coerce.number(),value:c0.coerce.string(),tone:wC.optional()})}),c0.object({template:c0.literal("threshold"),value:c0.coerce.string().default(""),metricLabel:c0.coerce.string().optional(),ratio:c0.coerce.number(),thresholdRatio:c0.coerce.number().optional(),thresholdLabel:c0.coerce.string().default(""),tone:wC.optional()}),c0.object({template:c0.literal("stats"),stats:c0.array(c0.object({value:c0.coerce.string(),label:c0.coerce.string(),tone:wC.optional()})).min(1)}),c0.object({template:c0.literal("bars"),items:c0.array(c0.object({value:c0.coerce.string(),label:c0.coerce.string(),ratio:c0.coerce.number(),tone:wC.optional()})).min(1)}),c0.object({template:c0.literal("gauges"),gauges:c0.array(c0.object({label:c0.coerce.string(),value:c0.coerce.string(),status:c0.enum(["good","warn","bad"]).catch("warn"),caption:c0.coerce.string().optional(),ratio:c0.coerce.number().optional()})).min(1)}),c0.object({template:c0.literal("checklist"),checks:c0.array(c0.object({label:c0.coerce.string(),status:c0.enum(["pass","fail","warn"]).catch("fail"),value:c0.coerce.string().optional()})).min(1)}),c0.object({template:c0.literal("table"),columns:c0.array(c0.object({label:c0.coerce.string(),align:c0.enum(["left","right"]).optional()})).min(1),rows:c0.array(ie4).min(1),highlightRow:c0.coerce.number().optional()}),c0.object({template:c0.literal("products"),products:c0.array(c0.object({name:c0.coerce.string(),price:c0.coerce.string().optional(),image:c0.coerce.string().optional(),url:c0.coerce.string().optional()})).min(1)}),c0.object({template:c0.literal("list"),entries:c0.array(c0.object({label:c0.coerce.string(),severity:c0.enum(["error","warning","notice"]).catch("notice")})).min(1),moreCount:c0.coerce.number().optional()}),c0.object({template:c0.literal("keywords"),volumeLabel:c0.coerce.string().optional(),keywords:c0.array(c0.object({term:c0.coerce.string(),volume:c0.coerce.string(),position:c0.coerce.number().catch(0)})).min(1)}),c0.object({template:c0.literal("competitor"),metricLabel:c0.coerce.string().optional(),competitors:c0.array(c0.object({name:c0.coerce.string(),value:c0.coerce.string(),tone:wC.optional(),isYou:c0.boolean().optional()})).min(1)}),c0.object({template:c0.literal("scorecard"),rivalLabel:c0.coerce.string().optional(),dimensions:c0.array(c0.object({label:c0.coerce.string(),you:c0.coerce.string(),rival:c0.coerce.string().optional(),rivalName:c0.coerce.string().optional(),tone:wC.optional()})).min(1)})]),LV$=c0.object({...ne4,template:pe4})});function jE0($){let Z=[],X=[...$.sections].sort((G,Q)=>G.position-Q.position).map((G)=>{let Q=LV$.safeParse(G.props);if(Q.success)return Q.data;let Y=Q.error.issues[0];return Z.push({section_type:G.section_type,position:G.position,reason:Y?`${Y.path.join(".")||"(root)"}: ${Y.message}`:"contract violation"}),null}).filter((G)=>G!==null);return{deck:{meta:{...$.meta,scores:$.summary?.scores},slides:X},drops:Z}}var F$1=B(()=>{EV$()});import{join as zV$}from"path";async function oe4($){try{let Z=await fetch(`${e3({})}/api/v2/public/diagnostics/${encodeURIComponent($)}`,{headers:{Accept:"application/json"},signal:AbortSignal.timeout(te4)});if(!Z.ok)return null;let X=await Z.json(),{deck:G}=jE0(X);if(!G.slides.length)return null;let Q=G.slides.find((K)=>K.template.template==="cover"),Y=Q?.template,J=Y&&Y.template==="cover"?Y:void 0;return{brand:G.meta.brand?.trim()||H$1($),score:G.meta.scores?.cover??J?.score?.value,verdict:Q?.annotation?.trim()||Q?.headline?.trim()||void 0}}catch{return null}}function bQ($){return $.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""")}function re4($,Z){let X=Fg($),G=Z?.brand?.trim()||H$1(X),Q=BV$(X,128),J=`${(n0().baseUrl??"https://studio.decocms.com").replace(/\/+$/,"")}/report/${encodeURIComponent(X)}`,{title:K,description:W}=DV$({brand:G,domain:X,score:Z?.score,verdict:Z?.verdict}),N=`${J}/og.png`,H=`${G} commerce report by decocms`;return[`<title>${bQ(K)}</title>`,`<meta name="description" content="${bQ(W)}" />`,'<meta name="robots" content="noindex, follow" />','<meta property="og:type" content="website" />','<meta property="og:site_name" content="decocms" />',`<meta property="og:title" content="${bQ(K)}" />`,`<meta property="og:description" content="${bQ(W)}" />`,`<meta property="og:url" content="${bQ(J)}" />`,`<meta property="og:image" content="${bQ(N)}" />`,'<meta property="og:image:width" content="1200" />','<meta property="og:image:height" content="630" />',`<meta property="og:image:alt" content="${bQ(H)}" />`,'<meta name="twitter:card" content="summary_large_image" />',`<meta name="twitter:title" content="${bQ(K)}" />`,`<meta name="twitter:description" content="${bQ(W)}" />`,`<meta name="twitter:image" content="${bQ(N)}" />`,`<meta name="twitter:image:alt" content="${bQ(H)}" />`,`<link rel="canonical" href="${bQ(J)}" />`,`<link rel="icon" href="${bQ(Q)}" sizes="any" />`].join(`
|
|
2720
2720
|
`)}function ae4($,Z){return $.replace(/<title>[\s\S]*?<\/title>\s*/i,"").replace(/<meta\s+name="(?:description|twitter:[^"]*)"[^>]*>\s*/gi,"").replace(/<meta\s+property="og:[^"]*"[^>]*>\s*/gi,"").replace(/<link\s+rel="icon"[^>]*>\s*/gi,"").replace("</head>",` ${Z}
|
|
2721
|
-
</head>`)}function jV$($){let Z=new L1;return Z.get("/:domain/og.png",async(X)=>{let G=Fg(X.req.param("domain")),Q=async()=>{let Y=$?Bun.file(zV$($,"report-og-fallback.png")):null;if(!Y||!await Y.exists())return X.notFound();return X.body(new Uint8Array(await Y.arrayBuffer()),200,{"Content-Type":"image/png","Cache-Control":"public, max-age=0, s-maxage=3600"})};try{let Y=await fetch(`${e3({})}/api/v2/public/diagnostics/${encodeURIComponent(G)}/og.png`,{signal:AbortSignal.timeout(se4)}),J=Y.headers.get("content-type")??"";if(!Y.ok||!J.startsWith("image/")||!Y.body)return Q();return X.body(Y.body,200,{"Content-Type":J,"Cache-Control":"public, max-age=0, s-maxage=604800"})}catch{return Q()}}),Z.get("/:domain",async(X)=>{let G=X.req.param("domain"),Q=$?zV$($,"index.html"):null,Y=Q?Bun.file(Q):null;if(!Y||!await Y.exists())return X.notFound();let J=await Y.text();try{let K=await oe4(Fg(G)),W=re4(G,K);return X.html(ae4(J,W),200,{"Cache-Control":"public, max-age=0, s-maxage=300"})}catch{return X.html(J)}}),Z}var te4=2500,se4=1e4;var PV$=B(()=>{i8();F$1();ZD();f$()});function rt($,Z){return fetch(`${e3({})}${$}`,Z)}async function ee4($,Z,X){let G=new URLSearchParams;if(Z)G.set("pw",Z);if(X)G.set("lang",X);let Q=G.toString()?`?${G.toString()}`:"",Y=await rt(`/api/v2/public/diagnostics/${encodeURIComponent($)}${Q}`,{headers:{Accept:"application/json"}});if(Y.status===404)return{status:"not_found",deck:null,scanned_at:null,drops:[]};if(!Y.ok)throw Error(`report read HTTP ${Y.status}`);let J=await Y.json(),{deck:K,drops:W}=jE0(J);return{status:K.slides.length?"ready":"empty",deck:K,scanned_at:J.scanned_at,drops:W}}var $06,OC,AV$;var TV$=B(()=>{i8();AY();ZD();F$1();$06=new Set(["complete","errored","terminated","unknown"]),OC=new L1;OC.use("*",async($,Z)=>{let X=await L8.api.getSession({headers:$.req.raw.headers});if(!X?.user?.id)return $.json({error:"Authentication required"},401,{"Cache-Control":"private, no-store",Vary:"Cookie"});$.set("reportUser",{email:X.user.email}),await Z(),$.header("Cache-Control","private, no-store"),$.header("Vary","Cookie");return});OC.get("/site/:domain",async($)=>{let Z=$.req.param("domain").trim();if(!Z)return $.json({error:"domain is required"},400);let X=$.req.query("key")?.trim()||void 0,G=$.req.query("lang")?.trim()||void 0;try{let Q=await ee4(Z,X,G);return $.header("Cache-Control","private, no-store"),$.json(Q)}catch{return $.json({error:"report read failed"},502)}});OC.post("/run",async($)=>{let Z;try{Z=await $.req.json()}catch{return $.json({error:"invalid JSON"},400)}let X=typeof Z.domain==="string"?Z.domain.trim():"";if(!X)return $.json({error:"domain is required"},400);let G=$.get("reportUser").email,Q=typeof Z.distinctId==="string"&&Z.distinctId.trim()&&Z.distinctId.length<=200?Z.distinctId.trim():void 0;try{let Y=await rt("/api/v2/diagnostics/run",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${$D({})}`},body:JSON.stringify({url:X,email:G,distinct_id:Q})});if(!Y.ok)return $.json({error:`run HTTP ${Y.status}`},502);let J=await Y.json(),K=J.blocked?{state:"blocked"}:J.status==="fresh"?{state:"fresh"}:J.mode==="sync"?{state:"sync"}:{state:"running",id:J.id??null};return $.json(K)}catch{return $.json({error:"run failed"},502)}});OC.get("/status",async($)=>{let Z=$.req.query("id");if(!Z)return $.json({error:"id is required"},400);try{let X=await rt(`/api/v2/diagnostics/status?id=${encodeURIComponent(Z)}`,{headers:{Authorization:`Bearer ${$D({})}`}});if(!X.ok)return $.json({error:`status HTTP ${X.status}`},502);let Q=(await X.json()).status??"unknown",Y={done:$06.has(Q),status:Q};return $.json(Y)}catch{return $.json({error:"status failed"},502)}});OC.get("/link-token/:id",async($)=>{let Z=$.req.param("id");try{let X=await rt(`/api/v2/public/link-tokens/${encodeURIComponent(Z)}`,{headers:{Accept:"application/json"}});if(X.status===404)return $.json(null);if(!X.ok)return $.json({error:`link token HTTP ${X.status}`},502);return $.json(await X.json())}catch{return $.json({error:"link token resolve failed"},502)}});OC.get("/suggest",async($)=>{let Z=($.req.query("q")??"").trim().slice(0,64);if(Z.length<2)return $.json({suggestions:[]});try{let X=await rt(`/api/v2/public/suggest?q=${encodeURIComponent(Z)}`,{headers:{Accept:"application/json"}});if(!X.ok)return $.json({suggestions:[]});let G=await X.json();return $.json({suggestions:Array.isArray(G.suggestions)?G.suggestions:[]})}catch{return $.json({suggestions:[]})}});AV$=OC});import{createHmac as Z06,timingSafeEqual as X06}from"crypto";function RV$($,Z,X,G=Date.now()){if(!Z||!X)return!1;let Q,Y=[];for(let N of Z.split(",")){let H=N.indexOf("=");if(H<=0)continue;let F=N.slice(0,H).trim(),U=N.slice(H+1).trim();if(F==="t")Q=U;else if(F==="v1")Y.push(U)}if(!Q||Y.length===0)return!1;let J=Number(Q);if(!Number.isFinite(J)||Math.abs(G/1000-J)>G06)return!1;let K=Z06("sha256",X).update(`${Q}.${$}`).digest("hex"),W=Buffer.from(K,"hex");return Y.some((N)=>{let H=Buffer.from(N,"hex");return W.length===H.length&&X06(W,H)})}function IV$($){let Z;try{Z=JSON.parse($)}catch{return null}let X=lY(Z),G=lY(lY(X?.data)?.object);if(!X||typeof X.type!=="string"||!G)return null;return{id:UW(X.id),type:X.type,created:typeof X.created==="number"?X.created:void 0,livemode:typeof X.livemode==="boolean"?X.livemode:void 0,data:{object:G}}}function Q06($){switch($){case"active":case"trialing":return"active";case"past_due":return"past_due";default:return"canceled"}}function UW($){return typeof $==="string"?$:void 0}function lY($){return typeof $==="object"&&$!==null?$:void 0}function PE0($){return typeof $==="number"?new Date($*1000):null}function O$1($){return UW($)??UW(lY($)?.id)}function Y06($){return O$1($.subscription)??UW(lY(lY($.parent)?.subscription_details)?.subscription)}function J06($){let Z=PE0($.current_period_end);if(Z)return Z;let X=lY($.items)?.data;if(!Array.isArray(X))return null;let G=0;for(let Q of X){let Y=lY(Q)?.current_period_end;if(typeof Y==="number"&&Y>G)G=Y}return G>0?new Date(G*1000):null}function U$1($,Z){let X=PE0($.created);return!!X&&!!Z.lastStripeEventAt&&X<Z.lastStripeEventAt}function w$1($,Z){let X=PE0($.created);if(!X)return;return Z.lastStripeEventAt&&Z.lastStripeEventAt>X?void 0:X}async function K06($,Z){let X=Z.data.object;switch(Z.type){case"checkout.session.completed":case"checkout.session.async_payment_succeeded":{let G=UW(lY(X.metadata)?.orgId);if(!G)return{handled:!1,reason:"no orgId"};if(UW(lY(X.metadata)?.kind)==="topup"){if(X.mode!=="payment")return{handled:!1,reason:"topup with wrong mode"};if(UW(X.payment_status)!=="paid")return{handled:!1,reason:"payment not confirmed"};let J=UW(X.id);if(!J)return console.error("stripe webhook: topup session without id",{eventId:Z.id,organizationId:G}),{handled:!1,reason:"topup session without id"};let K=Number(lY(X.metadata)?.creditCents);if(!Number.isInteger(K)||K<=0)return console.error("stripe webhook: paid topup with bad metadata \u2014 credit NOT applied",{eventId:Z.id,organizationId:G,creditCents:lY(X.metadata)?.creditCents}),{handled:!1,reason:"bad topup metadata"};return{handled:!0,organizationId:G,topUp:{creditCents:K,referenceId:`stripe-topup:${J}`}}}if(X.mode!=="subscription")return{handled:!1,reason:"not a subscription checkout"};if(UW(X.payment_status)!=="paid")return{handled:!1,reason:"payment not confirmed"};let Q=await $.getBilling(G);if(!Q)return{handled:!1,reason:"unknown org"};let Y=O$1(X.subscription);if(Q.stripeSubscriptionId&&Y&&Q.stripeSubscriptionId!==Y)return console.error("stripe webhook: refused checkout rebind",{organizationId:G,eventId:Z.id}),{handled:!1,reason:"org already bound to another subscription",orphanSubscriptionId:Y};if(U$1(Z,Q))return{handled:!1,reason:"stale event"};return await $.updateStripeState(G,{stripeCustomerId:O$1(X.customer),stripeSubscriptionId:Y,status:"active",lastStripeEventAt:w$1(Z,Q)}),{handled:!0,organizationId:G}}case"customer.subscription.updated":case"customer.subscription.deleted":{let G=UW(X.id);if(!G)return{handled:!1,reason:"no sub id"};let Q=await $.getBillingByStripeSubscriptionId(G);if(!Q)return{handled:!1,reason:"unknown subscription"};let Y=Z.type==="customer.subscription.deleted";if(!Y&&U$1(Z,Q))return{handled:!1,reason:"stale event"};let J=Y?"canceled":Q06(X.status);return await $.updateStripeState(Q.organizationId,{status:J,currentPeriodEnd:J06(X),...Y&&{stripeSubscriptionId:null},lastStripeEventAt:w$1(Z,Q)}),{handled:!0,organizationId:Q.organizationId}}case"invoice.paid":{let G=Y06(X);if(!G)return{handled:!1,reason:"no sub id"};let Q=await $.getBillingByStripeSubscriptionId(G);if(!Q)return{handled:!1,reason:"unknown subscription"};if(U$1(Z,Q))return{handled:!1,reason:"stale event"};return await $.updateStripeState(Q.organizationId,{status:"active",currentPeriodEnd:PE0(X.period_end),lastStripeEventAt:w$1(Z,Q)}),{handled:!0,organizationId:Q.organizationId}}default:return{handled:!1,reason:`unhandled event ${Z.type}`}}}async function qV$($){let Z=new jd(n8().db),X=await K06(Z,$);if(X.handled&&X.topUp)await xN$({organizationId:X.organizationId,amountCents:X.topUp.creditCents,referenceId:X.topUp.referenceId});if(!X.handled&&X.orphanSubscriptionId)try{await X0$(X.orphanSubscriptionId),console.error("stripe webhook: canceled orphan subscription",{subscriptionId:X.orphanSubscriptionId,eventId:$.id})}catch(G){if(!(G instanceof eJ&&(G.status===400||G.status===404)))throw G}return X}var G06=300;var MV$=B(()=>{XY();_i();nt0()});var W06=1048576,B$1;var kV$=B(()=>{i8();XC();f$();MV$();B$1=new L1;B$1.post("/webhook",H7({maxSize:W06,onError:($)=>$.json({error:"payload too large"},413)}),async($)=>{let Z=n0().stripeWebhookSecret;if(!Z)return $.json({error:"stripe billing not configured"},503);let X=await $.req.text();if(!RV$(X,$.req.header("stripe-signature"),Z))return $.json({error:"invalid signature"},400);let Q=IV$(X);if(!Q)return $.json({error:"invalid payload"},400);let Y=await qV$(Q);return console.log("stripe webhook",{eventId:Q.id,type:Q.type,livemode:Q.livemode,...Y}),$.json({received:!0})})});function SV$($,Z){if(Z.startsWith("text/html")||Z.startsWith("image/svg"))$.set("Content-Security-Policy","sandbox allow-scripts allow-modals allow-same-origin")}var VV$,N06,H06,CV$;var _V$=B(()=>{i8();BJ();Cx();e_();VV$=new L1,N06=["range","if-none-match","if-modified-since"],H06=["content-type","content-length","content-range","accept-ranges","etag","last-modified"];VV$.get("/:org/files/*",async($)=>{let Z=$.get("studioContext"),X=Z.organization?.id;if(!Z.auth?.user?.id){if(my($))return $.redirect(`/login?next=${encodeURIComponent($.req.path)}`,302);throw new X$(401,{message:"Authentication required"})}if(!X)throw new X$(401,{message:"Organization context required"});let G=$.req.path.replace(/^.*\/files\//,"");if(!G)throw new X$(400,{message:"Missing file key"});let Q=await yn(G,Z);if(!Q)throw new X$(503,{message:"Object storage not configured"});if(Q.startsWith("data:")&&OJ()){let W=Q.match(/^data:([^;]+);base64,(.+)$/s);if(!W)throw new X$(500,{message:"Invalid data URL from storage"});let[,N,H]=W,F=Buffer.from(H,"base64"),U=new Headers({"Content-Type":N,"Cache-Control":"private, max-age=86400"});return SV$(U,N),new Response(F,{status:200,headers:U})}let Y=new Headers;for(let W of N06){let N=$.req.header(W);if(N)Y.set(W,N)}let J=await fetch(Q,{headers:Y});if(J.status===403||J.status===404)throw new X$(404,{message:"File not found"});if(!J.ok&&J.status!==304&&J.status!==416)throw console.error(`[files] upstream storage error ${J.status} for key:`,G),new X$(502,{message:"Upstream storage error"});let K=new Headers;for(let W of H06){let N=J.headers.get(W);if(N)K.set(W,N)}return K.set("Cache-Control","private, max-age=86400"),SV$(K,K.get("content-type")??""),new Response(J.body,{status:J.status,headers:K})});CV$=VV$});var at=C((BC)=>{var F06=BC&&BC.__createBinding||(Object.create?function($,Z,X,G){if(G===void 0)G=X;var Q=Object.getOwnPropertyDescriptor(Z,X);if(!Q||("get"in Q?!Z.__esModule:Q.writable||Q.configurable))Q={enumerable:!0,get:function(){return Z[X]}};Object.defineProperty($,G,Q)}:function($,Z,X,G){if(G===void 0)G=X;$[G]=Z[X]}),U06=BC&&BC.__exportStar||function($,Z){for(var X in $)if(X!=="default"&&!Object.prototype.hasOwnProperty.call(Z,X))F06(Z,$,X)};Object.defineProperty(BC,"__esModule",{value:!0});U06(dG(),BC)});var fV$=C((vV$)=>{Object.defineProperty(vV$,"__esModule",{value:!0});vV$.version=void 0;vV$.version="3.4.0"});var gV$=C((wW)=>{var w06=wW&&wW.__importDefault||function($){return $&&$.__esModule?$:{default:$}};Object.defineProperty(wW,"__esModule",{value:!0});wW.NodeTransport=wW.VERSION=void 0;wW.nodeResolveHost=z06;var y6=at(),O06=P0("net"),D$1=P0("tls"),B06=P0("path"),xV$=P0("fs"),D06=w06(P0("dns")),L06=fV$();wW.VERSION=L06.version;var E06="nats.js";class yV${socket;version;lang;yields=[];signal=(0,y6.deferred)();closedNotification=(0,y6.deferred)();options;connected=!1;tlsName="";done=!1;closeError;constructor(){this.lang=E06,this.version=wW.VERSION}async connect($,Z){this.tlsName=$.tlsName,this.options=Z;let{tls:X}=this.options,{handshakeFirst:G}=X||{};try{if(G===!0)this.socket=await this.tlsFirst($);else this.socket=await this.dial($);if(this.done)this.socket?.destroy();let Q=await this.peekInfo();(0,y6.checkOptions)(Q,Z);let{tls_required:Y,tls_available:J}=Q,K=J===!0&&Z.tls!==null;if(!G&&(Y||K))this.socket=await this.startTLS();if(this.done)this.socket?.destroy();if(Y&&this.socket.encrypted!==!0)throw y6.errors.InvalidArgumentError.format("tls","is not available on this server");return this.connected=!0,this.setupHandlers(),this.signal.resolve(),Promise.resolve()}catch(Q){let Y=Q;if(!Y)Y=new y6.errors.ConnectionError("error connecting - node provided an undefined error");let{code:J}=Y,K=J==="ECONNREFUSED"?new y6.errors.ConnectionError("connection refused",{cause:Y}):Y;throw this.socket?.destroy(),K}}dial($){let Z=(0,y6.deferred)(),X,G=(0,O06.createConnection)($.port,$.hostname,()=>{Z.resolve(G),G.removeAllListeners()});return G.on("error",(Q)=>{X=Q}),G.on("close",()=>{G.removeAllListeners(),Z.reject(X)}),G.setNoDelay(!0),Z}get isClosed(){return this.done}close($){return this._closed($,!1)}peekInfo(){let $=(0,y6.deferred)(),Z;return this.socket.on("data",(X)=>{this.yields.push(X);let G=y6.DataBuffer.concat(...this.yields),Q=(0,y6.extractProtocolMessage)(G);if(Q!=="")try{let Y=y6.INFO.exec(Q);if(!Y)throw Error("unexpected response from server");let J=JSON.parse(Y[1]);$.resolve(J)}catch(Y){$.reject(Y)}finally{this.socket.removeAllListeners()}}),this.socket.on("error",(X)=>{Z=X}),this.socket.on("close",()=>{this.socket.removeAllListeners(),$.reject(Z)}),$}loadFile($){if(!$)return Promise.resolve();let Z=(0,y6.deferred)();try{if($=(0,B06.resolve)($),!(0,xV$.existsSync)($))Z.reject(Error(`${$} doesn't exist`));(0,xV$.readFile)($,(X,G)=>{if(X)return Z.reject(X);Z.resolve(G)})}catch(X){Z.reject(X)}return Z}async loadClientCerts(){let $={},{certFile:Z,cert:X,caFile:G,ca:Q,keyFile:Y,key:J}=this.options.tls;try{if(Z){let K=await this.loadFile(Z);if(K)$.cert=K}else if(X)$.cert=X;if(Y){let K=await this.loadFile(Y);if(K)$.key=K}else if(J)$.key=J;if(G){let K=await this.loadFile(G);if(K)$.ca=[K]}else if(Q)$.ca=Q;return Promise.resolve($)}catch(K){return Promise.reject(K)}}async tlsFirst($){let Z,X={servername:this.tlsName,rejectUnauthorized:!0};if(this.socket)X.socket=this.socket;if(typeof this.options.tls==="object")try{let Q=await this.loadClientCerts()||{};X=(0,y6.extend)(X,this.options.tls,Q)}catch(Q){return Promise.reject(new y6.errors.ConnectionError(Q.message,{cause:Q}))}let G=(0,y6.deferred)();try{let Q=(0,D$1.connect)($.port,$.hostname,X,()=>{Q.removeAllListeners(),G.resolve(Q)});Q.on("error",(Y)=>{Z=Y}),Q.on("secureConnect",()=>{if(X.rejectUnauthorized===!1)return;if(!Q.authorized)throw Q.authorizationError}),Q.on("close",()=>{G.reject(Z),Q.removeAllListeners()}),Q.setNoDelay(!0)}catch(Q){G.reject(new y6.errors.ConnectionError(Q.message,{cause:Q}))}return G}async startTLS(){let $,Z={socket:this.socket,servername:this.tlsName,rejectUnauthorized:!0};if(typeof this.options.tls==="object")try{let G=await this.loadClientCerts()||{};Z=(0,y6.extend)(Z,this.options.tls,G)}catch(G){return Promise.reject(new y6.errors.ConnectionError(G.message,{cause:G}))}let X=(0,y6.deferred)();try{let G=(0,D$1.connect)(Z,()=>{G.removeAllListeners(),X.resolve(G)});G.on("error",(Q)=>{$=Q}),G.on("secureConnect",()=>{if(Z.rejectUnauthorized===!1)return;if(!G.authorized)throw G.authorizationError}),G.on("close",()=>{X.reject($),G.removeAllListeners()})}catch(G){X.reject(new y6.errors.ConnectionError(G.message,{cause:G}))}return X}setupHandlers(){let $;this.socket.on("data",(Z)=>{return this.yields.push(Z),this.signal.resolve()}),this.socket.on("error",(Z)=>{$=Z}),this.socket.on("end",()=>{if(this.socket?.destroyed)return;this.socket?.write(new Uint8Array(0),()=>{this.socket?.end()})}),this.socket.on("close",()=>{this._closed($,!1)})}[Symbol.asyncIterator](){return this.iterate()}async*iterate(){while(!0){if(this.yields.length===0)await this.signal;let $=this.yields;this.yields=[];for(let Z=0;Z<$.length;Z++){if(this.options.debug)console.info(`> ${(0,y6.render)($[Z])}`);yield $[Z]}if(this.done)break;else if(this.yields.length===0)$.length=0,this.yields=$,this.signal=(0,y6.deferred)()}}discard(){if(this.done=!0,this.socket)try{this.socket.removeAllListeners(),this.socket.destroy()}catch{}}disconnect(){this._closed(void 0,!0).then().catch()}isEncrypted(){return this.socket instanceof D$1.TLSSocket}_send($){if(this.isClosed||this.socket===void 0)return Promise.resolve();if(this.options.debug)console.info(`< ${(0,y6.render)($)}`);let Z=(0,y6.deferred)();try{this.socket.write($,(X)=>{if(X){if(this.options.debug)console.error(`!!! ${(0,y6.render)($)}: ${X}`);return Z.reject(X)}return Z.resolve()})}catch(X){if(this.options.debug)console.error(`!!! ${(0,y6.render)($)}: ${X}`);Z.reject(X)}return Z}send($){this._send($).catch((X)=>{})}async _closed($,Z=!0){if(!this.connected)return;if(this.done){this.socket?.destroy();return}if(this.closeError=$,!$&&this.socket&&Z)try{await this._send(new TextEncoder().encode(""))}catch(X){if(this.options.debug)console.log("transport close terminated with an error",X)}try{if(this.socket)this.socket.removeAllListeners(),this.socket?.destroy(),this.socket=void 0}catch(X){console.log(X)}this.done=!0,this.closedNotification.resolve(this.closeError)}closed(){return this.closedNotification}}wW.NodeTransport=yV$;function z06($){let Z=(0,y6.deferred)();return D06.default.lookup($,{all:!0},(X,G)=>{if(X){Z.reject(X);return}let Q=[];for(let Y of G)Q.push(Y.address);if(Q.length===0)Q.push($);Z.resolve(Q)}),Z}});var dV$=C((lV$)=>{Object.defineProperty(lV$,"__esModule",{value:!0});lV$.connect=j06;var hV$=gV$(),uV$=at(),cV$=at();function j06($={}){if((0,cV$.hasWsProtocol)($))return Promise.reject(cV$.errors.InvalidArgumentError.format("servers","node client doesn't support websockets, use the 'wsconnect' function instead"));return(0,uV$.setTransportFactory)({factory:()=>{return new hV$.NodeTransport},dnsResolveFn:hV$.nodeResolveHost}),uV$.NatsConnectionImpl.connect($)}});var mV$=C((MH)=>{var A06=MH&&MH.__createBinding||(Object.create?function($,Z,X,G){if(G===void 0)G=X;var Q=Object.getOwnPropertyDescriptor(Z,X);if(!Q||("get"in Q?!Z.__esModule:Q.writable||Q.configurable))Q={enumerable:!0,get:function(){return Z[X]}};Object.defineProperty($,G,Q)}:function($,Z,X,G){if(G===void 0)G=X;$[G]=Z[X]}),T06=MH&&MH.__exportStar||function($,Z){for(var X in $)if(X!=="default"&&!Object.prototype.hasOwnProperty.call(Z,X))A06(Z,$,X)};Object.defineProperty(MH,"__esModule",{value:!0});MH.connect=void 0;var R06=dV$();Object.defineProperty(MH,"connect",{enumerable:!0,get:function(){return R06.connect}});T06(at(),MH)});function tV$($){let Z=$?.connectFn??k06,X=null,G=null,Q=!1,Y=!1,J=!1,K=[];function W(){return X!==null&&!X.isClosed()&&!X.isDraining()&&!J}function N(){console.log(`[NatsProvider] fireReady: ${K.length} callbacks`);for(let U of K)try{U()}catch{}}function H(U){(async()=>{for await(let w of U.status())if(w.type==="disconnect")console.log("[NatsProvider] Disconnected"),J=!0;else if(w.type==="reconnect")console.log("[NatsProvider] Reconnected, re-firing ready callbacks"),J=!1,G=null,N()})().catch(()=>{})}async function F(U,w){let O=0;while(!Y)try{X=await Z({servers:U,timeout:M06,reconnect:!0,maxReconnectAttempts:-1,...w?{authenticator:w}:{}}),console.log(`[NatsProvider] Connected to ${X.getServer()} after ${O} attempt(s)`),G=null,J=!1,H(X),N();return}catch{O++;let D=yG(q06,I06,O-1,2,0.5);await w8(D)}}return{init(U,w){if(Q)return;Q=!0,Y=!1;let O=w?.creds?iV$.credsAuthenticator(new TextEncoder().encode(w.creds)):void 0;F(U,O).catch(()=>{})},isConnected(){return W()},getConnection(){return W()?X:null},getJetStream(){if(!W())return null;if(!G)G=pV$.jetstream(X);return G},onReady(U){if(K.push(U),W())try{U()}catch{}},async drain(){if(Y=!0,Q=!1,G=null,J=!1,X){let U=X;X=null,await U.drain().catch(()=>{})}}}}function k06($){return nV$.connect($)}var iV$,nV$,pV$,I06=100,q06=3000,M06=3000;var oV$=B(()=>{L5();iV$=M(gg(),1),nV$=M(mV$(),1),pV$=M(CO(),1)});function L$1($,Z){return`${$}.${Z}`}class E$1{cache;constructor($){this.cache=cy({ttlMs:$?.ttlMs??S06,maxSize:$?.maxSize??V06})}async get($,Z){return this.cache.get(L$1($,Z))??null}async set($,Z,X){this.cache.set(L$1($,Z),X)}async invalidate($,Z){this.cache.delete(L$1($,Z))}teardown(){this.cache.clear()}}var S06=600000,V06=5000;var rV$=()=>{};function AE0($,Z){return`${$}:${Z}`}function z$1($){let Z=cy({ttlMs:$?.ttlMs??C06,maxSize:$?.maxSize??_06}),X=$?.getConnection,G=crypto.randomUUID(),Q=new TextEncoder,Y=new TextDecoder,J=null;function K(W,N){let H=X?.();if(!H)return;try{H.publish(aV$,Q.encode(JSON.stringify({organizationId:W,keyId:N,originId:G})))}catch(F){console.warn("[ProviderKeyCache] Publish failed (non-critical):",F)}}return{get(W,N){return Z.get(AE0(W,N))},set(W,N,H){Z.set(AE0(W,N),H)},invalidate(W,N){Z.delete(AE0(W,N)),K(W,N)},start(){if(J)return;let W=X?.();if(!W)return;J=W.subscribe(aV$),(async()=>{for await(let N of J)try{let H=JSON.parse(Y.decode(N.data));if(H.originId===G)continue;Z.delete(AE0(H.organizationId,H.keyId))}catch{}})().catch(console.error)},teardown(){J?.unsubscribe(),J=null,Z.clear()}}}var aV$="studio.ai-provider-keys.invalidate",C06=30000,_06=5000;var sV$=()=>{};class j$1{options;subscriptions=[];onCancel=null;encoder=new TextEncoder;originId=crypto.randomUUID();seenMessageIds=new Set;constructor($){this.options=$}async start($){if($)this.onCancel=$;if(this.subscriptions.length>0)return;if(!this.onCancel)return;let Z=this.options.getConnection();if(!Z)return;let X=new TextDecoder;this.subscriptions=eV$.map((G)=>Z.subscribe(G));for(let G of this.subscriptions)(async()=>{for await(let Q of G)try{let Y=JSON.parse(X.decode(Q.data));if(Y.originId===this.originId)continue;if(Y.messageId&&this.hasSeen(Y.messageId))continue;this.onCancel?.(Y.taskId)}catch{}})().catch(console.error)}broadcast($){if(/[.*>\s]/.test($)){console.warn("[NatsCancelBroadcast] Invalid threadId, skipping broadcast");return}this.onCancel?.($);try{let Z=this.options.getConnection();if(!Z)return;let X=this.encoder.encode(JSON.stringify({taskId:$,originId:this.originId,messageId:crypto.randomUUID()}));for(let G of eV$)Z.publish(G,X)}catch(Z){console.warn("[NatsCancelBroadcast] Publish failed (non-critical):",Z)}}publishControlFrame($,Z){}async stop(){for(let $ of this.subscriptions)$.unsubscribe();this.subscriptions=[],this.seenMessageIds.clear(),this.onCancel=null}hasSeen($){if(this.seenMessageIds.has($))return!0;if(this.seenMessageIds.add($),this.seenMessageIds.size>1000){let Z=this.seenMessageIds.values().next().value;if(Z)this.seenMessageIds.delete(Z)}return!1}}var eV$;var $C$=B(()=>{eV$=["studio.decopilot.cancel","mesh.decopilot.cancel"]});var ZC$=($)=>{let Z;return()=>Z??=$()},P$1,A$1;var XC$=B(()=>{G5();P$1=ZC$(()=>Q8.createHistogram("decopilot.stream.encode_ms",{description:"Per-chunk JSON.stringify+encode time for decopilot stream",unit:"ms"})),A$1=ZC$(()=>Q8.createCounter("decopilot.stream.published_chunks",{description:"Logical decopilot stream chunks published to JetStream",unit:"{chunks}"}))});function h06(){return{name:$H,subjects:[`${vw0}.>`],storage:T3.StorageType.File,max_age:f06,max_bytes:y06,max_msgs_per_subject:g06,discard:T3.DiscardPolicy.Old,retention:T3.RetentionPolicy.Limits,duplicate_window:x06,num_replicas:1}}class YC${chunks=0;encodeMs=0;maxMs=0;bytes=0;windowStart=performance.now();constructor(){setInterval(()=>this.flush(),1e4).unref?.()}record($,Z){if(this.chunks++,this.encodeMs+=$,$>this.maxMs)this.maxMs=$;this.bytes+=Z}flush(){let $=performance.now(),Z=$-this.windowStart;if(this.chunks>0&&Z>0)console.warn(JSON.stringify({msg:"stream-encode-trace",windowMs:Math.round(Z),chunks:this.chunks,encodeMs:Math.round(this.encodeMs),pctOfLoop:+(this.encodeMs/Z*100).toFixed(1),maxChunkMs:+this.maxMs.toFixed(2),mbEncoded:+(this.bytes/1048576).toFixed(2)}));this.chunks=0,this.encodeMs=0,this.maxMs=0,this.bytes=0,this.windowStart=$}}function GC$($){let Z=QC$.headers();for(let[X,G]of Object.entries($))Z.set(X,G);return Z}function d06($,Z){let X=0;return{publish(G,Q,Y,J){G.publish(Q,Y,J?{headers:J}:void 0).catch((K)=>{if(X++,b06().add(1,{"org.id":Z??"unknown"}),X===1||X%100===0)console.warn(`[Decopilot] JetStream publish failed for thread ${$} (${X} total):`,K)})},get errorCount(){return X}}}function m06($){if(!($ instanceof Error))return!1;if($.name==="TimeoutError")return!0;return/timeout|no responders|503/i.test($.message)}class T$1{options;js=null;jsm=null;constructor($){this.options=$}async init(){let $=this.options.getConnection();if(!$){console.log("[Decopilot] StreamBuffer.init skipped: NATS not connected yet");return}let Z=h06(),X=await gG(async()=>{let G=this.options.getJetStreamManager?await this.options.getJetStreamManager():await T3.jetstreamManager($);try{await G.streams.info($H),await G.streams.update($H,Z)}catch(Q){if(Q instanceof Error&&Q.message.includes("stream not found"))await G.streams.add(Z);else if(Q instanceof Error&&/can ?not change.*storage|storage type/i.test(Q.message))await G.streams.delete($H),await G.streams.add(Z);else throw Q}return G},{maxAttempts:5,minTimeout:250,maxTimeout:4000,jitter:0.5,isRetriable:m06});this.js=this.options.getJetStream(),this.jsm=X,console.log(`[Decopilot] StreamBuffer.init ${this.js?"ready":"degraded (js=null)"}`)}pump($,Z,X,G){let Q=this.js;if(!Q)return console.warn(`[Decopilot] pump: JetStream client unavailable for thread ${Z}; chunks NOT published to NATS`),Promise.resolve();let Y=d06(Z,G),J=!1,K=()=>{if(J)return;J=!0;let N=zK$(Z);Q.publish(N.subject,N.data).catch(()=>{})};X.addEventListener("abort",K,{once:!0});let W=(N)=>{let H=performance.now(),F=Fp0(N,{runId:Z}),U=performance.now()-H;if(P$1().record(U),A$1().add(1,{"org.id":G??"unknown"}),l06?.record(U,F.reduce((w,O)=>w+O.data.length,0)),F.length===0){console.warn(`[Decopilot] dropping oversized stream chunk for thread ${Z}`);return}for(let w of F)Y.publish(Q,w.subject,w.data,w.headers?GC$(w.headers):void 0)};return(async()=>{let N=$.getReader(),H=0,F=0,U;try{while(!0){let{done:w,value:O}=await N.read();if(w)break;if(W(O),F++,++H>=64)H=0,await new Promise((D)=>setImmediate(D))}}catch(w){U=w,console.warn(`[Decopilot] stream pump error for thread ${Z}:`,w?.message??w)}finally{if(N.releaseLock(),K(),c06)console.warn(JSON.stringify({msg:"decopilot-stream-diag",event:"pump-done",taskId:Z,publishedChunks:F,publishErrors:Y.errorCount}))}if(U!==void 0)throw U})()}async publishRawChunk($,Z,X){let G=this.js;if(!G)return!1;let Q=performance.now(),Y=Fp0(Z,{runId:$,dedup:X});if(P$1().record(performance.now()-Q),A$1().add(1),Y.length===0)return console.warn(`[Decopilot] dropping oversized raw chunk for thread ${$} (> MAX_CHUNKED_BYTES)`),!0;for(let J of Y)await G.publish(J.subject,J.data,{...J.headers?{headers:GC$(J.headers)}:{},...J.msgId?{msgID:J.msgId}:{}});return!0}async publishDone($,Z,X){let G=this.js;if(!G)return!1;let Q=EK$({runId:$,fenceToken:Z,finalSeq:X});return await G.publish(Q.subject,Q.data,{msgID:Q.msgId}),!0}async createTailStream($,Z,X){let G=this.js;if(!G)return console.warn(`[Decopilot] createTailStream: JetStream client unavailable for thread ${$}; no live tail`),null;let Q=X?.deliverPolicy==="new"?T3.DeliverPolicy.New:T3.DeliverPolicy.All,Y=X?.closeOnDone??!1,J=xw($),K;try{K=await(await G.consumers.get($H,{filter_subjects:J,deliver_policy:Q})).consume()}catch(D){return console.warn("[Decopilot] JetStream tail unavailable (non-critical):",D?.message??D),null}let H=gw0({messages:async function*(){try{for await(let D of K)yield{subject:D.subject,data:D.data,headers:D.headers}}finally{K.stop()}}(),onCancel:()=>K.stop()}).pipeThrough(bw0()).pipeThrough(fw0()).getReader(),F=!1,U=()=>{if(F)return;F=!0;try{H.releaseLock()}catch{}},w=!1,O=()=>{if(w)return;w=!0,K.stop(),H.cancel().catch(()=>{}),U()};return Z?.addEventListener("abort",O,{once:!0}),new ReadableStream({async pull(D){for(;;){let{done:L,value:E}=await H.read();if(L){O(),D.close();return}let z=E;if(z.kind==="done"){if(Y){O(),D.close();return}continue}D.enqueue(z.chunk);return}},cancel(){O()}})}purge($){if(!this.jsm)return;this.jsm.streams.purge($H,{filter:xw($)}).catch(()=>{})}teardown(){this.js=null,this.jsm=null}}var T3,QC$,v06=($)=>{let Z;return()=>Z??=$()},b06,f06=86400000000000,x06=120000000000,y06=4294967296,g06=500000,u06,c06,l06;var JC$=B(()=>{L5();Up0();hw0();xw0();G5();XC$();T3=M(CO(),1),QC$=M(gg(),1),b06=v06(()=>Q8.createCounter("decopilot.stream.publish_errors",{description:"Number of JetStream publish failures for decopilot stream chunks",unit:"{errors}"}));u06=process.env.STREAM_ENCODE_TRACE==="1",c06=process.env.DECOPILOT_STREAM_TRACE==="1";l06=u06?new YC$:null});function TE0($,Z,X,G){if(!G)return!1;return $.emit(Z,l3(X,G.status,{title:G.title??void 0,virtualMcpId:G.virtual_mcp_id??void 0,createdBy:G.created_by??void 0,triggerId:G.trigger_id??null,branch:G.branch??null,createdAt:G.created_at,updatedAt:G.updated_at})),!0}var KC$=B(()=>{O8()});class R$1{storage;options;timer=null;constructor($,Z={}){this.storage=$;this.options=Z}start(){if(this.timer)return;let $=this.options.intervalMs??300000;this.timer=setInterval(()=>{this.runOnce()},$)}async runOnce(){let $=this.options.staleAfterMs??3600000;try{let Z=await this.storage.sweepAbandoned($);if(Z>0)console.log(`[async-research-sweeper] marked ${Z} stale jobs as abandoned`);return Z}catch(Z){return console.error("[async-research-sweeper] sweep failed",Z),0}}dispose(){if(this.timer)clearInterval(this.timer),this.timer=null}}import{readdir as i06,rm as RE0}from"fs/promises";import{join as IE0}from"path";async function qE0($){let Z=new Date;Z.setUTCDate(Z.getUTCDate()-n06),Z.setUTCHours(0,0,0,0);let X=0;try{let G=await DC($);for(let Q of G)if(/^\d{4}$/.test(Q))X+=await WC$($,Q,Z);else if(!Q.startsWith(".")){let Y=IE0($,Q),J=await DC(Y);for(let W of J){if(!/^\d{4}$/.test(W))continue;X+=await WC$(Y,W,Z)}if((await DC(Y)).length===0)await RE0(Y,{recursive:!0,force:!0})}}catch(G){console.warn("monitoring retention cleanup failed:",G)}return X}async function WC$($,Z,X){let G=0,Q=IE0($,Z),Y=await DC(Q);for(let K of Y){if(!/^\d{2}$/.test(K))continue;let W=IE0(Q,K),N=await DC(W);for(let F of N){if(!/^\d{2}$/.test(F))continue;let U=new Date(`${Z}-${K}-${F}T00:00:00Z`);if(isNaN(U.getTime()))continue;if(U<X){let w=IE0(W,F);await RE0(w,{recursive:!0,force:!0}),G++}}if((await DC(W)).length===0)await RE0(W,{recursive:!0,force:!0})}if((await DC(Q)).length===0)await RE0(Q,{recursive:!0,force:!0});return G}async function DC($){try{return(await i06($)).filter((X)=>!X.startsWith("."))}catch{return[]}}var n06=30;var I$1=()=>{};import{DBOS as q$1,SchedulerMode as p06}from"@dbos-inc/dbos-sdk";async function o06(){let $=[iY(),LC(),DW()],Z=0;for(let X of $)try{Z+=await qE0(X)}catch(G){console.error("[monitoring-retention] cleanup failed:",G)}return console.log(`[monitoring-retention] deleted ${Z} day-dir(s) across ${$.length} signal dir(s)`),{deleted:Z,dirs:$.length}}async function r06($,Z){await q$1.runStep(()=>o06(),{name:"monitoringRetention"})}function HC$(){if(NC$)return;NC$=!0;let $=q$1.registerWorkflow(r06,{name:"monitoringRetentionWorkflow"});q$1.registerScheduled($,{name:"monitoringRetentionWorkflow",crontab:t06,mode:p06.ExactlyOncePerIntervalWhenActive})}var t06="23 4 * * *",NC$=!1;var FC$=B(()=>{hG();I$1()});function UC$($){return async(Z,X)=>{let G=await $.db.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",X).where("member.organizationId","=",Z).executeTakeFirst();if(!G)return console.warn(`[automationContextFactory] User ${X} not found in org ${Z} \u2014 returning null`),null;let Q=await tU.create();Q.auth.user={id:X,role:G.role},Q.organization={id:G.orgId,slug:G.orgSlug,name:G.orgName};let Y=await cu0($.db,Z,G.role);return Q.boundAuth=uu0({auth:Q.authInstance,headers:new Headers,role:G.role,permissions:Y,userId:X}),Q.access=new MD(X,void 0,Q.boundAuth,G.role,"self"),u60(Q,{id:G.orgId,slug:G.orgSlug}),Q}}var wC$=B(()=>{kD();Gi()});function a06(){return{services:[{name:"Postgres",status:"pending",port:0},{name:"NATS",status:"pending",port:0}],migrationsStatus:"pending",serverUrl:null,logs:[]}}function e06(){for(let $ of s06)$()}function OC$($){let Z=[...M$1.logs,$];M$1={...M$1,logs:Z.length>500?Z.slice(-500):Z},e06()}function k$1(){return $16}var M$1,s06,$16=!1;var S$1=B(()=>{M$1=a06(),s06=new Set});import{EventEmitter as Z16}from"events";var V$1;var BC$=B(()=>{S$1();V$1=new Z16;V$1.on("request",($)=>{OC$($)})});function DC$(){return async($,Z)=>{let X=Date.now(),G=$.req.method,Q=$.req.path;if(Q==="/api/auth/get-session"||Q.includes("favicon")){await Z();return}let Y="",J=!1;if(Q.startsWith("/mcp")&&G==="POST"){J=!0;try{if($.req.header("Content-Type")?.includes("application/json")){let U=await $.req.raw.clone().json();if(U.method==="tools/call"&&U.params?.name){let w=Ug(U.params.name),O=U.params.arguments||{},D=Object.keys(O).map((E)=>Ug(E)),L=D.length>0?D.slice(0,3).join(",")+(D.length>3?"\u2026":""):"";Y=`${i6.tool}${w}${i6.dim}(${L})${i6.reset}`}else if(U.method)Y=`${i6.dim}${Ug(U.method)}${i6.reset}`}}catch{}}let K=Ug(Q);if(Q.startsWith("/mcp/conn_")){let H=Q.split("/")[2]??"";K=`/mcp/${i6.mcp}${Ug(H.slice(0,12))}\u2026${i6.reset}`}else if(Q==="/mcp")K=`${i6.mcp}/mcp${i6.reset}`;else if(Q==="/mcp/registry")K=`${i6.mcp}/mcp/registry${i6.reset}`;let W=G16(G),N=J?"\u25C0":"\u2190";if(!k$1())console.log(`${i6.dim}${N}${i6.reset} ${W}${G}${i6.reset} ${K}${Y?` ${Y}`:""}`);try{await Z()}finally{let H=Date.now()-X,F=$.res.status,U=X16(F),w=H<1000?`${H}ms`:`${(H/1000).toFixed(1)}s`,O=J?"\u25B6":"\u2192";if(!k$1())console.log(`${i6.dim}${O}${i6.reset} ${W}${G}${i6.reset} ${K}${Y?` ${Y}`:""} ${U}${F}${i6.reset} ${i6.duration}${w}${i6.reset}`);V$1.emit("request",{method:G,path:Ug(Q),status:F,duration:H,timestamp:new Date})}}}var i6,X16=($)=>{if($>=500)return i6.serverError;if($>=400)return i6.clientError;if($>=300)return i6.redirect;return i6.ok},G16=($)=>{return i6[$]||i6.reset},Ug=($)=>{return $.replace(/\r/g,"").replace(/\n/g,"").replace(/\x1b\[[0-9;]*m/g,"").replace(/[\x00-\x1f\x7f-\x9f]/g,"")};var LC$=B(()=>{S$1();BC$();i6={reset:"\x1B[0m",dim:"\x1B[2m",bold:"\x1B[1m",GET:"\x1B[36m",POST:"\x1B[33m",PUT:"\x1B[35m",DELETE:"\x1B[31m",ok:"\x1B[32m",redirect:"\x1B[36m",clientError:"\x1B[33m",serverError:"\x1B[31m",mcp:"\x1B[35m",tool:"\x1B[96m",duration:"\x1B[90m"}});import{createHmac as PC$}from"crypto";import{mkdir as Q16,readdir as Y16,rm as EC$,stat as AC$}from"fs/promises";import{join as _$1,relative as J16}from"path";import{z as D$}from"zod";function RC$($){let Z=$.replace(/[^a-zA-Z0-9_-]/g,"_");return _$1(K16,Z)}function IC$($){return $.replace(/^\/+/,"").replace(/\.\./g,"")}function C$1($,Z){let X=RC$($),G=IC$(Z);return _$1(X,G)}function W16($,Z,X,G){let Q=n0().encryptionKey||"dev-secret",Y=`${$}:${Z}:${X}:${G}`;return PC$("sha256",Q).update(Y).digest("hex")}function jC$($,Z,X,G,Q){let Y=Math.floor(Date.now()/1000)+G,J=W16(Z,X,Y,Q),K=new URL(`/api/dev-assets/${Z}/${IC$(X)}`,$);return K.searchParams.set("expires",Y.toString()),K.searchParams.set("signature",J),K.searchParams.set("method",Q),K.toString()}function qC$($,Z,X){let G=`${$}:${Z.getTime()}:${X}`;return`"${PC$("md5","etag").update(G).digest("hex")}"`}async function MC$($,Z,X,G,Q){try{let Y=await Y16($,{withFileTypes:!0});for(let J of Y){let K=_$1($,J.name),N=J16(Z,K).replace(/\\/g,"/");if(X&&!N.startsWith(X))continue;if(J.isDirectory())if(G){let H=N+"/";if(!X||H.startsWith(X)){if(!(X?N.slice(X.length):N).includes("/"))Q.commonPrefixes.add(H)}}else await MC$(K,Z,X,G,Q);else if(J.isFile()){if(G&&X){let H=N.slice(X.length);if(H.includes(G)){let F=H.indexOf(G),U=X+H.slice(0,F+1);Q.commonPrefixes.add(U);continue}}try{let H=await AC$(K);Q.objects.push({key:N,size:H.size,lastModified:H.mtime.toISOString(),etag:qC$(K,H.mtime,H.size)})}catch{}}}}catch{}}function kC$($,Z){let G=e($).id;return[{name:"LIST_OBJECTS",description:"List objects in the local assets directory with pagination support",inputSchema:D$.object({prefix:D$.string().optional(),maxKeys:D$.number().optional().default(1000),continuationToken:D$.string().optional(),delimiter:D$.string().optional()}),outputSchema:D$.object({objects:D$.array(D$.object({key:D$.string(),size:D$.number(),lastModified:D$.string(),etag:D$.string()})),nextContinuationToken:D$.string().optional(),isTruncated:D$.boolean(),commonPrefixes:D$.array(D$.string()).optional()}),handler:async(Q)=>{let Y=Q,J=Y.prefix||"",K=Y.maxKeys??1000,W=Y.delimiter,N=Y.continuationToken,H=RC$(G);await Q16(H,{recursive:!0});let F={objects:[],commonPrefixes:new Set};await MC$(H,H,J,W,F),F.objects.sort((L,E)=>L.key.localeCompare(E.key));let U=0;if(N){if(U=F.objects.findIndex((L)=>L.key>N),U===-1)U=F.objects.length}let w=F.objects.slice(U,U+K),O=U+K<F.objects.length,D=O?w[w.length-1]?.key:void 0;return{objects:w,isTruncated:O,nextContinuationToken:D,commonPrefixes:Array.from(F.commonPrefixes).sort()}}},{name:"GET_OBJECT_METADATA",description:"Get metadata for a file in the local assets directory",inputSchema:D$.object({key:D$.string()}),outputSchema:D$.object({contentType:D$.string().optional(),contentLength:D$.number(),lastModified:D$.string(),etag:D$.string(),metadata:D$.record(D$.string(),D$.string()).optional()}),handler:async(Q)=>{let Y=Q,J=C$1(G,Y.key),K=await AC$(J);return{contentType:M01(Y.key),contentLength:K.size,lastModified:K.mtime.toISOString(),etag:qC$(J,K.mtime,K.size)}}},{name:"GET_PRESIGNED_URL",description:"Generate a presigned URL for downloading a file from local storage",inputSchema:D$.object({key:D$.string(),expiresIn:D$.number().optional()}),outputSchema:D$.object({url:D$.string(),expiresIn:D$.number()}),handler:async(Q)=>{let Y=Q,J=Y.expiresIn??zC$;return{url:jC$(Z,G,Y.key,J,"GET"),expiresIn:J}}},{name:"PUT_PRESIGNED_URL",description:"Generate a presigned URL for uploading a file to local storage",inputSchema:D$.object({key:D$.string(),expiresIn:D$.number().optional(),contentType:D$.string().optional()}),outputSchema:D$.object({url:D$.string(),expiresIn:D$.number()}),handler:async(Q)=>{let Y=Q,J=Y.expiresIn??zC$;return{url:jC$(Z,G,Y.key,J,"PUT"),expiresIn:J}}},{name:"DELETE_OBJECT",description:"Delete a single file from local storage",inputSchema:D$.object({key:D$.string()}),outputSchema:D$.object({success:D$.boolean(),key:D$.string()}),handler:async(Q)=>{let Y=Q,J=C$1(G,Y.key);try{return await EC$(J),{success:!0,key:Y.key}}catch{return{success:!1,key:Y.key}}}},{name:"DELETE_OBJECTS",description:"Delete multiple files from local storage",inputSchema:D$.object({keys:D$.array(D$.string()).max(1000)}),outputSchema:D$.object({deleted:D$.array(D$.string()),errors:D$.array(D$.object({key:D$.string(),message:D$.string()}))}),handler:async(Q)=>{let Y=Q,J=[],K=[];return await Promise.all(Y.keys.map(async(W)=>{let N=C$1(G,W);try{await EC$(N),J.push(W)}catch(H){K.push({key:W,message:H instanceof Error?H.message:"Unknown error"})}})),{deleted:J,errors:K}}}]}async function v$1($,Z,X){let G=kC$(Z,X),Q=new FN({name:"dev-assets-mcp",version:"1.0.0"},{capabilities:{tools:{}},jsonSchemaValidator:K5});for(let J of G){let K="shape"in J.inputSchema?J.inputSchema.shape:D$.object({}).shape,W=J.outputSchema&&"shape"in J.outputSchema?J.outputSchema.shape:D$.object({}).shape;Q.registerTool(J.name,{description:J.description??"",inputSchema:K,outputSchema:W,annotations:J.annotations,_meta:J._meta},async(N)=>{try{let H=await J.handler(N);return{content:[{type:"text",text:JSON.stringify(H)}],structuredContent:H}}catch(H){return{content:[{type:"text",text:`Error: ${H.message}`}],isError:!0}}})}let Y=new MQ({enableJsonResponse:$.headers.get("Accept")?.includes("application/json")??!1});return await Q.connect(Y),iK(Q,Y,$,"mcp:dev-assets")}async function SC$($,Z,X,G){let Y=kC$(X,G).find((J)=>J.name===$);if(!Y)return{content:[{type:"text",text:`Tool not found: ${$}`}],isError:!0};try{let J=await Y.handler(Z);return{content:[{type:"text",text:JSON.stringify(J)}]}}catch(J){return{content:[{type:"text",text:J instanceof Error?J.message:String(J)}],isError:!0}}}var K16="./data/assets",zC$=3600,TC$,VC$;var CC$=B(()=>{f$();Xp();i8();hc();nx();jX();gL0();TC$=new L1;TC$.all("/",async($)=>{let Z=$.get("studioContext"),X=new URL($.req.url),G=`${X.protocol}//${X.host}`;return v$1($.req.raw,Z,G)});VC$=TC$});var _C$={};N4(_C$,{mountDevRoutes:()=>N16});function N16($,Z){$.all("/mcp/:connectionId{.*_dev-assets$}",Z,async(G)=>{let Q=G.get("studioContext"),Y=new URL(G.req.url),J=`${Y.protocol}//${Y.host}`;return v$1(G.req.raw,Q,J)}),$.all("/mcp/:connectionId{.*_dev-assets$}/call-tool/:toolName",Z,async(G)=>{let Q=G.get("studioContext"),Y=new URL(G.req.url),J=`${Y.protocol}//${Y.host}`,K=G.req.param("toolName");if(!K)return G.json({error:"Missing tool name"},400);let W=await G.req.json(),N=await SC$(K,W,Q,J);if(N.isError)return G.json(N.content,500);return G.json(N.content)}),$.use("/mcp/dev-assets",Z),$.route("/mcp/dev-assets",VC$);let X=new L1;X.use("*",P3({mountPath:"/api/dev-assets"})),X.route("/",yL0({orgFromPath:!1})),$.route("/api/dev-assets",X)}var vC$=B(()=>{i8();z01();gL0();CC$()});import{sql as H16}from"kysely";import{randomUUID as bC$}from"crypto";import{z as F16}from"zod";async function w16($){let Z=new Date().toISOString(),X=bC$(),G=x4.SELF($.organizationId),Q="registry.publish_request.created",Y={requestId:$.request.id,requestedId:$.request.requested_id,title:$.request.title,status:$.request.status,createdAt:$.request.created_at,requester:{name:$.request.requester_name,email:$.request.requester_email}};await $.db.insertInto("events").values({id:X,organization_id:$.organizationId,type:"registry.publish_request.created",source:G,specversion:"1.0",subject:$.request.id,time:Z,datacontenttype:"application/json",dataschema:null,data:JSON.stringify(Y),cron:null,status:"pending",attempts:0,last_error:null,next_retry_at:null,created_at:Z,updated_at:Z}).execute();let J=await $.db.selectFrom("event_subscriptions").select(["id"]).where("organization_id","=",$.organizationId).where("enabled","=",1).where("event_type","=","registry.publish_request.created").where((K)=>K.or([K("publisher","is",null),K("publisher","=",G)])).execute();if(J.length>0)await $.db.insertInto("event_deliveries").values(J.map((K)=>({id:bC$(),event_id:X,subscription_id:K.id,status:"pending",attempts:0,last_error:null,delivered_at:null,next_retry_at:null,created_at:Z}))).execute();try{await H16`SELECT
|
|
2721
|
+
</head>`)}function jV$($){let Z=new L1;return Z.get("/:domain/og.png",async(X)=>{let G=Fg(X.req.param("domain")),Q=async()=>{let Y=$?Bun.file(zV$($,"report-og-fallback.png")):null;if(!Y||!await Y.exists())return X.notFound();return X.body(new Uint8Array(await Y.arrayBuffer()),200,{"Content-Type":"image/png","Cache-Control":"public, max-age=0, s-maxage=3600"})};try{let Y=await fetch(`${e3({})}/api/v2/public/diagnostics/${encodeURIComponent(G)}/og.png`,{signal:AbortSignal.timeout(se4)}),J=Y.headers.get("content-type")??"";if(!Y.ok||!J.startsWith("image/")||!Y.body)return Q();return X.body(Y.body,200,{"Content-Type":J,"Cache-Control":"public, max-age=0, s-maxage=604800"})}catch{return Q()}}),Z.get("/:domain",async(X)=>{let G=X.req.param("domain"),Q=$?zV$($,"index.html"):null,Y=Q?Bun.file(Q):null;if(!Y||!await Y.exists())return X.notFound();let J=await Y.text();try{let K=await oe4(Fg(G)),W=re4(G,K);return X.html(ae4(J,W),200,{"Cache-Control":"public, max-age=0, s-maxage=300"})}catch{return X.html(J)}}),Z}var te4=2500,se4=1e4;var PV$=B(()=>{i8();F$1();ZD();f$()});function rt($,Z){return fetch(`${e3({})}${$}`,Z)}async function ee4($,Z,X){let G=new URLSearchParams;if(Z)G.set("pw",Z);if(X)G.set("lang",X);let Q=G.toString()?`?${G.toString()}`:"",Y=await rt(`/api/v2/public/diagnostics/${encodeURIComponent($)}${Q}`,{headers:{Accept:"application/json"}});if(Y.status===404)return{status:"not_found",deck:null,scanned_at:null,drops:[]};if(!Y.ok)throw Error(`report read HTTP ${Y.status}`);let J=await Y.json(),{deck:K,drops:W}=jE0(J);return{status:K.slides.length?"ready":"empty",deck:K,scanned_at:J.scanned_at,drops:W}}var $06,OC,AV$;var TV$=B(()=>{i8();AY();ZD();F$1();$06=new Set(["complete","errored","terminated","unknown"]),OC=new L1;OC.use("*",async($,Z)=>{let X=await L8.api.getSession({headers:$.req.raw.headers});if(!X?.user?.id)return $.json({error:"Authentication required"},401,{"Cache-Control":"private, no-store",Vary:"Cookie"});$.set("reportUser",{email:X.user.email}),await Z(),$.header("Cache-Control","private, no-store"),$.header("Vary","Cookie");return});OC.get("/site/:domain",async($)=>{let Z=$.req.param("domain").trim();if(!Z)return $.json({error:"domain is required"},400);let X=$.req.query("key")?.trim()||void 0,G=$.req.query("lang")?.trim()||void 0;try{let Q=await ee4(Z,X,G);return $.header("Cache-Control","private, no-store"),$.json(Q)}catch{return $.json({error:"report read failed"},502)}});OC.post("/run",async($)=>{let Z;try{Z=await $.req.json()}catch{return $.json({error:"invalid JSON"},400)}let X=typeof Z.domain==="string"?Z.domain.trim():"";if(!X)return $.json({error:"domain is required"},400);let G=$.get("reportUser").email,Q=typeof Z.distinctId==="string"&&Z.distinctId.trim()&&Z.distinctId.length<=200?Z.distinctId.trim():void 0;try{let Y=await rt("/api/v2/diagnostics/run",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${$D({})}`},body:JSON.stringify({url:X,email:G,distinct_id:Q})});if(!Y.ok)return $.json({error:`run HTTP ${Y.status}`},502);let J=await Y.json(),K=J.blocked?{state:"blocked"}:J.status==="fresh"?{state:"fresh"}:J.mode==="sync"?{state:"sync"}:{state:"running",id:J.id??null};return $.json(K)}catch{return $.json({error:"run failed"},502)}});OC.get("/status",async($)=>{let Z=$.req.query("id");if(!Z)return $.json({error:"id is required"},400);try{let X=await rt(`/api/v2/diagnostics/status?id=${encodeURIComponent(Z)}`,{headers:{Authorization:`Bearer ${$D({})}`}});if(!X.ok)return $.json({error:`status HTTP ${X.status}`},502);let Q=(await X.json()).status??"unknown",Y={done:$06.has(Q),status:Q};return $.json(Y)}catch{return $.json({error:"status failed"},502)}});OC.get("/link-token/:id",async($)=>{let Z=$.req.param("id");try{let X=await rt(`/api/v2/public/link-tokens/${encodeURIComponent(Z)}`,{headers:{Accept:"application/json"}});if(X.status===404)return $.json(null);if(!X.ok)return $.json({error:`link token HTTP ${X.status}`},502);return $.json(await X.json())}catch{return $.json({error:"link token resolve failed"},502)}});OC.get("/suggest",async($)=>{let Z=($.req.query("q")??"").trim().slice(0,64);if(Z.length<2)return $.json({suggestions:[]});try{let X=await rt(`/api/v2/public/suggest?q=${encodeURIComponent(Z)}`,{headers:{Accept:"application/json"}});if(!X.ok)return $.json({suggestions:[]});let G=await X.json();return $.json({suggestions:Array.isArray(G.suggestions)?G.suggestions:[]})}catch{return $.json({suggestions:[]})}});AV$=OC});import{createHmac as Z06,timingSafeEqual as X06}from"crypto";function RV$($,Z,X,G=Date.now()){if(!Z||!X)return!1;let Q,Y=[];for(let N of Z.split(",")){let H=N.indexOf("=");if(H<=0)continue;let F=N.slice(0,H).trim(),U=N.slice(H+1).trim();if(F==="t")Q=U;else if(F==="v1")Y.push(U)}if(!Q||Y.length===0)return!1;let J=Number(Q);if(!Number.isFinite(J)||Math.abs(G/1000-J)>G06)return!1;let K=Z06("sha256",X).update(`${Q}.${$}`).digest("hex"),W=Buffer.from(K,"hex");return Y.some((N)=>{let H=Buffer.from(N,"hex");return W.length===H.length&&X06(W,H)})}function IV$($){let Z;try{Z=JSON.parse($)}catch{return null}let X=lY(Z),G=lY(lY(X?.data)?.object);if(!X||typeof X.type!=="string"||!G)return null;return{id:UW(X.id),type:X.type,created:typeof X.created==="number"?X.created:void 0,livemode:typeof X.livemode==="boolean"?X.livemode:void 0,data:{object:G}}}function Q06($){switch($){case"active":case"trialing":return"active";case"past_due":return"past_due";default:return"canceled"}}function UW($){return typeof $==="string"?$:void 0}function lY($){return typeof $==="object"&&$!==null?$:void 0}function PE0($){return typeof $==="number"?new Date($*1000):null}function O$1($){return UW($)??UW(lY($)?.id)}function Y06($){return O$1($.subscription)??UW(lY(lY($.parent)?.subscription_details)?.subscription)}function J06($){let Z=PE0($.current_period_end);if(Z)return Z;let X=lY($.items)?.data;if(!Array.isArray(X))return null;let G=0;for(let Q of X){let Y=lY(Q)?.current_period_end;if(typeof Y==="number"&&Y>G)G=Y}return G>0?new Date(G*1000):null}function U$1($,Z){let X=PE0($.created);return!!X&&!!Z.lastStripeEventAt&&X<Z.lastStripeEventAt}function w$1($,Z){let X=PE0($.created);if(!X)return;return Z.lastStripeEventAt&&Z.lastStripeEventAt>X?void 0:X}async function K06($,Z){let X=Z.data.object;switch(Z.type){case"checkout.session.completed":case"checkout.session.async_payment_succeeded":{let G=UW(lY(X.metadata)?.orgId);if(!G)return{handled:!1,reason:"no orgId"};if(UW(lY(X.metadata)?.kind)==="topup"){if(X.mode!=="payment")return{handled:!1,reason:"topup with wrong mode"};if(UW(X.payment_status)!=="paid")return{handled:!1,reason:"payment not confirmed"};let J=UW(X.id);if(!J)return console.error("stripe webhook: topup session without id",{eventId:Z.id,organizationId:G}),{handled:!1,reason:"topup session without id"};let K=Number(lY(X.metadata)?.creditCents);if(!Number.isInteger(K)||K<=0)return console.error("stripe webhook: paid topup with bad metadata \u2014 credit NOT applied",{eventId:Z.id,organizationId:G,creditCents:lY(X.metadata)?.creditCents}),{handled:!1,reason:"bad topup metadata"};return{handled:!0,organizationId:G,topUp:{creditCents:K,referenceId:`stripe-topup:${J}`}}}if(X.mode!=="subscription")return{handled:!1,reason:"not a subscription checkout"};if(UW(X.payment_status)!=="paid")return{handled:!1,reason:"payment not confirmed"};let Q=await $.getBilling(G);if(!Q)return{handled:!1,reason:"unknown org"};let Y=O$1(X.subscription);if(Q.stripeSubscriptionId&&Y&&Q.stripeSubscriptionId!==Y)return console.error("stripe webhook: refused checkout rebind",{organizationId:G,eventId:Z.id}),{handled:!1,reason:"org already bound to another subscription",orphanSubscriptionId:Y};if(U$1(Z,Q))return{handled:!1,reason:"stale event"};return await $.updateStripeState(G,{stripeCustomerId:O$1(X.customer),stripeSubscriptionId:Y,status:"active",lastStripeEventAt:w$1(Z,Q)}),{handled:!0,organizationId:G}}case"customer.subscription.updated":case"customer.subscription.deleted":{let G=UW(X.id);if(!G)return{handled:!1,reason:"no sub id"};let Q=await $.getBillingByStripeSubscriptionId(G);if(!Q)return{handled:!1,reason:"unknown subscription"};let Y=Z.type==="customer.subscription.deleted";if(!Y&&U$1(Z,Q))return{handled:!1,reason:"stale event"};let J=Y?"canceled":Q06(X.status);return await $.updateStripeState(Q.organizationId,{status:J,currentPeriodEnd:J06(X),...Y&&{stripeSubscriptionId:null},lastStripeEventAt:w$1(Z,Q)}),{handled:!0,organizationId:Q.organizationId}}case"invoice.paid":{let G=Y06(X);if(!G)return{handled:!1,reason:"no sub id"};let Q=await $.getBillingByStripeSubscriptionId(G);if(!Q)return{handled:!1,reason:"unknown subscription"};if(U$1(Z,Q))return{handled:!1,reason:"stale event"};return await $.updateStripeState(Q.organizationId,{status:"active",currentPeriodEnd:PE0(X.period_end),lastStripeEventAt:w$1(Z,Q)}),{handled:!0,organizationId:Q.organizationId}}default:return{handled:!1,reason:`unhandled event ${Z.type}`}}}async function qV$($){let Z=new jd(n8().db),X=await K06(Z,$);if(X.handled&&X.topUp)await xN$({organizationId:X.organizationId,amountCents:X.topUp.creditCents,referenceId:X.topUp.referenceId});if(!X.handled&&X.orphanSubscriptionId)try{await X0$(X.orphanSubscriptionId),console.error("stripe webhook: canceled orphan subscription",{subscriptionId:X.orphanSubscriptionId,eventId:$.id})}catch(G){if(!(G instanceof eJ&&(G.status===400||G.status===404)))throw G}return X}var G06=300;var MV$=B(()=>{XY();_i();nt0()});var W06=1048576,B$1;var kV$=B(()=>{i8();XC();f$();MV$();B$1=new L1;B$1.post("/webhook",H7({maxSize:W06,onError:($)=>$.json({error:"payload too large"},413)}),async($)=>{let Z=n0().stripeWebhookSecret;if(!Z)return $.json({error:"stripe billing not configured"},503);let X=await $.req.text();if(!RV$(X,$.req.header("stripe-signature"),Z))return $.json({error:"invalid signature"},400);let Q=IV$(X);if(!Q)return $.json({error:"invalid payload"},400);let Y=await qV$(Q);return console.log("stripe webhook",{eventId:Q.id,type:Q.type,livemode:Q.livemode,...Y}),$.json({received:!0})})});function SV$($,Z){if(Z.startsWith("text/html")||Z.startsWith("image/svg"))$.set("Content-Security-Policy","sandbox allow-scripts allow-modals allow-same-origin")}var VV$,N06,H06,CV$;var _V$=B(()=>{i8();BJ();Cx();e_();VV$=new L1,N06=["range","if-none-match","if-modified-since"],H06=["content-type","content-length","content-range","accept-ranges","etag","last-modified"];VV$.get("/:org/files/*",async($)=>{let Z=$.get("studioContext"),X=Z.organization?.id;if(!Z.auth?.user?.id){if(my($))return $.redirect(`/login?next=${encodeURIComponent($.req.path)}`,302);throw new X$(401,{message:"Authentication required"})}if(!X)throw new X$(401,{message:"Organization context required"});let G=$.req.path.replace(/^.*\/files\//,"");if(!G)throw new X$(400,{message:"Missing file key"});let Q=await yn(G,Z);if(!Q)throw new X$(503,{message:"Object storage not configured"});if(Q.startsWith("data:")&&OJ()){let W=Q.match(/^data:([^;]+);base64,(.+)$/s);if(!W)throw new X$(500,{message:"Invalid data URL from storage"});let[,N,H]=W,F=Buffer.from(H,"base64"),U=new Headers({"Content-Type":N,"Cache-Control":"private, max-age=86400"});return SV$(U,N),new Response(F,{status:200,headers:U})}let Y=new Headers;for(let W of N06){let N=$.req.header(W);if(N)Y.set(W,N)}let J=await fetch(Q,{headers:Y});if(J.status===403||J.status===404)throw new X$(404,{message:"File not found"});if(!J.ok&&J.status!==304&&J.status!==416)throw console.error(`[files] upstream storage error ${J.status} for key:`,G),new X$(502,{message:"Upstream storage error"});let K=new Headers;for(let W of H06){let N=J.headers.get(W);if(N)K.set(W,N)}return K.set("Cache-Control","private, max-age=86400"),SV$(K,K.get("content-type")??""),new Response(J.body,{status:J.status,headers:K})});CV$=VV$});var at=C((BC)=>{var F06=BC&&BC.__createBinding||(Object.create?function($,Z,X,G){if(G===void 0)G=X;var Q=Object.getOwnPropertyDescriptor(Z,X);if(!Q||("get"in Q?!Z.__esModule:Q.writable||Q.configurable))Q={enumerable:!0,get:function(){return Z[X]}};Object.defineProperty($,G,Q)}:function($,Z,X,G){if(G===void 0)G=X;$[G]=Z[X]}),U06=BC&&BC.__exportStar||function($,Z){for(var X in $)if(X!=="default"&&!Object.prototype.hasOwnProperty.call(Z,X))F06(Z,$,X)};Object.defineProperty(BC,"__esModule",{value:!0});U06(dG(),BC)});var fV$=C((vV$)=>{Object.defineProperty(vV$,"__esModule",{value:!0});vV$.version=void 0;vV$.version="3.4.0"});var gV$=C((wW)=>{var w06=wW&&wW.__importDefault||function($){return $&&$.__esModule?$:{default:$}};Object.defineProperty(wW,"__esModule",{value:!0});wW.NodeTransport=wW.VERSION=void 0;wW.nodeResolveHost=z06;var y6=at(),O06=P0("net"),D$1=P0("tls"),B06=P0("path"),xV$=P0("fs"),D06=w06(P0("dns")),L06=fV$();wW.VERSION=L06.version;var E06="nats.js";class yV${socket;version;lang;yields=[];signal=(0,y6.deferred)();closedNotification=(0,y6.deferred)();options;connected=!1;tlsName="";done=!1;closeError;constructor(){this.lang=E06,this.version=wW.VERSION}async connect($,Z){this.tlsName=$.tlsName,this.options=Z;let{tls:X}=this.options,{handshakeFirst:G}=X||{};try{if(G===!0)this.socket=await this.tlsFirst($);else this.socket=await this.dial($);if(this.done)this.socket?.destroy();let Q=await this.peekInfo();(0,y6.checkOptions)(Q,Z);let{tls_required:Y,tls_available:J}=Q,K=J===!0&&Z.tls!==null;if(!G&&(Y||K))this.socket=await this.startTLS();if(this.done)this.socket?.destroy();if(Y&&this.socket.encrypted!==!0)throw y6.errors.InvalidArgumentError.format("tls","is not available on this server");return this.connected=!0,this.setupHandlers(),this.signal.resolve(),Promise.resolve()}catch(Q){let Y=Q;if(!Y)Y=new y6.errors.ConnectionError("error connecting - node provided an undefined error");let{code:J}=Y,K=J==="ECONNREFUSED"?new y6.errors.ConnectionError("connection refused",{cause:Y}):Y;throw this.socket?.destroy(),K}}dial($){let Z=(0,y6.deferred)(),X,G=(0,O06.createConnection)($.port,$.hostname,()=>{Z.resolve(G),G.removeAllListeners()});return G.on("error",(Q)=>{X=Q}),G.on("close",()=>{G.removeAllListeners(),Z.reject(X)}),G.setNoDelay(!0),Z}get isClosed(){return this.done}close($){return this._closed($,!1)}peekInfo(){let $=(0,y6.deferred)(),Z;return this.socket.on("data",(X)=>{this.yields.push(X);let G=y6.DataBuffer.concat(...this.yields),Q=(0,y6.extractProtocolMessage)(G);if(Q!=="")try{let Y=y6.INFO.exec(Q);if(!Y)throw Error("unexpected response from server");let J=JSON.parse(Y[1]);$.resolve(J)}catch(Y){$.reject(Y)}finally{this.socket.removeAllListeners()}}),this.socket.on("error",(X)=>{Z=X}),this.socket.on("close",()=>{this.socket.removeAllListeners(),$.reject(Z)}),$}loadFile($){if(!$)return Promise.resolve();let Z=(0,y6.deferred)();try{if($=(0,B06.resolve)($),!(0,xV$.existsSync)($))Z.reject(Error(`${$} doesn't exist`));(0,xV$.readFile)($,(X,G)=>{if(X)return Z.reject(X);Z.resolve(G)})}catch(X){Z.reject(X)}return Z}async loadClientCerts(){let $={},{certFile:Z,cert:X,caFile:G,ca:Q,keyFile:Y,key:J}=this.options.tls;try{if(Z){let K=await this.loadFile(Z);if(K)$.cert=K}else if(X)$.cert=X;if(Y){let K=await this.loadFile(Y);if(K)$.key=K}else if(J)$.key=J;if(G){let K=await this.loadFile(G);if(K)$.ca=[K]}else if(Q)$.ca=Q;return Promise.resolve($)}catch(K){return Promise.reject(K)}}async tlsFirst($){let Z,X={servername:this.tlsName,rejectUnauthorized:!0};if(this.socket)X.socket=this.socket;if(typeof this.options.tls==="object")try{let Q=await this.loadClientCerts()||{};X=(0,y6.extend)(X,this.options.tls,Q)}catch(Q){return Promise.reject(new y6.errors.ConnectionError(Q.message,{cause:Q}))}let G=(0,y6.deferred)();try{let Q=(0,D$1.connect)($.port,$.hostname,X,()=>{Q.removeAllListeners(),G.resolve(Q)});Q.on("error",(Y)=>{Z=Y}),Q.on("secureConnect",()=>{if(X.rejectUnauthorized===!1)return;if(!Q.authorized)throw Q.authorizationError}),Q.on("close",()=>{G.reject(Z),Q.removeAllListeners()}),Q.setNoDelay(!0)}catch(Q){G.reject(new y6.errors.ConnectionError(Q.message,{cause:Q}))}return G}async startTLS(){let $,Z={socket:this.socket,servername:this.tlsName,rejectUnauthorized:!0};if(typeof this.options.tls==="object")try{let G=await this.loadClientCerts()||{};Z=(0,y6.extend)(Z,this.options.tls,G)}catch(G){return Promise.reject(new y6.errors.ConnectionError(G.message,{cause:G}))}let X=(0,y6.deferred)();try{let G=(0,D$1.connect)(Z,()=>{G.removeAllListeners(),X.resolve(G)});G.on("error",(Q)=>{$=Q}),G.on("secureConnect",()=>{if(Z.rejectUnauthorized===!1)return;if(!G.authorized)throw G.authorizationError}),G.on("close",()=>{X.reject($),G.removeAllListeners()})}catch(G){X.reject(new y6.errors.ConnectionError(G.message,{cause:G}))}return X}setupHandlers(){let $;this.socket.on("data",(Z)=>{return this.yields.push(Z),this.signal.resolve()}),this.socket.on("error",(Z)=>{$=Z}),this.socket.on("end",()=>{if(this.socket?.destroyed)return;this.socket?.write(new Uint8Array(0),()=>{this.socket?.end()})}),this.socket.on("close",()=>{this._closed($,!1)})}[Symbol.asyncIterator](){return this.iterate()}async*iterate(){while(!0){if(this.yields.length===0)await this.signal;let $=this.yields;this.yields=[];for(let Z=0;Z<$.length;Z++){if(this.options.debug)console.info(`> ${(0,y6.render)($[Z])}`);yield $[Z]}if(this.done)break;else if(this.yields.length===0)$.length=0,this.yields=$,this.signal=(0,y6.deferred)()}}discard(){if(this.done=!0,this.socket)try{this.socket.removeAllListeners(),this.socket.destroy()}catch{}}disconnect(){this._closed(void 0,!0).then().catch()}isEncrypted(){return this.socket instanceof D$1.TLSSocket}_send($){if(this.isClosed||this.socket===void 0)return Promise.resolve();if(this.options.debug)console.info(`< ${(0,y6.render)($)}`);let Z=(0,y6.deferred)();try{this.socket.write($,(X)=>{if(X){if(this.options.debug)console.error(`!!! ${(0,y6.render)($)}: ${X}`);return Z.reject(X)}return Z.resolve()})}catch(X){if(this.options.debug)console.error(`!!! ${(0,y6.render)($)}: ${X}`);Z.reject(X)}return Z}send($){this._send($).catch((X)=>{})}async _closed($,Z=!0){if(!this.connected)return;if(this.done){this.socket?.destroy();return}if(this.closeError=$,!$&&this.socket&&Z)try{await this._send(new TextEncoder().encode(""))}catch(X){if(this.options.debug)console.log("transport close terminated with an error",X)}try{if(this.socket)this.socket.removeAllListeners(),this.socket?.destroy(),this.socket=void 0}catch(X){console.log(X)}this.done=!0,this.closedNotification.resolve(this.closeError)}closed(){return this.closedNotification}}wW.NodeTransport=yV$;function z06($){let Z=(0,y6.deferred)();return D06.default.lookup($,{all:!0},(X,G)=>{if(X){Z.reject(X);return}let Q=[];for(let Y of G)Q.push(Y.address);if(Q.length===0)Q.push($);Z.resolve(Q)}),Z}});var dV$=C((lV$)=>{Object.defineProperty(lV$,"__esModule",{value:!0});lV$.connect=j06;var hV$=gV$(),uV$=at(),cV$=at();function j06($={}){if((0,cV$.hasWsProtocol)($))return Promise.reject(cV$.errors.InvalidArgumentError.format("servers","node client doesn't support websockets, use the 'wsconnect' function instead"));return(0,uV$.setTransportFactory)({factory:()=>{return new hV$.NodeTransport},dnsResolveFn:hV$.nodeResolveHost}),uV$.NatsConnectionImpl.connect($)}});var mV$=C((MH)=>{var A06=MH&&MH.__createBinding||(Object.create?function($,Z,X,G){if(G===void 0)G=X;var Q=Object.getOwnPropertyDescriptor(Z,X);if(!Q||("get"in Q?!Z.__esModule:Q.writable||Q.configurable))Q={enumerable:!0,get:function(){return Z[X]}};Object.defineProperty($,G,Q)}:function($,Z,X,G){if(G===void 0)G=X;$[G]=Z[X]}),T06=MH&&MH.__exportStar||function($,Z){for(var X in $)if(X!=="default"&&!Object.prototype.hasOwnProperty.call(Z,X))A06(Z,$,X)};Object.defineProperty(MH,"__esModule",{value:!0});MH.connect=void 0;var R06=dV$();Object.defineProperty(MH,"connect",{enumerable:!0,get:function(){return R06.connect}});T06(at(),MH)});function tV$($){let Z=$?.connectFn??k06,X=null,G=null,Q=!1,Y=!1,J=!1,K=[];function W(){return X!==null&&!X.isClosed()&&!X.isDraining()&&!J}function N(){console.log(`[NatsProvider] fireReady: ${K.length} callbacks`);for(let U of K)try{U()}catch{}}function H(U){(async()=>{for await(let w of U.status())if(w.type==="disconnect")console.log("[NatsProvider] Disconnected"),J=!0;else if(w.type==="reconnect")console.log("[NatsProvider] Reconnected, re-firing ready callbacks"),J=!1,G=null,N()})().catch(()=>{})}async function F(U,w){let O=0;while(!Y)try{X=await Z({servers:U,timeout:M06,reconnect:!0,maxReconnectAttempts:-1,...w?{authenticator:w}:{}}),console.log(`[NatsProvider] Connected to ${X.getServer()} after ${O} attempt(s)`),G=null,J=!1,H(X),N();return}catch{O++;let D=yG(q06,I06,O-1,2,0.5);await w8(D)}}return{init(U,w){if(Q)return;Q=!0,Y=!1;let O=w?.creds?iV$.credsAuthenticator(new TextEncoder().encode(w.creds)):void 0;F(U,O).catch(()=>{})},isConnected(){return W()},getConnection(){return W()?X:null},getJetStream(){if(!W())return null;if(!G)G=pV$.jetstream(X);return G},onReady(U){if(K.push(U),W())try{U()}catch{}},async drain(){if(Y=!0,Q=!1,G=null,J=!1,X){let U=X;X=null,await U.drain().catch(()=>{})}}}}function k06($){return nV$.connect($)}var iV$,nV$,pV$,I06=100,q06=3000,M06=3000;var oV$=B(()=>{L5();iV$=M(gg(),1),nV$=M(mV$(),1),pV$=M(CO(),1)});function L$1($,Z){return`${$}.${Z}`}class E$1{cache;constructor($){this.cache=cy({ttlMs:$?.ttlMs??S06,maxSize:$?.maxSize??V06})}async get($,Z){return this.cache.get(L$1($,Z))??null}async set($,Z,X){this.cache.set(L$1($,Z),X)}async invalidate($,Z){this.cache.delete(L$1($,Z))}teardown(){this.cache.clear()}}var S06=600000,V06=5000;var rV$=()=>{};function AE0($,Z){return`${$}:${Z}`}function z$1($){let Z=cy({ttlMs:$?.ttlMs??C06,maxSize:$?.maxSize??_06}),X=$?.getConnection,G=crypto.randomUUID(),Q=new TextEncoder,Y=new TextDecoder,J=null;function K(W,N){let H=X?.();if(!H)return;try{H.publish(aV$,Q.encode(JSON.stringify({organizationId:W,keyId:N,originId:G})))}catch(F){console.warn("[ProviderKeyCache] Publish failed (non-critical):",F)}}return{get(W,N){return Z.get(AE0(W,N))},set(W,N,H){Z.set(AE0(W,N),H)},invalidate(W,N){Z.delete(AE0(W,N)),K(W,N)},start(){if(J)return;let W=X?.();if(!W)return;J=W.subscribe(aV$),(async()=>{for await(let N of J)try{let H=JSON.parse(Y.decode(N.data));if(H.originId===G)continue;Z.delete(AE0(H.organizationId,H.keyId))}catch{}})().catch(console.error)},teardown(){J?.unsubscribe(),J=null,Z.clear()}}}var aV$="studio.ai-provider-keys.invalidate",C06=30000,_06=5000;var sV$=()=>{};class j$1{options;subscriptions=[];onCancel=null;encoder=new TextEncoder;originId=crypto.randomUUID();seenMessageIds=new Set;constructor($){this.options=$}async start($){if($)this.onCancel=$;if(this.subscriptions.length>0)return;if(!this.onCancel)return;let Z=this.options.getConnection();if(!Z)return;let X=new TextDecoder;this.subscriptions=eV$.map((G)=>Z.subscribe(G));for(let G of this.subscriptions)(async()=>{for await(let Q of G)try{let Y=JSON.parse(X.decode(Q.data));if(Y.originId===this.originId)continue;if(Y.messageId&&this.hasSeen(Y.messageId))continue;this.onCancel?.(Y.taskId)}catch{}})().catch(console.error)}broadcast($){if(/[.*>\s]/.test($)){console.warn("[NatsCancelBroadcast] Invalid threadId, skipping broadcast");return}this.onCancel?.($);try{let Z=this.options.getConnection();if(!Z)return;let X=this.encoder.encode(JSON.stringify({taskId:$,originId:this.originId,messageId:crypto.randomUUID()}));for(let G of eV$)Z.publish(G,X)}catch(Z){console.warn("[NatsCancelBroadcast] Publish failed (non-critical):",Z)}}publishControlFrame($,Z){}async stop(){for(let $ of this.subscriptions)$.unsubscribe();this.subscriptions=[],this.seenMessageIds.clear(),this.onCancel=null}hasSeen($){if(this.seenMessageIds.has($))return!0;if(this.seenMessageIds.add($),this.seenMessageIds.size>1000){let Z=this.seenMessageIds.values().next().value;if(Z)this.seenMessageIds.delete(Z)}return!1}}var eV$;var $C$=B(()=>{eV$=["studio.decopilot.cancel","mesh.decopilot.cancel"]});var ZC$=($)=>{let Z;return()=>Z??=$()},P$1,A$1;var XC$=B(()=>{G5();P$1=ZC$(()=>Q8.createHistogram("decopilot.stream.encode_ms",{description:"Per-chunk JSON.stringify+encode time for decopilot stream",unit:"ms"})),A$1=ZC$(()=>Q8.createCounter("decopilot.stream.published_chunks",{description:"Logical decopilot stream chunks published to JetStream",unit:"{chunks}"}))});function h06(){return{name:$H,subjects:[`${vw0}.>`],storage:T3.StorageType.File,max_age:f06,max_bytes:y06,max_msgs_per_subject:g06,discard:T3.DiscardPolicy.Old,retention:T3.RetentionPolicy.Limits,duplicate_window:x06,num_replicas:1}}class YC${chunks=0;encodeMs=0;maxMs=0;bytes=0;windowStart=performance.now();constructor(){setInterval(()=>this.flush(),1e4).unref?.()}record($,Z){if(this.chunks++,this.encodeMs+=$,$>this.maxMs)this.maxMs=$;this.bytes+=Z}flush(){let $=performance.now(),Z=$-this.windowStart;if(this.chunks>0&&Z>0)console.warn(JSON.stringify({msg:"stream-encode-trace",windowMs:Math.round(Z),chunks:this.chunks,encodeMs:Math.round(this.encodeMs),pctOfLoop:+(this.encodeMs/Z*100).toFixed(1),maxChunkMs:+this.maxMs.toFixed(2),mbEncoded:+(this.bytes/1048576).toFixed(2)}));this.chunks=0,this.encodeMs=0,this.maxMs=0,this.bytes=0,this.windowStart=$}}function GC$($){let Z=QC$.headers();for(let[X,G]of Object.entries($))Z.set(X,G);return Z}function d06($,Z){let X=0;return{publish(G,Q,Y,J){G.publish(Q,Y,J?{headers:J}:void 0).catch((K)=>{if(X++,b06().add(1,{"org.id":Z??"unknown"}),X===1||X%100===0)console.warn(`[Decopilot] JetStream publish failed for thread ${$} (${X} total):`,K)})},get errorCount(){return X}}}function m06($){if(!($ instanceof Error))return!1;if($.name==="TimeoutError")return!0;return/timeout|no responders|503/i.test($.message)}class T$1{options;js=null;jsm=null;constructor($){this.options=$}async init(){let $=this.options.getConnection();if(!$){console.log("[Decopilot] StreamBuffer.init skipped: NATS not connected yet");return}let Z=h06(),X=await gG(async()=>{let G=this.options.getJetStreamManager?await this.options.getJetStreamManager():await T3.jetstreamManager($);try{await G.streams.info($H),await G.streams.update($H,Z)}catch(Q){if(Q instanceof Error&&Q.message.includes("stream not found"))await G.streams.add(Z);else if(Q instanceof Error&&/can ?not change.*storage|storage type/i.test(Q.message))await G.streams.delete($H),await G.streams.add(Z);else throw Q}return G},{maxAttempts:5,minTimeout:250,maxTimeout:4000,jitter:0.5,isRetriable:m06});this.js=this.options.getJetStream(),this.jsm=X,console.log(`[Decopilot] StreamBuffer.init ${this.js?"ready":"degraded (js=null)"}`)}pump($,Z,X,G){let Q=this.js;if(!Q)return console.warn(`[Decopilot] pump: JetStream client unavailable for thread ${Z}; chunks NOT published to NATS`),Promise.resolve();let Y=d06(Z,G),J=!1,K=()=>{if(J)return;J=!0;let N=zK$(Z);Q.publish(N.subject,N.data).catch(()=>{})};X.addEventListener("abort",K,{once:!0});let W=(N)=>{let H=performance.now(),F=Fp0(N,{runId:Z}),U=performance.now()-H;if(P$1().record(U),A$1().add(1,{"org.id":G??"unknown"}),l06?.record(U,F.reduce((w,O)=>w+O.data.length,0)),F.length===0){console.warn(`[Decopilot] dropping oversized stream chunk for thread ${Z}`);return}for(let w of F)Y.publish(Q,w.subject,w.data,w.headers?GC$(w.headers):void 0)};return(async()=>{let N=$.getReader(),H=0,F=0,U;try{while(!0){let{done:w,value:O}=await N.read();if(w)break;if(W(O),F++,++H>=64)H=0,await new Promise((D)=>setImmediate(D))}}catch(w){U=w,console.warn(`[Decopilot] stream pump error for thread ${Z}:`,w?.message??w)}finally{if(N.releaseLock(),K(),c06)console.warn(JSON.stringify({msg:"decopilot-stream-diag",event:"pump-done",taskId:Z,publishedChunks:F,publishErrors:Y.errorCount}))}if(U!==void 0)throw U})()}async publishRawChunk($,Z,X){let G=this.js;if(!G)return!1;let Q=performance.now(),Y=Fp0(Z,{runId:$,dedup:X});if(P$1().record(performance.now()-Q),A$1().add(1),Y.length===0)return console.warn(`[Decopilot] dropping oversized raw chunk for thread ${$} (> MAX_CHUNKED_BYTES)`),!0;for(let J of Y)await G.publish(J.subject,J.data,{...J.headers?{headers:GC$(J.headers)}:{},...J.msgId?{msgID:J.msgId}:{}});return!0}async publishDone($,Z,X){let G=this.js;if(!G)return!1;let Q=EK$({runId:$,fenceToken:Z,finalSeq:X});return await G.publish(Q.subject,Q.data,{msgID:Q.msgId}),!0}async createTailStream($,Z,X){let G=this.js;if(!G)return console.warn(`[Decopilot] createTailStream: JetStream client unavailable for thread ${$}; no live tail`),null;let Q=X?.deliverPolicy==="new"?T3.DeliverPolicy.New:T3.DeliverPolicy.All,Y=X?.closeOnDone??!1,J=xw($),K;try{K=await(await G.consumers.get($H,{filter_subjects:J,deliver_policy:Q})).consume()}catch(D){return console.warn("[Decopilot] JetStream tail unavailable (non-critical):",D?.message??D),null}let H=gw0({messages:async function*(){try{for await(let D of K)yield{subject:D.subject,data:D.data,headers:D.headers}}finally{K.stop()}}(),onCancel:()=>K.stop()}).pipeThrough(bw0()).pipeThrough(fw0()).getReader(),F=!1,U=()=>{if(F)return;F=!0;try{H.releaseLock()}catch{}},w=!1,O=()=>{if(w)return;w=!0,K.stop(),H.cancel().catch(()=>{}),U()};return Z?.addEventListener("abort",O,{once:!0}),new ReadableStream({async pull(D){for(;;){let{done:L,value:E}=await H.read();if(L){O(),D.close();return}let z=E;if(z.kind==="done"){if(Y){O(),D.close();return}continue}D.enqueue(z.chunk);return}},cancel(){O()}})}purge($){if(!this.jsm)return;this.jsm.streams.purge($H,{filter:xw($)}).catch(()=>{})}teardown(){this.js=null,this.jsm=null}}var T3,QC$,v06=($)=>{let Z;return()=>Z??=$()},b06,f06=86400000000000,x06=120000000000,y06=4294967296,g06=500000,u06,c06,l06;var JC$=B(()=>{L5();Up0();hw0();xw0();G5();XC$();T3=M(CO(),1),QC$=M(gg(),1),b06=v06(()=>Q8.createCounter("decopilot.stream.publish_errors",{description:"Number of JetStream publish failures for decopilot stream chunks",unit:"{errors}"}));u06=process.env.STREAM_ENCODE_TRACE==="1",c06=process.env.DECOPILOT_STREAM_TRACE==="1";l06=u06?new YC$:null});function TE0($,Z,X,G){if(!G)return!1;return $.emit(Z,l3(X,G.status,{title:G.title??void 0,virtualMcpId:G.virtual_mcp_id??void 0,createdBy:G.created_by??void 0,triggerId:G.trigger_id??null,branch:G.branch??null,harnessId:G.harness_id??void 0,createdAt:G.created_at,updatedAt:G.updated_at})),!0}var KC$=B(()=>{O8()});class R$1{storage;options;timer=null;constructor($,Z={}){this.storage=$;this.options=Z}start(){if(this.timer)return;let $=this.options.intervalMs??300000;this.timer=setInterval(()=>{this.runOnce()},$)}async runOnce(){let $=this.options.staleAfterMs??3600000;try{let Z=await this.storage.sweepAbandoned($);if(Z>0)console.log(`[async-research-sweeper] marked ${Z} stale jobs as abandoned`);return Z}catch(Z){return console.error("[async-research-sweeper] sweep failed",Z),0}}dispose(){if(this.timer)clearInterval(this.timer),this.timer=null}}import{readdir as i06,rm as RE0}from"fs/promises";import{join as IE0}from"path";async function qE0($){let Z=new Date;Z.setUTCDate(Z.getUTCDate()-n06),Z.setUTCHours(0,0,0,0);let X=0;try{let G=await DC($);for(let Q of G)if(/^\d{4}$/.test(Q))X+=await WC$($,Q,Z);else if(!Q.startsWith(".")){let Y=IE0($,Q),J=await DC(Y);for(let W of J){if(!/^\d{4}$/.test(W))continue;X+=await WC$(Y,W,Z)}if((await DC(Y)).length===0)await RE0(Y,{recursive:!0,force:!0})}}catch(G){console.warn("monitoring retention cleanup failed:",G)}return X}async function WC$($,Z,X){let G=0,Q=IE0($,Z),Y=await DC(Q);for(let K of Y){if(!/^\d{2}$/.test(K))continue;let W=IE0(Q,K),N=await DC(W);for(let F of N){if(!/^\d{2}$/.test(F))continue;let U=new Date(`${Z}-${K}-${F}T00:00:00Z`);if(isNaN(U.getTime()))continue;if(U<X){let w=IE0(W,F);await RE0(w,{recursive:!0,force:!0}),G++}}if((await DC(W)).length===0)await RE0(W,{recursive:!0,force:!0})}if((await DC(Q)).length===0)await RE0(Q,{recursive:!0,force:!0});return G}async function DC($){try{return(await i06($)).filter((X)=>!X.startsWith("."))}catch{return[]}}var n06=30;var I$1=()=>{};import{DBOS as q$1,SchedulerMode as p06}from"@dbos-inc/dbos-sdk";async function o06(){let $=[iY(),LC(),DW()],Z=0;for(let X of $)try{Z+=await qE0(X)}catch(G){console.error("[monitoring-retention] cleanup failed:",G)}return console.log(`[monitoring-retention] deleted ${Z} day-dir(s) across ${$.length} signal dir(s)`),{deleted:Z,dirs:$.length}}async function r06($,Z){await q$1.runStep(()=>o06(),{name:"monitoringRetention"})}function HC$(){if(NC$)return;NC$=!0;let $=q$1.registerWorkflow(r06,{name:"monitoringRetentionWorkflow"});q$1.registerScheduled($,{name:"monitoringRetentionWorkflow",crontab:t06,mode:p06.ExactlyOncePerIntervalWhenActive})}var t06="23 4 * * *",NC$=!1;var FC$=B(()=>{hG();I$1()});function UC$($){return async(Z,X)=>{let G=await $.db.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",X).where("member.organizationId","=",Z).executeTakeFirst();if(!G)return console.warn(`[automationContextFactory] User ${X} not found in org ${Z} \u2014 returning null`),null;let Q=await tU.create();Q.auth.user={id:X,role:G.role},Q.organization={id:G.orgId,slug:G.orgSlug,name:G.orgName};let Y=await cu0($.db,Z,G.role);return Q.boundAuth=uu0({auth:Q.authInstance,headers:new Headers,role:G.role,permissions:Y,userId:X}),Q.access=new MD(X,void 0,Q.boundAuth,G.role,"self"),u60(Q,{id:G.orgId,slug:G.orgSlug}),Q}}var wC$=B(()=>{kD();Gi()});function a06(){return{services:[{name:"Postgres",status:"pending",port:0},{name:"NATS",status:"pending",port:0}],migrationsStatus:"pending",serverUrl:null,logs:[]}}function e06(){for(let $ of s06)$()}function OC$($){let Z=[...M$1.logs,$];M$1={...M$1,logs:Z.length>500?Z.slice(-500):Z},e06()}function k$1(){return $16}var M$1,s06,$16=!1;var S$1=B(()=>{M$1=a06(),s06=new Set});import{EventEmitter as Z16}from"events";var V$1;var BC$=B(()=>{S$1();V$1=new Z16;V$1.on("request",($)=>{OC$($)})});function DC$(){return async($,Z)=>{let X=Date.now(),G=$.req.method,Q=$.req.path;if(Q==="/api/auth/get-session"||Q.includes("favicon")){await Z();return}let Y="",J=!1;if(Q.startsWith("/mcp")&&G==="POST"){J=!0;try{if($.req.header("Content-Type")?.includes("application/json")){let U=await $.req.raw.clone().json();if(U.method==="tools/call"&&U.params?.name){let w=Ug(U.params.name),O=U.params.arguments||{},D=Object.keys(O).map((E)=>Ug(E)),L=D.length>0?D.slice(0,3).join(",")+(D.length>3?"\u2026":""):"";Y=`${i6.tool}${w}${i6.dim}(${L})${i6.reset}`}else if(U.method)Y=`${i6.dim}${Ug(U.method)}${i6.reset}`}}catch{}}let K=Ug(Q);if(Q.startsWith("/mcp/conn_")){let H=Q.split("/")[2]??"";K=`/mcp/${i6.mcp}${Ug(H.slice(0,12))}\u2026${i6.reset}`}else if(Q==="/mcp")K=`${i6.mcp}/mcp${i6.reset}`;else if(Q==="/mcp/registry")K=`${i6.mcp}/mcp/registry${i6.reset}`;let W=G16(G),N=J?"\u25C0":"\u2190";if(!k$1())console.log(`${i6.dim}${N}${i6.reset} ${W}${G}${i6.reset} ${K}${Y?` ${Y}`:""}`);try{await Z()}finally{let H=Date.now()-X,F=$.res.status,U=X16(F),w=H<1000?`${H}ms`:`${(H/1000).toFixed(1)}s`,O=J?"\u25B6":"\u2192";if(!k$1())console.log(`${i6.dim}${O}${i6.reset} ${W}${G}${i6.reset} ${K}${Y?` ${Y}`:""} ${U}${F}${i6.reset} ${i6.duration}${w}${i6.reset}`);V$1.emit("request",{method:G,path:Ug(Q),status:F,duration:H,timestamp:new Date})}}}var i6,X16=($)=>{if($>=500)return i6.serverError;if($>=400)return i6.clientError;if($>=300)return i6.redirect;return i6.ok},G16=($)=>{return i6[$]||i6.reset},Ug=($)=>{return $.replace(/\r/g,"").replace(/\n/g,"").replace(/\x1b\[[0-9;]*m/g,"").replace(/[\x00-\x1f\x7f-\x9f]/g,"")};var LC$=B(()=>{S$1();BC$();i6={reset:"\x1B[0m",dim:"\x1B[2m",bold:"\x1B[1m",GET:"\x1B[36m",POST:"\x1B[33m",PUT:"\x1B[35m",DELETE:"\x1B[31m",ok:"\x1B[32m",redirect:"\x1B[36m",clientError:"\x1B[33m",serverError:"\x1B[31m",mcp:"\x1B[35m",tool:"\x1B[96m",duration:"\x1B[90m"}});import{createHmac as PC$}from"crypto";import{mkdir as Q16,readdir as Y16,rm as EC$,stat as AC$}from"fs/promises";import{join as _$1,relative as J16}from"path";import{z as D$}from"zod";function RC$($){let Z=$.replace(/[^a-zA-Z0-9_-]/g,"_");return _$1(K16,Z)}function IC$($){return $.replace(/^\/+/,"").replace(/\.\./g,"")}function C$1($,Z){let X=RC$($),G=IC$(Z);return _$1(X,G)}function W16($,Z,X,G){let Q=n0().encryptionKey||"dev-secret",Y=`${$}:${Z}:${X}:${G}`;return PC$("sha256",Q).update(Y).digest("hex")}function jC$($,Z,X,G,Q){let Y=Math.floor(Date.now()/1000)+G,J=W16(Z,X,Y,Q),K=new URL(`/api/dev-assets/${Z}/${IC$(X)}`,$);return K.searchParams.set("expires",Y.toString()),K.searchParams.set("signature",J),K.searchParams.set("method",Q),K.toString()}function qC$($,Z,X){let G=`${$}:${Z.getTime()}:${X}`;return`"${PC$("md5","etag").update(G).digest("hex")}"`}async function MC$($,Z,X,G,Q){try{let Y=await Y16($,{withFileTypes:!0});for(let J of Y){let K=_$1($,J.name),N=J16(Z,K).replace(/\\/g,"/");if(X&&!N.startsWith(X))continue;if(J.isDirectory())if(G){let H=N+"/";if(!X||H.startsWith(X)){if(!(X?N.slice(X.length):N).includes("/"))Q.commonPrefixes.add(H)}}else await MC$(K,Z,X,G,Q);else if(J.isFile()){if(G&&X){let H=N.slice(X.length);if(H.includes(G)){let F=H.indexOf(G),U=X+H.slice(0,F+1);Q.commonPrefixes.add(U);continue}}try{let H=await AC$(K);Q.objects.push({key:N,size:H.size,lastModified:H.mtime.toISOString(),etag:qC$(K,H.mtime,H.size)})}catch{}}}}catch{}}function kC$($,Z){let G=e($).id;return[{name:"LIST_OBJECTS",description:"List objects in the local assets directory with pagination support",inputSchema:D$.object({prefix:D$.string().optional(),maxKeys:D$.number().optional().default(1000),continuationToken:D$.string().optional(),delimiter:D$.string().optional()}),outputSchema:D$.object({objects:D$.array(D$.object({key:D$.string(),size:D$.number(),lastModified:D$.string(),etag:D$.string()})),nextContinuationToken:D$.string().optional(),isTruncated:D$.boolean(),commonPrefixes:D$.array(D$.string()).optional()}),handler:async(Q)=>{let Y=Q,J=Y.prefix||"",K=Y.maxKeys??1000,W=Y.delimiter,N=Y.continuationToken,H=RC$(G);await Q16(H,{recursive:!0});let F={objects:[],commonPrefixes:new Set};await MC$(H,H,J,W,F),F.objects.sort((L,E)=>L.key.localeCompare(E.key));let U=0;if(N){if(U=F.objects.findIndex((L)=>L.key>N),U===-1)U=F.objects.length}let w=F.objects.slice(U,U+K),O=U+K<F.objects.length,D=O?w[w.length-1]?.key:void 0;return{objects:w,isTruncated:O,nextContinuationToken:D,commonPrefixes:Array.from(F.commonPrefixes).sort()}}},{name:"GET_OBJECT_METADATA",description:"Get metadata for a file in the local assets directory",inputSchema:D$.object({key:D$.string()}),outputSchema:D$.object({contentType:D$.string().optional(),contentLength:D$.number(),lastModified:D$.string(),etag:D$.string(),metadata:D$.record(D$.string(),D$.string()).optional()}),handler:async(Q)=>{let Y=Q,J=C$1(G,Y.key),K=await AC$(J);return{contentType:M01(Y.key),contentLength:K.size,lastModified:K.mtime.toISOString(),etag:qC$(J,K.mtime,K.size)}}},{name:"GET_PRESIGNED_URL",description:"Generate a presigned URL for downloading a file from local storage",inputSchema:D$.object({key:D$.string(),expiresIn:D$.number().optional()}),outputSchema:D$.object({url:D$.string(),expiresIn:D$.number()}),handler:async(Q)=>{let Y=Q,J=Y.expiresIn??zC$;return{url:jC$(Z,G,Y.key,J,"GET"),expiresIn:J}}},{name:"PUT_PRESIGNED_URL",description:"Generate a presigned URL for uploading a file to local storage",inputSchema:D$.object({key:D$.string(),expiresIn:D$.number().optional(),contentType:D$.string().optional()}),outputSchema:D$.object({url:D$.string(),expiresIn:D$.number()}),handler:async(Q)=>{let Y=Q,J=Y.expiresIn??zC$;return{url:jC$(Z,G,Y.key,J,"PUT"),expiresIn:J}}},{name:"DELETE_OBJECT",description:"Delete a single file from local storage",inputSchema:D$.object({key:D$.string()}),outputSchema:D$.object({success:D$.boolean(),key:D$.string()}),handler:async(Q)=>{let Y=Q,J=C$1(G,Y.key);try{return await EC$(J),{success:!0,key:Y.key}}catch{return{success:!1,key:Y.key}}}},{name:"DELETE_OBJECTS",description:"Delete multiple files from local storage",inputSchema:D$.object({keys:D$.array(D$.string()).max(1000)}),outputSchema:D$.object({deleted:D$.array(D$.string()),errors:D$.array(D$.object({key:D$.string(),message:D$.string()}))}),handler:async(Q)=>{let Y=Q,J=[],K=[];return await Promise.all(Y.keys.map(async(W)=>{let N=C$1(G,W);try{await EC$(N),J.push(W)}catch(H){K.push({key:W,message:H instanceof Error?H.message:"Unknown error"})}})),{deleted:J,errors:K}}}]}async function v$1($,Z,X){let G=kC$(Z,X),Q=new FN({name:"dev-assets-mcp",version:"1.0.0"},{capabilities:{tools:{}},jsonSchemaValidator:K5});for(let J of G){let K="shape"in J.inputSchema?J.inputSchema.shape:D$.object({}).shape,W=J.outputSchema&&"shape"in J.outputSchema?J.outputSchema.shape:D$.object({}).shape;Q.registerTool(J.name,{description:J.description??"",inputSchema:K,outputSchema:W,annotations:J.annotations,_meta:J._meta},async(N)=>{try{let H=await J.handler(N);return{content:[{type:"text",text:JSON.stringify(H)}],structuredContent:H}}catch(H){return{content:[{type:"text",text:`Error: ${H.message}`}],isError:!0}}})}let Y=new MQ({enableJsonResponse:$.headers.get("Accept")?.includes("application/json")??!1});return await Q.connect(Y),iK(Q,Y,$,"mcp:dev-assets")}async function SC$($,Z,X,G){let Y=kC$(X,G).find((J)=>J.name===$);if(!Y)return{content:[{type:"text",text:`Tool not found: ${$}`}],isError:!0};try{let J=await Y.handler(Z);return{content:[{type:"text",text:JSON.stringify(J)}]}}catch(J){return{content:[{type:"text",text:J instanceof Error?J.message:String(J)}],isError:!0}}}var K16="./data/assets",zC$=3600,TC$,VC$;var CC$=B(()=>{f$();Xp();i8();hc();nx();jX();gL0();TC$=new L1;TC$.all("/",async($)=>{let Z=$.get("studioContext"),X=new URL($.req.url),G=`${X.protocol}//${X.host}`;return v$1($.req.raw,Z,G)});VC$=TC$});var _C$={};N4(_C$,{mountDevRoutes:()=>N16});function N16($,Z){$.all("/mcp/:connectionId{.*_dev-assets$}",Z,async(G)=>{let Q=G.get("studioContext"),Y=new URL(G.req.url),J=`${Y.protocol}//${Y.host}`;return v$1(G.req.raw,Q,J)}),$.all("/mcp/:connectionId{.*_dev-assets$}/call-tool/:toolName",Z,async(G)=>{let Q=G.get("studioContext"),Y=new URL(G.req.url),J=`${Y.protocol}//${Y.host}`,K=G.req.param("toolName");if(!K)return G.json({error:"Missing tool name"},400);let W=await G.req.json(),N=await SC$(K,W,Q,J);if(N.isError)return G.json(N.content,500);return G.json(N.content)}),$.use("/mcp/dev-assets",Z),$.route("/mcp/dev-assets",VC$);let X=new L1;X.use("*",P3({mountPath:"/api/dev-assets"})),X.route("/",yL0({orgFromPath:!1})),$.route("/api/dev-assets",X)}var vC$=B(()=>{i8();z01();gL0();CC$()});import{sql as H16}from"kysely";import{randomUUID as bC$}from"crypto";import{z as F16}from"zod";async function w16($){let Z=new Date().toISOString(),X=bC$(),G=x4.SELF($.organizationId),Q="registry.publish_request.created",Y={requestId:$.request.id,requestedId:$.request.requested_id,title:$.request.title,status:$.request.status,createdAt:$.request.created_at,requester:{name:$.request.requester_name,email:$.request.requester_email}};await $.db.insertInto("events").values({id:X,organization_id:$.organizationId,type:"registry.publish_request.created",source:G,specversion:"1.0",subject:$.request.id,time:Z,datacontenttype:"application/json",dataschema:null,data:JSON.stringify(Y),cron:null,status:"pending",attempts:0,last_error:null,next_retry_at:null,created_at:Z,updated_at:Z}).execute();let J=await $.db.selectFrom("event_subscriptions").select(["id"]).where("organization_id","=",$.organizationId).where("enabled","=",1).where("event_type","=","registry.publish_request.created").where((K)=>K.or([K("publisher","is",null),K("publisher","=",G)])).execute();if(J.length>0)await $.db.insertInto("event_deliveries").values(J.map((K)=>({id:bC$(),event_id:X,subscription_id:K.id,status:"pending",attempts:0,last_error:null,delivered_at:null,next_retry_at:null,created_at:Z}))).execute();try{await H16`SELECT
|
|
2722
2722
|
pg_notify('studio_events', ${X}),
|
|
2723
2723
|
pg_notify('mesh_events', ${X})
|
|
2724
|
-
`.execute($.db)}catch{}}async function O16($,Z){let G=(await $.selectFrom("organization").select(["id"]).where("id","=",Z).execute())[0];if(G?.id)return G.id;return(await $.selectFrom("organization").select(["id"]).where("slug","=",Z).execute())[0]?.id??null}async function B16($,Z){let X=await $.selectFrom("virtual_mcp_plugin_configs").innerJoin("connections","connections.id","virtual_mcp_plugin_configs.virtual_mcp_id").select(["virtual_mcp_plugin_configs.settings as settings"]).where("connections.organization_id","=",Z).where("virtual_mcp_plugin_configs.plugin_id","=",sV).execute();for(let G of X){let Q=G.settings,Y=typeof Q==="string"?(()=>{try{return JSON.parse(Q)}catch{return{}}})():Q??{};if(Y.acceptPublishRequests===!0){let J=Y.rateLimitWindow==="minute"?"minute":"hour",K=Y.rateLimitMax,W=typeof K==="number"&&Number.isFinite(K)&&K>=1?Math.floor(K):xC$;return{acceptPublishRequests:!0,requireApiToken:Y.requireApiToken===!0,rateLimitEnabled:Y.rateLimitEnabled===void 0?fC$:Y.rateLimitEnabled===!0,rateLimitWindow:J,rateLimitMax:W}}}return{acceptPublishRequests:!1,requireApiToken:!1,rateLimitEnabled:fC$,rateLimitWindow:U16,rateLimitMax:xC$}}async function D16($,Z,X){let G=X==="minute"?60000:3600000,Q=new Date(Date.now()-G).toISOString(),Y=await $.selectFrom("private_registry_publish_request").select((J)=>J.fn.countAll().as("count")).where("organization_id","=",Z).where("created_at",">=",Q).executeTakeFirst();return Number(Y?.count??0)}async function L16($,Z,X,G){let Q=await $.selectFrom("private_registry_item").select(["id","title"]).where("organization_id","=",Z).where((Y)=>Y.or([Y("id","=",X),Y("title","=",G)])).executeTakeFirst();return Q?{id:String(Q.id),title:String(Q.title)}:null}function yC$($){let{db:Z,db:X}=$,G=new tb(X),Q=new ob(X);return async(Y)=>{let J=Y.req.param("orgRef")??Y.req.param("org");if(!J)return Y.json({error:"Organization not found"},404);let K=await O16(Z,J);if(!K)return Y.json({error:"Organization not found"},404);let W=await B16(Z,K);if(!W.acceptPublishRequests)return Y.json({error:"Publish requests are not enabled for this registry."},403);if(W.requireApiToken){let w=Y.req.header("Authorization"),O=w?.startsWith("Bearer ")?w.slice(7).trim():null;if(!O)return Y.json({error:"API key required. Use Authorization: Bearer <key>"},401);if(!await Q.validate(K,O))return Y.json({error:"Invalid API key"},401)}if(W.rateLimitEnabled){if(await D16(X,K,W.rateLimitWindow)>=W.rateLimitMax)return Y.json({error:"Too many publish requests. Please try again later.",retryAfterSeconds:W.rateLimitWindow==="minute"?60:3600},429)}let N;try{N=await Y.req.json()}catch{return Y.json({error:"Invalid JSON body"},400)}let H=_T$.safeParse(N);if(!H.success)return Y.json({error:"Invalid publish request payload",details:F16.treeifyError(H.error)},400);let F=await L16(X,K,H.data.data.id,H.data.data.title);if(F)return Y.json({error:"A registry item with the same id or title already exists. Please use a different name/id.",conflict:F},409);let U=await G.createOrUpdate({organization_id:K,requested_id:H.data.data.id,title:H.data.data.title,description:H.data.data.description??null,_meta:H.data.data._meta,server:H.data.data.server,requester_name:H.data.requester?.name??null,requester_email:H.data.requester?.email??null});try{await w16({db:Z,organizationId:K,request:U})}catch(w){console.warn("[private-registry] failed to emit publish-request event:",w)}return x1.capture({distinctId:H.data.requester?.email??`org:${K}`,event:"registry_publish_request_submitted",groups:{organization:K},properties:{organization_id:K,request_id:U.id,requested_id:U.requested_id,title:H.data.data.title,requester_email:H.data.requester?.email??null}}),Y.json({id:U.id,requested_id:U.requested_id,status:U.status},201)}}var fC$=!0,U16="hour",xC$=100;var gC$=B(()=>{B6();O8();dy();Hy0();Fy0();s5()});var hC$={};N4(hC$,{createPublishRequestHandler:()=>yC$,createPublicMCPHandler:()=>gT$});var uC$=B(()=>{ly();gC$()});var tC$={};N4(tC$,{watchHandler:()=>pC$,resolveCorsOrigin:()=>nC$,isSsoExemptPath:()=>iC$,createApp:()=>S16});import{readFileSync as E16}from"fs";import{PrometheusSerializer as z16}from"@opentelemetry/exporter-prometheus";import{DBOS as wg}from"@dbos-inc/dbos-sdk";import{oAuthDiscoveryMetadata as R16,oAuthProtectedResourceMetadata as I16}from"better-auth/plugins";async function j16($){let Z=$.connect(),X;try{X=await Promise.race([Z,lC$(cC$)])}catch{return Z.then((G)=>G.release(!0)).catch(()=>{}),!1}try{return await Promise.race([X.query("SELECT 1"),lC$(cC$)]),X.release(),!0}catch{return X.release(!0),!1}}function lC$($){return new Promise((Z,X)=>setTimeout(()=>X(Error("pg health-check timeout")),$))}async function P16($,Z){let{items:X}=await $.storage.connections.list(Z,{where:{field:["connection_url"],operator:"like",value:`${V21}%`},limit:1}),G=X[0];if(!G?.configuration_state)return null;return G.configuration_state.project_locator}function A16($){let Z=new URLSearchParams;if($){let[X,G]=$.split("/");if(X)Z.set("workspace_hint",X);if(G)Z.set("project_hint",G)}else Z.set("auto_personal","true");return Z.set("force_new","true"),Z}function iC$($){return $.startsWith("/api/org-sso/")||$.startsWith("/api/auth/")||$.startsWith("/api/tools/management")||$.startsWith("/oauth-proxy/")||/^\/api\/[^/]+\/oauth-proxy\//.test($)||$.startsWith(`${Y01}/`)}function nC$($,{baseUrl:Z,requestOrigin:X}){let G;try{G=new URL($).hostname}catch{return null}if(G==="localhost"||G==="127.0.0.1")return $;let Q=Z??X;try{if(new URL(Q).origin===$)return $}catch{}return null}async function S16($={}){let Z=$.database??n8(),X=!1;t5.stop().catch((n)=>{console.error("[SSEHub] Error stopping previous broadcast (HMR cleanup):",n)});let G,Q,Y=new E$1,J,K,W,N=null;if($.disableNats)J=z$1(),G={get:async()=>null,set:async()=>{},invalidate:async()=>{},teardown:()=>{}},Q=new Gp,K={start:async()=>{},broadcast:()=>{},publishControlFrame:()=>{},stop:async()=>{}},W={init:async()=>{},pump:(n)=>{return(async()=>{let U0=n.getReader();try{while(!0){let{done:L0}=await U0.read();if(L0)break}}catch{}finally{U0.releaseLock()}})()},publishRawChunk:async()=>!1,publishDone:async()=>!1,createTailStream:async()=>null,purge:()=>{},teardown:()=>{}};else{N=tV$();let n=n0().natsCredsPath,U0;if(n)try{U0=E16(n,"utf8")}catch(R1){console.error(`[app] failed to read NATS_CREDS at ${n}; connecting anonymously`,R1)}N.init(n0().natsUrls,U0?{creds:U0}:void 0);let L0=zy0()?new Kf0({getJetStream:()=>N.getJetStream()}):null;L0?.init().catch(()=>{}),G=L0;let $1=new jt0({getJetStream:()=>N.getJetStream()});$1.init().catch(()=>{}),Q=$1,J=z$1({getConnection:()=>N.getConnection()}),K=new j$1({getConnection:()=>N.getConnection()}),W=new T$1({getConnection:()=>N.getConnection(),getJetStream:()=>N.getJetStream()}),X2$(N),N.onReady(()=>{L0?.init().catch((R1)=>{console.error("[McpListCache] Deferred init failed:",R1)}),$1.init().catch((R1)=>{console.error("[ConnectionCircuitStore] Deferred init failed:",R1)}),J.start(),Cm1(()=>N.getConnection()),W.init().catch((R1)=>{console.warn("[Decopilot] StreamBuffer init failed (late-join disabled):",R1)})})}if(Og)await Og();Wf0(G),Pt0(Q);let F={storage:new Xf(Z.db),sseHub:t5},U=new Ep0(F),w=new Md(Z.db),O=new R$1(w);O.start(),K.start((n)=>{Lw0(n),U.execute({type:"CANCEL",taskId:n}).catch((U0)=>{console.error("[Decopilot] CancelBroadcast execute failed:",U0)})}).catch((n)=>{console.error("[Decopilot] CancelBroadcast start failed:",n)}),N?.onReady(()=>{K.start().catch((n)=>{console.error("[CancelBroadcast] Deferred start failed:",n)})});let D=()=>N?.getConnection()??null;U01(D),N?.onReady(()=>U01(D)),W.init().catch((n)=>{console.warn("[Decopilot] StreamBuffer init failed, attach/late-join disabled:",n)}),Og=async()=>{await U.stopAll(),U.dispose(),O.dispose(),K.stop().catch(()=>{}),d2$(),W.teardown(),G?.teardown(),Y.teardown(),J.teardown(),_m1(),Q.teardown(),Wf0(null),Pt0(null)};let L=new L1;if(L.use("*",tV0({enabled:(n)=>Xv(n,"debug")==="1"})),L.use("*",nE0),L.use("/*",Bq1({origin:(n,U0)=>nC$(n,{baseUrl:n0().baseUrl,requestOrigin:new URL(U0.req.url).origin}),credentials:!0,allowMethods:["GET","POST","PUT","DELETE","OPTIONS"],allowHeaders:["Content-Type","Authorization","mcp-protocol-version"],exposeHeaders:["WWW-Authenticate"]})),L.use("*",async(n,U0)=>{if(await U0(),n.req.path.includes("/files/"))return;if(n.req.path.includes("/fs/")&&n.req.path.endsWith("/read"))return;n.header("X-Frame-Options","DENY"),n.header("Content-Security-Policy","frame-ancestors 'none'")}),!n0().noTui)L.use("*",DC$());L.use("*",async(n,U0)=>{if(await U0(),zg(n.req.path))return;if(n.res.status>=500){let $1=await n.res.clone().text();console.error(`[5xx Response] ${n.req.method} ${n.req.path} - ${n.res.status}:`,$1)}}),L.get(CZ.HEALTH,(n)=>{if(X)return n.json({status:"shutting_down"},503);return n.json({status:"ok"})}),L.get(CZ.HEALTH_LIVE,(n)=>{return n.json({status:"ok"})}),L.get(CZ.HEALTH_READY,async(n)=>{if(X)return n.json({status:"shutting_down"},503);let U0={};if(U0.postgres={status:await j16(Z.pool)?"up":"down"},N)U0.nats=N.isConnected()?{status:"up"}:{status:"down"};else U0.nats={status:"down"};let L0=U0.postgres.status==="up",$1=L0?200:503;return n.json({status:L0?"ready":"not_ready",services:U0},$1)}),L.get(CZ.METRICS,async(n)=>{try{let U0=await rE0.collect(),L0=T16.serialize(U0.resourceMetrics);return n.text(L0,200,{"Content-Type":"text/plain; version=0.0.4; charset=utf-8"})}catch(U0){return console.error("Failed to collect metrics:",U0),n.text("# Error collecting metrics",500)}}),L.get(`${CZ.DBOS_QUEUE_DEPTH_PREFIX}:queueName`,async(n)=>{let U0=n.req.param("queueName");if(!q16.has(U0))return n.json({error:`Unknown queue: ${U0}`},404);let L0=await wg.listQueuedWorkflows({queueName:U0,status:"ENQUEUED"});return n.json({queue_length:L0.length})}),L.get(CZ.HOSTED_RUN_PENDING,(n)=>{let{active:U0,pending:L0,max:$1}=tK$();return n.json({pending:L0,active:U0,max:$1})}),L.route("/api/config",UV$),L.route("/api/_reports",AV$),L.route("/api/_stripe",B$1),L.route("/report",jV$($.clientDir)),L.route("/api/auth/custom",T2$),L.route("/api/auth/desktop",q2$),L.all("/api/auth/admin/*",V2$),L.all("/api/auth/*",async(n)=>{return await L8.handler(n.req.raw)});let E=Oa1();E.use("/.well-known/oauth-protected-resource/mcp/:connectionId",$C),E.use("/mcp/:connectionId/.well-known/oauth-protected-resource",$C),L.route("/",E),L.get("/.well-known/oauth-protected-resource/api/:org/mcp/:connectionId",Qi),L.route("/",Ea1()),L.use("/oauth-proxy/:connectionId/*",$C),L.all("/oauth-proxy/:connectionId/*",dC$);let z=async(n)=>{let L0=await M16()(n.req.raw),$1=await L0.json();return Response.json($1,L0)};L.use("/mcp/:gateway?/:connectionId/.well-known/oauth-protected-resource/*",$C),L.get("/mcp/:gateway?/:connectionId/.well-known/oauth-protected-resource/*",z);let j=async(n)=>{let L0=await k16()(n.req.raw),$1=await L0.json();return Response.json($1,L0)};L.get("/.well-known/oauth-authorization-server/*/:gateway?/:connectionId?",j);let A=eI$({ttlMs:120000}),P=await er1({db:Z.db,auth:L8,encryption:{key:n0().encryptionKey},observability:{tracer:SH,meter:Q8},modelListCache:Y,providerKeyCache:J,memberRoleCache:A});tU.set(P);let I=new QN(n0().encryptionKey);TI1({db:Z.db,baseUrl:nX()});let V=a80(Z.db),k=new Ld(Z.db),_=UC$({db:Z.db});Bt0({storage:V,studioContextFactory:_}),Vp0({studioContextFactory:_,deps:{runRegistry:U,cancelBroadcast:K,streamBuffer:W,sseHub:t5}}),Tp0({dispatchRunFn:HK$,studioContextFactory:_,deps:{runRegistry:U,cancelBroadcast:K,streamBuffer:W,sseHub:t5}});let l=new Xf(Z.db),b=new CD(Z.db);_K$({getJetStream:()=>N?.getJetStream()??null,getJetStreamManager:async()=>{let n=N?.getConnection();return n?await mC$.jetstreamManager(n):null},messageParts:l.messageParts(),resolveRun:async(n)=>{let U0=await Z.db.selectFrom("threads").select(["organization_id","created_by","message_storage_version","status","run_fence_token","title"]).where("id","=",n).executeTakeFirst();return U0?{orgId:U0.organization_id,createdBy:U0.created_by,version:U0.message_storage_version??1,status:U0.status,runFenceToken:U0.run_fence_token,title:U0.title??null}:null},completeRunIfNotCompleted:async(n,U0)=>{let L0=await l.completeRunIfNotCompleted(n,U0);if(TE0(t5,U0,n,L0),L0)await gn(b,n,U0),gp0({contextFactory:_,taskBoard:b,threadId:n,orgId:U0});return L0},markRunRequiresAction:async(n,U0)=>{let L0=await l.requiresActionIfInProgress(n,U0);return TE0(t5,U0,n,L0),L0},markRunFailed:async(n,U0,L0,$1)=>{let R1=await l.markRunFailed(n,U0,L0,$1);if(TE0(t5,U0,n,R1),R1)await gn(b,n,U0),gp0({contextFactory:_,taskBoard:b,threadId:n,orgId:U0});return R1},clearSynthesizedError:async(n,U0)=>{await l.messageParts().replaceMessageParts(n,fw(n,U0),[])},persistTitle:(n,U0,L0)=>l.update(n,U0,{title:L0}),onTitleUpdated:async({runId:n,orgId:U0,title:L0})=>{let $1=await l.get(n,U0).catch(()=>null);t5.emit(U0,l3(n,$1?.status??"in_progress",{title:L0,virtualMcpId:$1?.virtual_mcp_id??void 0,createdBy:$1?.created_by,triggerId:$1?.trigger_id,branch:$1?.branch??null,createdAt:$1?.created_at,updatedAt:$1?.updated_at}))},bumpProgress:async({runId:n,orgId:U0})=>{await l.bumpProgress(n,U0)},recordCompleted:async({runId:n,orgId:U0,distinctId:L0,usage:$1})=>{x1.capture({distinctId:L0,event:"chat_message_completed",groups:{organization:U0},properties:{organization_id:U0,thread_id:n,transport:"projector",input_tokens:$1.inputTokens,output_tokens:$1.outputTokens,total_tokens:$1.totalTokens}})},recordFailed:async({runId:n,orgId:U0,distinctId:L0,reason:$1,kind:R1})=>{x1.capture({distinctId:L0,event:"chat_message_failed",groups:{organization:U0},properties:{organization_id:U0,thread_id:n,transport:"projector",error_category:R1,error_message:$1}})},purgeRun:async(n)=>{W.purge(n)}}),_3$({studioContextFactory:_,systemDatabaseUrl:hk1(n0().databaseUrl,n0().databasePgSsl),streamBuffer:W}),HC$(),RI1();let x=async(n,U0,L0)=>{let $1=await V.findById(n,U0);if(!$1)throw Error("Automation not found");return Et0({automationId:$1.id,organizationId:$1.organization_id,triggerId:null})},p=new iy(V,({automation:n,trigger:U0,contextMessages:L0,idempotencyKey:$1})=>Zp({automationId:n.id,organizationId:n.organization_id,triggerId:U0.id,contextMessages:L0},{idempotencyKey:$1})),d=[iY(),LC(),DW()];for(let n of d)qE0(n).then(()=>{}).catch((U0)=>console.error("[monitoring] Retention cleanup failed:",U0));let J0=()=>Z.db.deleteFrom("apikey").where("expiresAt","<",new Date).execute().then(()=>{}).catch((n)=>console.error("[auth] Expired API key cleanup failed:",n));J0(),setInterval(J0,86400000).unref(),L.use("*",async(n,U0)=>{if(mE0(n.req.path))return U0();let L0={measure:async(R1,N8)=>{eQ(n,R1);try{return await N8()}finally{ZQ(n,R1)}}},$1=await tU.create(n.req.raw,{timings:L0});$1.automationRunner=x,n.set("studioContext",$1);try{await U0()}finally{let R1=$1.pendingRevalidations;if(R1.length>0)Promise.race([Promise.allSettled(R1),w8(30000)]).catch((x0)=>console.error("[studio] revalidation cleanup error:",x0))}}),L.use("/api/:org/decopilot/*",ZC),L.use("/api/:org/v1/*",ZC),L.use("/api/:org/files/*",ZC),L.use("*",async(n,U0)=>{if(iC$(n.req.path))return U0();let L0=n.get("studioContext");if(!L0?.organization?.id||!L0?.auth?.user?.id)return U0();if(!(await L0.storage.orgSsoConfig.getByOrgId(L0.organization.id))?.enforced)return U0();if(!await L0.storage.orgSsoSessions.isValid(L0.auth.user.id,L0.organization.id))return n.json({error:"SSO authentication required for this organization"},403);return U0()});let O0=new L1;O0.use("*",P3({mountPath:"/api/org-sso"})),O0.route("/",ML0()),L.route("/api/org-sso",O0),L.get("/api/tools/management",(n)=>{return n.json({tools:rV0,grouped:MB()})}),L.use("/mcp/*",async(n,U0)=>{eQ(n,"mcp");try{return await U0()}finally{ZQ(n,"mcp")}});let T0=async(n,U0)=>{let L0=n.var.studioContext;if(!L0.auth.user?.id&&!L0.auth.apiKey?.id){let $1=new URL(n.req.url),R1=n.req.header("x-forwarded-proto")?.split(",")[0]?.trim(),N8=R1?`${R1}://${$1.host}`:$1.origin;return n.res=new Response(null,{status:401,headers:{"WWW-Authenticate":`Bearer realm="mcp",resource_metadata="${N8}${$1.pathname}/.well-known/oauth-protected-resource"`}})}return await U0()};if(L.use("/mcp/:connectionId?",T0),L.use("/mcp/gateway/:virtualMcpId?",T0),L.use("/mcp/virtual-mcp/:virtualMcpId?",T0),L.use("/mcp/self",T0),OJ()){let{mountDevRoutes:n}=(vC$(),_E0(_C$));n(L,T0)}let s=new L1;s.use("*",P3({mountPath:"/mcp"})),s.route("/",KO0()),L.route("/mcp",s);let o=new L1;o.use("*",P3({mountPath:"/mcp/self"})),o.route("/",wE0()),L.route("/mcp/self",o);let A0=new L1;A0.use("*",P3({mountPath:"/mcp"})),A0.route("/",HO0()),L.route("/mcp",A0),L.use("/api/:org/models/*",async(n,U0)=>{eQ(n,"llm_models");try{return await U0()}finally{ZQ(n,"llm_models")}});let X0=L01({cancelBroadcast:K,streamBuffer:W,runRegistry:U});L.route("/api",X0),L.use("/api/:org/files/*",ZC),L.route("/api",CV$);let E0=new L1;E0.use("*",P3({mountPath:"/api"})),E0.route("/",OE0()),L.route("/api",E0),L.route("/api",KV$);let u0=new L1;u0.use("*",P3({mountPath:"/api"})),u0.route("/",BE0({tokenStorage:k,automationEventDispatcher:p})),L.route("/api",u0);let V0=new zd(Z.db),g0=new L1;g0.use("*",P3({mountPath:"/api"})),g0.route("/",bL0()),L.route("/api",g0),L.route("/api/deco-sites",Uq$()),L.route("/api/deco-apps",ZV$());let Z0=new L1;Z0.use("*",P3({mountPath:"/api/deco-sites"})),Z0.route("/",xL0()),L.route("/api/deco-sites",Z0);let{createPublishRequestHandler:B0,createPublicMCPHandler:j0}=await Promise.resolve().then(() => (uC$(),hC$)),q0={db:Z.db,vault:{encrypt:(n)=>I.encrypt(n),decrypt:(n)=>I.decrypt(n)}},r=B0(q0),$0=j0(q0);L.use("/org/:orgRef/registry/publish-request",$C),L.post("/org/:orgRef/registry/publish-request",r),L.use("/org/:orgSlug/registry/*",$C),L.all("/org/:orgSlug/registry/*",$0),L.post("/api/:org/registry/publish-request",r),L.all("/api/:org/registry/*",$0),L.route(Y01,C2$());let M0=eS$({kvStorage:V0,runRegistry:U,streamBuffer:W,sseHub:t5,cancelBroadcast:K,tokenStorage:k,automationEventDispatcher:p,mountDevAssets:OJ(),mcpAuth:T0,oauthProxyHandler:dC$,watchHandler:pC$,betterAuthProtectedResourceHandler:z,getNatsConnection:()=>N?.getConnection()??null});return L.route("/api/:org",M0),L.notFound((n)=>{return n.json({error:"Not Found",path:n.req.path},404)}),L.onError(e2$),Object.assign(L,{markShuttingDown:()=>{X=!0},shutdown:async()=>{if(console.log("[shutdown] Stopping workers..."),await Promise.allSettled([t5.stop(),Og?Promise.resolve(Og()).finally(()=>{Og=null}):Promise.resolve()]),N)await N.drain().catch((n)=>console.error("[shutdown] NATS drain error:",n));console.log("[shutdown] Flushing telemetry..."),await gQ().catch((n)=>console.error("[shutdown] Telemetry flush error:",n)),console.log("[shutdown] Closing database..."),await ck1(Z).catch((n)=>console.error("[shutdown] Database close error:",n)),console.log("[shutdown] Cleanup complete.")},initDbos:async()=>{await wg.registerQueue(yQ,{partitionQueue:!0,concurrency:Ut0,minPollingIntervalMs:wt0}),await wg.registerQueue(mY,{partitionQueue:!0,concurrency:kp0}),await wg.registerQueue(BW,{partitionQueue:!0,concurrency:Ap0}),await wg.registerQueue(kH,{partitionQueue:!0,concurrency:C3$}),await P01(V),await Promise.allSettled(["automations-gate","automations-global"].map((n)=>wg.deleteQueue(n))),await Ot0(Z.pool),Dg1().catch((n)=>{console.error("[studio-pack-backfill] failed:",n)}),II1().catch((n)=>{console.error("[org-fs] public-sets boot sync kick failed:",n)})}})}var mC$,cC$=5000,Og=null,dC$=async($)=>{let Z=$.req.param("connectionId");if(!Z)return $.json({error:"Missing connectionId"},400);let X=$.req.path.split("/").filter(Boolean),G=X[X.length-1],Q=$.get("studioContext");if(!Q)Q=await tU.create($.req.raw),$.set("studioContext",Q);let Y=$.req.param("org")?Q.organization?.id:void 0,J=await Q.storage.connections.findById(Z,Y);if(!J?.connection_url)return $.json({error:"Connection not found"},404);let K=await hf(J.connection_url),W,N=new URL(J.connection_url),F=(typeof J.metadata?.oauthResource==="string"&&J.metadata.oauthResource.length>0?J.metadata.oauthResource:void 0)??J.connection_url;if(K.ok)W=(await K.json()).authorization_servers?.[0];if(!W)W=N.origin;let U=await Yi(W);if(!U.ok)return $.json({error:"Failed to get auth server metadata"},502);let w=await U.json(),O;if(G==="authorize")O=w.authorization_endpoint;else if(G==="token")O=w.token_endpoint;else if(G==="register")O=w.registration_endpoint;if(!O)return $.json({error:`Unknown OAuth endpoint: ${G}`},404);let D=new URL(O),L=new URL($.req.url);if(D.search=L.search,G==="authorize"){let l=D.searchParams.get("redirect_uri");if(l){let b=n0().baseUrl??L.origin;try{let x=new URL(l),p=new URL(b);if(!(x.origin===p.origin||x.hostname==="localhost"))return $.json({error:"invalid_request",error_description:"redirect_uri is not allowed"},400)}catch{return $.json({error:"invalid_request",error_description:"redirect_uri is malformed"},400)}D.searchParams.set("redirect_uri",l)}if(D.searchParams.has("resource"))D.searchParams.set("resource",F);if(C21(J.connection_url))try{let b=await P16(Q,J.organization_id),x=A16(b);for(let[p,d]of x)D.searchParams.set(p,d)}catch(b){console.warn("[oauth-proxy] Failed to get smart OAuth params, proceeding without:",b)}return $.redirect(D.toString(),302)}let E={Accept:$.req.header("Accept")||"application/json"},z=$.req.header("Content-Type");if(z)E["Content-Type"]=z;let j=$.req.header("Authorization");if(j)E.Authorization=j;let A,P=null,I=null;if($.req.method!=="GET"&&$.req.method!=="HEAD")if(G==="token"&&z?.includes("application/x-www-form-urlencoded")){if(j?.toLowerCase().startsWith("basic "))try{let d=atob(j.slice(6).trim()),J0=d.indexOf(":");if(J0!==-1){let O0=decodeURIComponent(d.slice(0,J0)),T0=decodeURIComponent(d.slice(J0+1));P=O0||null,I=T0||null}}catch{}let l=await $.req.formData();if(l.has("resource"))l.set("resource",F);let b=l.get("client_id"),x=l.get("client_secret");if(typeof b==="string"&&b)P=b;if(typeof x==="string"&&x)I=x;let p=new URLSearchParams;for(let[d,J0]of l.entries())p.append(d,J0.toString());A=p.toString()}else if(G==="register"&&z?.toLowerCase().includes("application/json")){let l=await Q.db.selectFrom("organization").select(["id","slug","name"]).where("id","=",J.organization_id).executeTakeFirst(),b=await $.req.text(),x={};try{x=b?JSON.parse(b):{}}catch{A=b}let p=typeof x==="object"&&x!==null&&!Array.isArray(x);if(A===void 0&&!p)A=b;if(A===void 0){let d=x,J0=d.metadata&&typeof d.metadata==="object"?d.metadata:{};d.metadata={...J0,organization_id:J.organization_id,...l?.slug?{organization_slug:l.slug}:{},...l?.name?{organization_name:l.name}:{}},A=JSON.stringify(d),E["Content-Type"]="application/json"}}else A=$.req.raw.body??void 0;let V=await fetch(D.toString(),{method:$.req.method,headers:E,body:A,duplex:"half",redirect:"manual"}),k=new Headers,_=["connection","keep-alive","transfer-encoding","content-encoding","content-length"];for(let[l,b]of V.headers.entries())if(!_.includes(l.toLowerCase()))k.set(l,b);if(G==="token"&&V.ok){let l=await V.text();try{let b=JSON.parse(l);if(typeof b.access_token==="string"&&b.access_token){let x=typeof b.expires_in==="number"?new Date(Date.now()+b.expires_in*1000):null,p=null;try{p=await uf(J.connection_url)??O}catch{p=O}let d={connectionId:Z,accessToken:b.access_token,refreshToken:typeof b.refresh_token==="string"?b.refresh_token:null,scope:typeof b.scope==="string"?b.scope:null,expiresAt:x,clientId:P,clientSecret:I,tokenEndpoint:p};await new F5(Q.db,Q.vault).upsert(d)}}catch(b){console.error("[oauth-proxy] failed to persist downstream token:",b)}return new Response(l,{status:V.status,statusText:V.statusText,headers:k})}return new Response(V.body,{status:V.status,statusText:V.statusText,headers:k})},pC$=async($)=>{let Z=$.var.studioContext;if(!(Z.auth.user?.id??Z.auth.apiKey?.userId))return $.json({error:"Unauthorized"},401);let G=Z.organization?.id;if(!G)return $.json({error:"organization id missing"},400);let Q=$.req.query("types"),Y=Q?Q.split(",").map((K)=>K.trim()).filter(Boolean):null,J=crypto.randomUUID();return qH($,async(K)=>{if(await K.writeSSE({event:"connected",data:JSON.stringify({listenerId:J,organizationId:G,typePatterns:Y,connectedAt:new Date().toISOString()})}),!t5.add({id:J,organizationId:G,typePatterns:Y?.length?Y:null,push:(H)=>{K.writeSSE({id:H.id,event:H.type,data:JSON.stringify(H)}).catch(()=>{t5.remove(G,J)})}})){await K.writeSSE({event:"error",data:JSON.stringify({error:"Too many connections",message:"SSE connection limit reached. Try again later."})});return}let N=setInterval(()=>{K.writeSSE({event:"keepalive",data:""}).catch(()=>{clearInterval(N)})},30000);await new Promise((H)=>{K.onAbort(()=>{clearInterval(N),t5.remove(G,J),H()})})})},T16,q16,M16=()=>I16(L8),k16=()=>R16(L8);var oC$=B(()=>{L5();f$();qI1();wZ();e_();O8();i8();k00();Dq1();oV0();AY();Gi();ae0();XY();G5();B6();Q01();M2$();_2$();N01();a2$();E01();pJ();c60();z01();$q$();j01();$V$();I01();XV$();WO0();Ji();WV$();FO0();o11();wV$();PV$();TV$();kV$();_V$();t11();n11();Wo();Wc();oV$();YQ();z40();Td();Tt0();rV$();sV$();$C$();w01();JC$();zp0();KC$();vy0();Vd();bX();up0();gy0();FC$();d$0();I$1();hG();A01();DV();jp0();Dp0();d$0();_w0();$y0();Zy0();wC$();Gv();LC$();Ng();ae0();Rw0();Ew0();mC$=M(CO(),1);T16=new z16,q16=new Set([yQ,mY,BW,kH])});var eC$={};N4(eC$,{resolveClientDir:()=>x16,resolveAssetPathWithTraversalCheck:()=>sC$,isPathWithinDirectory:()=>aC$,createAssetHandler:()=>y16});import{resolve as st,dirname as V16,join as C16,extname as _16,basename as v16,sep as rC$}from"path";function b16($,Z){if($===Z||v16($)==="index.html")return{"Cache-Control":"no-cache"};if($.includes(`${rC$}assets${rC$}`))return{"Cache-Control":"public, max-age=31536000, immutable"};return{}}function aC$($,Z){let X=st(Z),G=st($);return G===X||G.startsWith(X+"/")}function sC$({requestPath:$,clientDir:Z}){let X=$.startsWith("/")?$.slice(1):$,G=st(Z,X);if(!aC$(G,Z))return null;return G}function x16($,Z="../client"){let X=new URL($),G=V16(X.pathname);return st(G,Z)}function y16($={}){let{env:Z="production",clientDir:X=f16,isServerPath:G=()=>!1}=$;if(Z==="development")return async function(Y){return null};return async function(Y){if(Y.method!=="GET")return null;let J=new URL(Y.url),K;try{K=decodeURIComponent(J.pathname)}catch{return null}if(G(K))return null;let W=sC$({requestPath:K,clientDir:X});if(!W)return null;let N=C16(W,"index.html"),H=st(X,"index.html"),F=Y.headers.get("accept"),w=F?.includes("text/html")||F?.includes("*/*")&&["",".html"].includes(_16(W))?[N,H]:[];for(let O of[W,...w])try{let D=Bun.file(O);if(await D.exists())return new Response(D,{headers:b16(O,H)})}catch{}if(K.includes("/assets/"))return new Response("Not Found",{status:404,headers:{"Cache-Control":"no-store"}});return null}}var f16="./dist/client";var $_$=()=>{};var Z_$={};N4(Z_$,{tryUpgradePreviewWs:()=>m16,tryHandlePreviewHttp:()=>d16,previewWebSocketHandler:()=>i16,parsePreviewBaseDomain:()=>l16,isPreviewWsData:()=>ME0,extractHandleFromHost:()=>b$1});function u16($){if($.method!=="GET")return!1;return($.headers.get("accept")??"").includes("text/html")}function c16(){return new Response(h16,{status:503,headers:{"content-type":"text/html; charset=utf-8","cache-control":"no-store","retry-after":"1","access-control-allow-origin":"*"}})}function l16($){if(!$||$.trim()==="")return null;let Z=$.includes("{handle}")?$.replace("{handle}","__handle__"):$,X;try{X=new URL(Z)}catch{return null}let G=X.hostname;if($.includes("{handle}")){let Q=G.indexOf(".");if(Q<=0||Q===G.length-1)return null;return G.slice(Q+1)}return G}function b$1($,Z){if(!$||!Z)return null;let X=$.indexOf(":"),G=(X>=0?$.slice(0,X):$).toLowerCase(),Y=`.${Z.toLowerCase().replace(/^\.+|\.+$/g,"")}`;if(!G.endsWith(Y))return null;let J=G.slice(0,G.length-Y.length);if(!J||J.includes("."))return null;return J}async function d16($,Z){let X=b$1($.headers.get("host"),Z.baseDomain);if(!X)return null;let G=await Z.getRunner();if(!G)return $o(503,"preview proxy not configured");let Q=await G.proxyPreviewRequest(X,$);if(Q.headers.get(XV)&&u16($))return c16();return Q.headers.delete(XV),Q}function $o($,Z){return new Response(JSON.stringify({error:Z}),{status:$,headers:{"content-type":"application/json","access-control-allow-origin":"*"}})}function ME0($){return typeof $==="object"&&$!==null&&$.kind==="preview"}async function m16($,Z,X){if(($.headers.get("upgrade")??"").toLowerCase()!=="websocket")return null;let G=b$1($.headers.get("host"),X.baseDomain);if(!G)return null;let Q=await X.getRunner();if(!Q)return $o(503,"preview proxy not configured");let Y=await Q.resolvePreviewUpstreamUrl(G);if(!Y)return $o(404,"sandbox not found");let J=new URL($.url);if(J.pathname.startsWith("/_sandbox")||J.pathname.startsWith("/_decopilot_vm"))return $o(404,"not found");let K=`${Y.replace(/^http/,"ws")}${J.pathname}${J.search}`,W=$.headers.get("sec-websocket-protocol"),N=W?W.split(",").map((U)=>U.trim()).filter(Boolean):[],H={kind:"preview",upstreamUrl:K,upstreamProtocols:N,pending:[],upstream:null,closed:!1};if(!Z.upgrade($,{data:H}))return $o(426,"upgrade failed");return}function et($,Z,X,G){if(Z.closed)return;Z.closed=!0;try{$.close(X,G)}catch{}try{Z.upstream?.close()}catch{}}var g16=256,h16='<!DOCTYPE html><html><head><meta charset="utf-8"><title>Connecting\u2026</title><style>body{font-family:system-ui,sans-serif;display:flex;align-items:center;justify-content:center;min-height:100vh;margin:0;background:#fafafa;color:#555}div{text-align:center;max-width:420px;padding:24px}h3{margin:0 0 8px}p{margin:0;font-size:14px;color:#999;line-height:1.5}</style></head><body><div><h3>Connecting to sandbox\u2026</h3><p>Waiting for the sandbox to come online. This page refreshes automatically.</p></div><script>setTimeout(function(){window.location.reload()},1500)</script></body></html>',i16;var X_$=B(()=>{Zn0();i16={open($){let Z=$.data;if(!ME0(Z))return;let X;try{X=Z.upstreamProtocols.length>0?new WebSocket(Z.upstreamUrl,Z.upstreamProtocols):new WebSocket(Z.upstreamUrl)}catch(G){console.warn(`[preview-ws] failed to dial upstream ${Z.upstreamUrl}: ${G instanceof Error?G.message:String(G)}`),et($,Z,1011,"upstream connect failed");return}X.binaryType="arraybuffer",Z.upstream=X,X.addEventListener("open",()=>{while(Z.pending.length>0){let G=Z.pending.shift();if(G!==void 0)X.send(G)}}),X.addEventListener("message",(G)=>{if(Z.closed)return;$.send(G.data)}),X.addEventListener("close",(G)=>{et($,Z,G.code||1000,G.reason||"")}),X.addEventListener("error",()=>{et($,Z,1011,"upstream error")})},message($,Z){let X=$.data;if(!ME0(X))return;let G=X.upstream;if(G&&G.readyState===WebSocket.OPEN){G.send(Z);return}if(X.pending.length>=g16){et($,X,1011,"preview ws backlog overflow");return}X.pending.push(Z)},close($){let Z=$.data;if(!ME0(Z))return;et($,Z,1000,"")}}});var J_$={};N4(J_$,{printBanner:()=>p16,bannerLines:()=>Y_$,BANNER_LINES:()=>G_$,BANNER_GRADIENT:()=>Q_$});function n16($){let Z=Number.parseInt($.slice(1),16);return[Z>>16&255,Z>>8&255,Z&255]}function Y_$($){let Z=G_$.map((X,G)=>{let[Q,Y,J]=n16(Q_$[G]);return`\x1B[38;2;${Q};${Y};${J}m${X}\x1B[39m`});if($!==void 0)Z.push(`\x1B[2m v${$}\x1B[22m`);return Z}function p16($){console.log("");for(let Z of Y_$($))console.log(Z);console.log("")}var G_$,Q_$;var K_$=B(()=>{G_$=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588 ","\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 "," \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2588 \u2591 \u2588\u2588\u2588 \u2591\u2591\u2591 \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2591\u2591\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591 \u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 "," \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591 ","\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591 "],Q_$=["#00ff64","#00ee5e","#00dc56","#00c84e","#00b444","#00a03c","#008832","#006e28"]});L5();var i$1="7";function n$1($){return{name:"decocms",systemDatabaseUrl:$.systemDatabaseUrl,systemDatabaseSchemaName:"dbos",systemDatabasePoolSize:$.poolSize,runAdminServer:!1,executorID:$.executorID,applicationVersion:i$1,...$.listenQueues!==void 0?{listenQueues:$.listenQueues}:{}}}f$();fE0();G5();function Tv$(){let $=(process.env.BUN_OPTIONS??"").split(/\s+/).filter(Boolean);return[...process.argv.slice(1),...$]}function eE0($,Z){for(let X=0;X<$.length;X++){let G=$[X];if(G===void 0)continue;if(G===Z)return $[X+1];if(G.startsWith(`${Z}=`))return G.slice(Z.length+1)}return}function k81(){let $=Tv$();if($.includes("--cpu-prof")){console.log(JSON.stringify({msg:"cpu-profiling-active",dir:eE0($,"--cpu-prof-dir")??process.cwd(),name:eE0($,"--cpu-prof-name"),markdown:$.includes("--cpu-prof-md"),intervalUs:Number(eE0($,"--cpu-prof-interval")??1000),note:"profile is written on process exit"}));return}if(process.env.CPU_PROFILE)console.warn(JSON.stringify({msg:"cpu-profiling-requested-but-inactive",hint:'CPU profiling is a Bun launch flag. Set BUN_OPTIONS="--cpu-prof --cpu-prof-md --cpu-prof-dir=/tmp" before starting the process.'}))}Xz0();var Fo;function y81(){if(process.env.HEAP_WATCH!=="1")return()=>{};let $=Number(process.env.HEAP_WATCH_INTERVAL_MS??60000),Z=async()=>{let X=EO();if(!X)return;let G={};try{let{heapStats:Q}=await import("bun:jsc"),Y=Q(),J=Object.entries(Y.objectTypeCounts).sort((K,W)=>W[1]-K[1]).slice(0,20);G={objectCount:Y.objectCount,heapSize:Y.heapSize,top:Object.fromEntries(J)}}catch{}console.log(JSON.stringify({msg:"heap-watch",ts:new Date().toISOString(),uptimeS:Math.round(process.uptime()),rss:X.rss,heapUsed:X.heapUsed,heapTotal:X.heapTotal,external:X.external,arrayBuffers:X.arrayBuffers,...G}))};return Z().catch(()=>{}),Fo=setInterval(()=>void Z().catch(()=>{}),$),Fo.unref?.(),process.on("SIGUSR2",()=>{try{let X=Bun.generateHeapSnapshot("v8"),G=typeof X==="string"?X:JSON.stringify(X),Q=`/tmp/heap-${process.pid}-${Date.now()}.heapsnapshot`;Bun.write(Q,G),console.log(JSON.stringify({msg:"heap-snapshot-written",path:Q}))}catch(X){console.error("[heap-watch] snapshot failed:",X)}}),()=>{if(Fo)clearInterval(Fo)}}import*as qv$ from"bun:jsc";var{startSamplingProfiler:Mv$,samplingProfilerStackTraces:kv$}=qv$;function g81(){if(process.env.STALL_WATCHDOG!=="1")return()=>{};let $=Number(process.env.STALL_WATCHDOG_MS??100),Z=Number(process.env.STALL_WATCHDOG_TICK_MS??50);try{Mv$()}catch(Y){return console.error("[stall-watchdog] failed to start sampling profiler:",Y),()=>{}}let X,G=performance.now()+Z,Q=()=>{let Y=performance.now(),J=Y-G;G=Y+Z;let K=[];try{K=kv$()?.traces??[]}catch{}if(J>$&&K.length>0){let W=new Map;for(let H of K){let F=H.frames.find((O)=>O.sourceURL&&!/Unknown Executable/.test(O.category??""))??H.frames[0];if(!F)continue;let U=(F.sourceURL??"?").replace(/^.*\/node_modules\//,"node_modules/"),w=`${F.name??"?"} @ ${U}:${F.line??"?"}`;W.set(w,(W.get(w)??0)+1)}let N=[...W.entries()].sort((H,F)=>F[1]-H[1]).slice(0,8).map(([H,F])=>({frame:H,count:F}));console.warn(JSON.stringify({msg:"stall-stack",ts:new Date().toISOString(),lagMs:Math.round(J),samplesInWindow:K.length,top:N}))}X=setTimeout(Q,Z),X.unref?.()};return X=setTimeout(Q,Z),X.unref?.(),()=>{if(X)clearTimeout(X)}}function h81(){k81();let $=[y81(),x81(),g81()];return()=>{for(let Z of $)Z()}}import{existsSync as Z$6}from"fs";var dY=n0();I81();var{DBOS:Zo,DBOSClient:t16}=await import("@dbos-inc/dbos-sdk");function U_$($,Z){if(!Z)return $;let X=new URL($);if(!X.searchParams.has("sslmode"))X.searchParams.set("sslmode","verify-full");return X.toString()}var o16=[yQ,mY,BW,kH],r16=dY.dispatchRole==="worker"?o16:dY.dispatchRole==="api"?[]:void 0;Zo.setConfig(n$1({systemDatabaseUrl:U_$(dY.databaseUrl,dY.databasePgSsl),poolSize:dY.dbosPoolSize,executorID:dY.podName,listenQueues:r16}));var{createApp:a16}=await Promise.resolve().then(() => (oC$(),tC$)),{isServerPath:s16}=await Promise.resolve().then(() => (Wo(),W81)),{createAssetHandler:e16,resolveClientDir:w_$}=await Promise.resolve().then(() => ($_$(),eC$)),$$6=dY.port,W_$=w_$(import.meta.url,"../client"),O_$=Z$6(W_$)?W_$:w_$(import.meta.url,"../dist/client"),X$6=e16({clientDir:O_$,isServerPath:s16}),G$6={"X-Frame-Options":"DENY","Content-Security-Policy":"frame-ancestors 'none'"};function Q$6($){let Z=new Headers($.headers);for(let[X,G]of Object.entries(G$6))Z.set(X,G);return new Response($.body,{status:$.status,statusText:$.statusText,headers:Z})}var{parsePreviewBaseDomain:Y$6,tryHandlePreviewHttp:J$6,tryUpgradePreviewWs:K$6,previewWebSocketHandler:f$1,isPreviewWsData:x$1}=await Promise.resolve().then(() => (X_$(),Z_$)),{getOrInitSharedRunner:W$6}=await Promise.resolve().then(() => (gU0(),_Q$)),B_$=Y$6(process.env.STUDIO_SANDBOX_PREVIEW_URL_PATTERN),N_$={baseDomain:B_$??"",getRunner:W$6},kE0=await a16({clientDir:O_$}),y$1=process.env.DBOS_CONDUCTOR_KEY?.trim(),H_$=process.env.DBOS_CONDUCTOR_URL?.trim();await Zo.launch({...y$1?{conductorKey:y$1}:{},...y$1&&H_$?{conductorURL:H_$}:{}});console.log(`[dbos] application version: ${Zo.applicationVersion}`);var g$1=5,h$1=0;await gG(async()=>{h$1++;try{return await kE0.initDbos()}catch($){let Z=h$1>=g$1?"giving up":"retrying";throw console.warn(`[dbos] initDbos attempt ${h$1}/${g$1} failed, ${Z}`,$),$}},{maxAttempts:g$1,minTimeout:1000,maxTimeout:1e4,jitter:0.5});if(!dY.isCli){let{bannerLines:$}=await Promise.resolve().then(() => (K_$(),J_$));console.log("");for(let Z of $())console.log(Z)}var N$6=Bun.serve({idleTimeout:0,port:$$6,hostname:"0.0.0.0",fetch:async($,Z)=>{if(B_$){let G=await K$6($,Z,N_$);if(G===void 0)return;if(G)return G;let Q=await J$6($,N_$);if(Q)return Q}let X=await X$6($);if(X)return Q$6(X);return kE0.fetch($,{server:Z})},websocket:{open($){if(x$1($.data))f$1.open($)},message($,Z){if(x$1($.data))f$1.message($,Z)},close($){if(x$1($.data))f$1.close($)}},development:!1}),H$6=h81();if(dY.localMode)Promise.resolve().then(() => (WV(),$w0)).then(async({seedLocalMode:$,markSeedComplete:Z})=>{try{let X=await $()}catch(X){console.error("Failed to seed local mode:",X)}finally{Z()}}).catch(async($)=>{console.error("Failed to load local-mode module:",$);try{let{markSeedComplete:Z}=await Promise.resolve().then(() => (WV(),$w0));Z()}catch{}});var F_$=!1;async function F$6($){let Z;try{Z=await t16.create({systemDatabaseUrl:U_$(dY.databaseUrl,dY.databasePgSsl),systemDatabaseSchemaName:"dbos"});let X=await Z.listWorkflows({status:"PENDING",queueName:mY,executorId:$,loadInput:!1,loadOutput:!1});if(X.length===0){console.log(`[shutdown] no in-flight thread-gate gates to hand off (executor ${$})`);return}let G=X.map((Q)=>Q.workflowID);await Z.resumeWorkflows(G,{queueName:mY}),console.log(`[shutdown] re-enqueued ${G.length} in-flight thread-gate gate(s) for re-adoption by a live executor (from ${$}):`,G)}catch(X){console.error("[shutdown] thread-gate handoff failed:",X)}finally{await Z?.destroy().catch(()=>{})}}async function SE0($){if(F_$)return;F_$=!0,console.log(`
|
|
2724
|
+
`.execute($.db)}catch{}}async function O16($,Z){let G=(await $.selectFrom("organization").select(["id"]).where("id","=",Z).execute())[0];if(G?.id)return G.id;return(await $.selectFrom("organization").select(["id"]).where("slug","=",Z).execute())[0]?.id??null}async function B16($,Z){let X=await $.selectFrom("virtual_mcp_plugin_configs").innerJoin("connections","connections.id","virtual_mcp_plugin_configs.virtual_mcp_id").select(["virtual_mcp_plugin_configs.settings as settings"]).where("connections.organization_id","=",Z).where("virtual_mcp_plugin_configs.plugin_id","=",sV).execute();for(let G of X){let Q=G.settings,Y=typeof Q==="string"?(()=>{try{return JSON.parse(Q)}catch{return{}}})():Q??{};if(Y.acceptPublishRequests===!0){let J=Y.rateLimitWindow==="minute"?"minute":"hour",K=Y.rateLimitMax,W=typeof K==="number"&&Number.isFinite(K)&&K>=1?Math.floor(K):xC$;return{acceptPublishRequests:!0,requireApiToken:Y.requireApiToken===!0,rateLimitEnabled:Y.rateLimitEnabled===void 0?fC$:Y.rateLimitEnabled===!0,rateLimitWindow:J,rateLimitMax:W}}}return{acceptPublishRequests:!1,requireApiToken:!1,rateLimitEnabled:fC$,rateLimitWindow:U16,rateLimitMax:xC$}}async function D16($,Z,X){let G=X==="minute"?60000:3600000,Q=new Date(Date.now()-G).toISOString(),Y=await $.selectFrom("private_registry_publish_request").select((J)=>J.fn.countAll().as("count")).where("organization_id","=",Z).where("created_at",">=",Q).executeTakeFirst();return Number(Y?.count??0)}async function L16($,Z,X,G){let Q=await $.selectFrom("private_registry_item").select(["id","title"]).where("organization_id","=",Z).where((Y)=>Y.or([Y("id","=",X),Y("title","=",G)])).executeTakeFirst();return Q?{id:String(Q.id),title:String(Q.title)}:null}function yC$($){let{db:Z,db:X}=$,G=new tb(X),Q=new ob(X);return async(Y)=>{let J=Y.req.param("orgRef")??Y.req.param("org");if(!J)return Y.json({error:"Organization not found"},404);let K=await O16(Z,J);if(!K)return Y.json({error:"Organization not found"},404);let W=await B16(Z,K);if(!W.acceptPublishRequests)return Y.json({error:"Publish requests are not enabled for this registry."},403);if(W.requireApiToken){let w=Y.req.header("Authorization"),O=w?.startsWith("Bearer ")?w.slice(7).trim():null;if(!O)return Y.json({error:"API key required. Use Authorization: Bearer <key>"},401);if(!await Q.validate(K,O))return Y.json({error:"Invalid API key"},401)}if(W.rateLimitEnabled){if(await D16(X,K,W.rateLimitWindow)>=W.rateLimitMax)return Y.json({error:"Too many publish requests. Please try again later.",retryAfterSeconds:W.rateLimitWindow==="minute"?60:3600},429)}let N;try{N=await Y.req.json()}catch{return Y.json({error:"Invalid JSON body"},400)}let H=_T$.safeParse(N);if(!H.success)return Y.json({error:"Invalid publish request payload",details:F16.treeifyError(H.error)},400);let F=await L16(X,K,H.data.data.id,H.data.data.title);if(F)return Y.json({error:"A registry item with the same id or title already exists. Please use a different name/id.",conflict:F},409);let U=await G.createOrUpdate({organization_id:K,requested_id:H.data.data.id,title:H.data.data.title,description:H.data.data.description??null,_meta:H.data.data._meta,server:H.data.data.server,requester_name:H.data.requester?.name??null,requester_email:H.data.requester?.email??null});try{await w16({db:Z,organizationId:K,request:U})}catch(w){console.warn("[private-registry] failed to emit publish-request event:",w)}return x1.capture({distinctId:H.data.requester?.email??`org:${K}`,event:"registry_publish_request_submitted",groups:{organization:K},properties:{organization_id:K,request_id:U.id,requested_id:U.requested_id,title:H.data.data.title,requester_email:H.data.requester?.email??null}}),Y.json({id:U.id,requested_id:U.requested_id,status:U.status},201)}}var fC$=!0,U16="hour",xC$=100;var gC$=B(()=>{B6();O8();dy();Hy0();Fy0();s5()});var hC$={};N4(hC$,{createPublishRequestHandler:()=>yC$,createPublicMCPHandler:()=>gT$});var uC$=B(()=>{ly();gC$()});var tC$={};N4(tC$,{watchHandler:()=>pC$,resolveCorsOrigin:()=>nC$,isSsoExemptPath:()=>iC$,createApp:()=>S16});import{readFileSync as E16}from"fs";import{PrometheusSerializer as z16}from"@opentelemetry/exporter-prometheus";import{DBOS as wg}from"@dbos-inc/dbos-sdk";import{oAuthDiscoveryMetadata as R16,oAuthProtectedResourceMetadata as I16}from"better-auth/plugins";async function j16($){let Z=$.connect(),X;try{X=await Promise.race([Z,lC$(cC$)])}catch{return Z.then((G)=>G.release(!0)).catch(()=>{}),!1}try{return await Promise.race([X.query("SELECT 1"),lC$(cC$)]),X.release(),!0}catch{return X.release(!0),!1}}function lC$($){return new Promise((Z,X)=>setTimeout(()=>X(Error("pg health-check timeout")),$))}async function P16($,Z){let{items:X}=await $.storage.connections.list(Z,{where:{field:["connection_url"],operator:"like",value:`${V21}%`},limit:1}),G=X[0];if(!G?.configuration_state)return null;return G.configuration_state.project_locator}function A16($){let Z=new URLSearchParams;if($){let[X,G]=$.split("/");if(X)Z.set("workspace_hint",X);if(G)Z.set("project_hint",G)}else Z.set("auto_personal","true");return Z.set("force_new","true"),Z}function iC$($){return $.startsWith("/api/org-sso/")||$.startsWith("/api/auth/")||$.startsWith("/api/tools/management")||$.startsWith("/oauth-proxy/")||/^\/api\/[^/]+\/oauth-proxy\//.test($)||$.startsWith(`${Y01}/`)}function nC$($,{baseUrl:Z,requestOrigin:X}){let G;try{G=new URL($).hostname}catch{return null}if(G==="localhost"||G==="127.0.0.1")return $;let Q=Z??X;try{if(new URL(Q).origin===$)return $}catch{}return null}async function S16($={}){let Z=$.database??n8(),X=!1;t5.stop().catch((n)=>{console.error("[SSEHub] Error stopping previous broadcast (HMR cleanup):",n)});let G,Q,Y=new E$1,J,K,W,N=null;if($.disableNats)J=z$1(),G={get:async()=>null,set:async()=>{},invalidate:async()=>{},teardown:()=>{}},Q=new Gp,K={start:async()=>{},broadcast:()=>{},publishControlFrame:()=>{},stop:async()=>{}},W={init:async()=>{},pump:(n)=>{return(async()=>{let U0=n.getReader();try{while(!0){let{done:L0}=await U0.read();if(L0)break}}catch{}finally{U0.releaseLock()}})()},publishRawChunk:async()=>!1,publishDone:async()=>!1,createTailStream:async()=>null,purge:()=>{},teardown:()=>{}};else{N=tV$();let n=n0().natsCredsPath,U0;if(n)try{U0=E16(n,"utf8")}catch(R1){console.error(`[app] failed to read NATS_CREDS at ${n}; connecting anonymously`,R1)}N.init(n0().natsUrls,U0?{creds:U0}:void 0);let L0=zy0()?new Kf0({getJetStream:()=>N.getJetStream()}):null;L0?.init().catch(()=>{}),G=L0;let $1=new jt0({getJetStream:()=>N.getJetStream()});$1.init().catch(()=>{}),Q=$1,J=z$1({getConnection:()=>N.getConnection()}),K=new j$1({getConnection:()=>N.getConnection()}),W=new T$1({getConnection:()=>N.getConnection(),getJetStream:()=>N.getJetStream()}),X2$(N),N.onReady(()=>{L0?.init().catch((R1)=>{console.error("[McpListCache] Deferred init failed:",R1)}),$1.init().catch((R1)=>{console.error("[ConnectionCircuitStore] Deferred init failed:",R1)}),J.start(),Cm1(()=>N.getConnection()),W.init().catch((R1)=>{console.warn("[Decopilot] StreamBuffer init failed (late-join disabled):",R1)})})}if(Og)await Og();Wf0(G),Pt0(Q);let F={storage:new Xf(Z.db),sseHub:t5},U=new Ep0(F),w=new Md(Z.db),O=new R$1(w);O.start(),K.start((n)=>{Lw0(n),U.execute({type:"CANCEL",taskId:n}).catch((U0)=>{console.error("[Decopilot] CancelBroadcast execute failed:",U0)})}).catch((n)=>{console.error("[Decopilot] CancelBroadcast start failed:",n)}),N?.onReady(()=>{K.start().catch((n)=>{console.error("[CancelBroadcast] Deferred start failed:",n)})});let D=()=>N?.getConnection()??null;U01(D),N?.onReady(()=>U01(D)),W.init().catch((n)=>{console.warn("[Decopilot] StreamBuffer init failed, attach/late-join disabled:",n)}),Og=async()=>{await U.stopAll(),U.dispose(),O.dispose(),K.stop().catch(()=>{}),d2$(),W.teardown(),G?.teardown(),Y.teardown(),J.teardown(),_m1(),Q.teardown(),Wf0(null),Pt0(null)};let L=new L1;if(L.use("*",tV0({enabled:(n)=>Xv(n,"debug")==="1"})),L.use("*",nE0),L.use("/*",Bq1({origin:(n,U0)=>nC$(n,{baseUrl:n0().baseUrl,requestOrigin:new URL(U0.req.url).origin}),credentials:!0,allowMethods:["GET","POST","PUT","DELETE","OPTIONS"],allowHeaders:["Content-Type","Authorization","mcp-protocol-version"],exposeHeaders:["WWW-Authenticate"]})),L.use("*",async(n,U0)=>{if(await U0(),n.req.path.includes("/files/"))return;if(n.req.path.includes("/fs/")&&n.req.path.endsWith("/read"))return;n.header("X-Frame-Options","DENY"),n.header("Content-Security-Policy","frame-ancestors 'none'")}),!n0().noTui)L.use("*",DC$());L.use("*",async(n,U0)=>{if(await U0(),zg(n.req.path))return;if(n.res.status>=500){let $1=await n.res.clone().text();console.error(`[5xx Response] ${n.req.method} ${n.req.path} - ${n.res.status}:`,$1)}}),L.get(CZ.HEALTH,(n)=>{if(X)return n.json({status:"shutting_down"},503);return n.json({status:"ok"})}),L.get(CZ.HEALTH_LIVE,(n)=>{return n.json({status:"ok"})}),L.get(CZ.HEALTH_READY,async(n)=>{if(X)return n.json({status:"shutting_down"},503);let U0={};if(U0.postgres={status:await j16(Z.pool)?"up":"down"},N)U0.nats=N.isConnected()?{status:"up"}:{status:"down"};else U0.nats={status:"down"};let L0=U0.postgres.status==="up",$1=L0?200:503;return n.json({status:L0?"ready":"not_ready",services:U0},$1)}),L.get(CZ.METRICS,async(n)=>{try{let U0=await rE0.collect(),L0=T16.serialize(U0.resourceMetrics);return n.text(L0,200,{"Content-Type":"text/plain; version=0.0.4; charset=utf-8"})}catch(U0){return console.error("Failed to collect metrics:",U0),n.text("# Error collecting metrics",500)}}),L.get(`${CZ.DBOS_QUEUE_DEPTH_PREFIX}:queueName`,async(n)=>{let U0=n.req.param("queueName");if(!q16.has(U0))return n.json({error:`Unknown queue: ${U0}`},404);let L0=await wg.listQueuedWorkflows({queueName:U0,status:"ENQUEUED"});return n.json({queue_length:L0.length})}),L.get(CZ.HOSTED_RUN_PENDING,(n)=>{let{active:U0,pending:L0,max:$1}=tK$();return n.json({pending:L0,active:U0,max:$1})}),L.route("/api/config",UV$),L.route("/api/_reports",AV$),L.route("/api/_stripe",B$1),L.route("/report",jV$($.clientDir)),L.route("/api/auth/custom",T2$),L.route("/api/auth/desktop",q2$),L.all("/api/auth/admin/*",V2$),L.all("/api/auth/*",async(n)=>{return await L8.handler(n.req.raw)});let E=Oa1();E.use("/.well-known/oauth-protected-resource/mcp/:connectionId",$C),E.use("/mcp/:connectionId/.well-known/oauth-protected-resource",$C),L.route("/",E),L.get("/.well-known/oauth-protected-resource/api/:org/mcp/:connectionId",Qi),L.route("/",Ea1()),L.use("/oauth-proxy/:connectionId/*",$C),L.all("/oauth-proxy/:connectionId/*",dC$);let z=async(n)=>{let L0=await M16()(n.req.raw),$1=await L0.json();return Response.json($1,L0)};L.use("/mcp/:gateway?/:connectionId/.well-known/oauth-protected-resource/*",$C),L.get("/mcp/:gateway?/:connectionId/.well-known/oauth-protected-resource/*",z);let j=async(n)=>{let L0=await k16()(n.req.raw),$1=await L0.json();return Response.json($1,L0)};L.get("/.well-known/oauth-authorization-server/*/:gateway?/:connectionId?",j);let A=eI$({ttlMs:120000}),P=await er1({db:Z.db,auth:L8,encryption:{key:n0().encryptionKey},observability:{tracer:SH,meter:Q8},modelListCache:Y,providerKeyCache:J,memberRoleCache:A});tU.set(P);let I=new QN(n0().encryptionKey);TI1({db:Z.db,baseUrl:nX()});let V=a80(Z.db),k=new Ld(Z.db),_=UC$({db:Z.db});Bt0({storage:V,studioContextFactory:_}),Vp0({studioContextFactory:_,deps:{runRegistry:U,cancelBroadcast:K,streamBuffer:W,sseHub:t5}}),Tp0({dispatchRunFn:HK$,studioContextFactory:_,deps:{runRegistry:U,cancelBroadcast:K,streamBuffer:W,sseHub:t5}});let l=new Xf(Z.db),b=new CD(Z.db);_K$({getJetStream:()=>N?.getJetStream()??null,getJetStreamManager:async()=>{let n=N?.getConnection();return n?await mC$.jetstreamManager(n):null},messageParts:l.messageParts(),resolveRun:async(n)=>{let U0=await Z.db.selectFrom("threads").select(["organization_id","created_by","message_storage_version","status","run_fence_token","title"]).where("id","=",n).executeTakeFirst();return U0?{orgId:U0.organization_id,createdBy:U0.created_by,version:U0.message_storage_version??1,status:U0.status,runFenceToken:U0.run_fence_token,title:U0.title??null}:null},completeRunIfNotCompleted:async(n,U0)=>{let L0=await l.completeRunIfNotCompleted(n,U0);if(TE0(t5,U0,n,L0),L0)await gn(b,n,U0),gp0({contextFactory:_,taskBoard:b,threadId:n,orgId:U0});return L0},markRunRequiresAction:async(n,U0)=>{let L0=await l.requiresActionIfInProgress(n,U0);return TE0(t5,U0,n,L0),L0},markRunFailed:async(n,U0,L0,$1)=>{let R1=await l.markRunFailed(n,U0,L0,$1);if(TE0(t5,U0,n,R1),R1)await gn(b,n,U0),gp0({contextFactory:_,taskBoard:b,threadId:n,orgId:U0});return R1},clearSynthesizedError:async(n,U0)=>{await l.messageParts().replaceMessageParts(n,fw(n,U0),[])},persistTitle:(n,U0,L0)=>l.update(n,U0,{title:L0}),onTitleUpdated:async({runId:n,orgId:U0,title:L0})=>{let $1=await l.get(n,U0).catch(()=>null);t5.emit(U0,l3(n,$1?.status??"in_progress",{title:L0,virtualMcpId:$1?.virtual_mcp_id??void 0,createdBy:$1?.created_by,triggerId:$1?.trigger_id,branch:$1?.branch??null,harnessId:$1?.harness_id??void 0,createdAt:$1?.created_at,updatedAt:$1?.updated_at}))},bumpProgress:async({runId:n,orgId:U0})=>{await l.bumpProgress(n,U0)},recordCompleted:async({runId:n,orgId:U0,distinctId:L0,usage:$1})=>{x1.capture({distinctId:L0,event:"chat_message_completed",groups:{organization:U0},properties:{organization_id:U0,thread_id:n,transport:"projector",input_tokens:$1.inputTokens,output_tokens:$1.outputTokens,total_tokens:$1.totalTokens}})},recordFailed:async({runId:n,orgId:U0,distinctId:L0,reason:$1,kind:R1})=>{x1.capture({distinctId:L0,event:"chat_message_failed",groups:{organization:U0},properties:{organization_id:U0,thread_id:n,transport:"projector",error_category:R1,error_message:$1}})},purgeRun:async(n)=>{W.purge(n)}}),_3$({studioContextFactory:_,systemDatabaseUrl:hk1(n0().databaseUrl,n0().databasePgSsl),streamBuffer:W}),HC$(),RI1();let x=async(n,U0,L0)=>{let $1=await V.findById(n,U0);if(!$1)throw Error("Automation not found");return Et0({automationId:$1.id,organizationId:$1.organization_id,triggerId:null})},p=new iy(V,({automation:n,trigger:U0,contextMessages:L0,idempotencyKey:$1})=>Zp({automationId:n.id,organizationId:n.organization_id,triggerId:U0.id,contextMessages:L0},{idempotencyKey:$1})),d=[iY(),LC(),DW()];for(let n of d)qE0(n).then(()=>{}).catch((U0)=>console.error("[monitoring] Retention cleanup failed:",U0));let J0=()=>Z.db.deleteFrom("apikey").where("expiresAt","<",new Date).execute().then(()=>{}).catch((n)=>console.error("[auth] Expired API key cleanup failed:",n));J0(),setInterval(J0,86400000).unref(),L.use("*",async(n,U0)=>{if(mE0(n.req.path))return U0();let L0={measure:async(R1,N8)=>{eQ(n,R1);try{return await N8()}finally{ZQ(n,R1)}}},$1=await tU.create(n.req.raw,{timings:L0});$1.automationRunner=x,n.set("studioContext",$1);try{await U0()}finally{let R1=$1.pendingRevalidations;if(R1.length>0)Promise.race([Promise.allSettled(R1),w8(30000)]).catch((x0)=>console.error("[studio] revalidation cleanup error:",x0))}}),L.use("/api/:org/decopilot/*",ZC),L.use("/api/:org/v1/*",ZC),L.use("/api/:org/files/*",ZC),L.use("*",async(n,U0)=>{if(iC$(n.req.path))return U0();let L0=n.get("studioContext");if(!L0?.organization?.id||!L0?.auth?.user?.id)return U0();if(!(await L0.storage.orgSsoConfig.getByOrgId(L0.organization.id))?.enforced)return U0();if(!await L0.storage.orgSsoSessions.isValid(L0.auth.user.id,L0.organization.id))return n.json({error:"SSO authentication required for this organization"},403);return U0()});let O0=new L1;O0.use("*",P3({mountPath:"/api/org-sso"})),O0.route("/",ML0()),L.route("/api/org-sso",O0),L.get("/api/tools/management",(n)=>{return n.json({tools:rV0,grouped:MB()})}),L.use("/mcp/*",async(n,U0)=>{eQ(n,"mcp");try{return await U0()}finally{ZQ(n,"mcp")}});let T0=async(n,U0)=>{let L0=n.var.studioContext;if(!L0.auth.user?.id&&!L0.auth.apiKey?.id){let $1=new URL(n.req.url),R1=n.req.header("x-forwarded-proto")?.split(",")[0]?.trim(),N8=R1?`${R1}://${$1.host}`:$1.origin;return n.res=new Response(null,{status:401,headers:{"WWW-Authenticate":`Bearer realm="mcp",resource_metadata="${N8}${$1.pathname}/.well-known/oauth-protected-resource"`}})}return await U0()};if(L.use("/mcp/:connectionId?",T0),L.use("/mcp/gateway/:virtualMcpId?",T0),L.use("/mcp/virtual-mcp/:virtualMcpId?",T0),L.use("/mcp/self",T0),OJ()){let{mountDevRoutes:n}=(vC$(),_E0(_C$));n(L,T0)}let s=new L1;s.use("*",P3({mountPath:"/mcp"})),s.route("/",KO0()),L.route("/mcp",s);let o=new L1;o.use("*",P3({mountPath:"/mcp/self"})),o.route("/",wE0()),L.route("/mcp/self",o);let A0=new L1;A0.use("*",P3({mountPath:"/mcp"})),A0.route("/",HO0()),L.route("/mcp",A0),L.use("/api/:org/models/*",async(n,U0)=>{eQ(n,"llm_models");try{return await U0()}finally{ZQ(n,"llm_models")}});let X0=L01({cancelBroadcast:K,streamBuffer:W,runRegistry:U});L.route("/api",X0),L.use("/api/:org/files/*",ZC),L.route("/api",CV$);let E0=new L1;E0.use("*",P3({mountPath:"/api"})),E0.route("/",OE0()),L.route("/api",E0),L.route("/api",KV$);let u0=new L1;u0.use("*",P3({mountPath:"/api"})),u0.route("/",BE0({tokenStorage:k,automationEventDispatcher:p})),L.route("/api",u0);let V0=new zd(Z.db),g0=new L1;g0.use("*",P3({mountPath:"/api"})),g0.route("/",bL0()),L.route("/api",g0),L.route("/api/deco-sites",Uq$()),L.route("/api/deco-apps",ZV$());let Z0=new L1;Z0.use("*",P3({mountPath:"/api/deco-sites"})),Z0.route("/",xL0()),L.route("/api/deco-sites",Z0);let{createPublishRequestHandler:B0,createPublicMCPHandler:j0}=await Promise.resolve().then(() => (uC$(),hC$)),q0={db:Z.db,vault:{encrypt:(n)=>I.encrypt(n),decrypt:(n)=>I.decrypt(n)}},r=B0(q0),$0=j0(q0);L.use("/org/:orgRef/registry/publish-request",$C),L.post("/org/:orgRef/registry/publish-request",r),L.use("/org/:orgSlug/registry/*",$C),L.all("/org/:orgSlug/registry/*",$0),L.post("/api/:org/registry/publish-request",r),L.all("/api/:org/registry/*",$0),L.route(Y01,C2$());let M0=eS$({kvStorage:V0,runRegistry:U,streamBuffer:W,sseHub:t5,cancelBroadcast:K,tokenStorage:k,automationEventDispatcher:p,mountDevAssets:OJ(),mcpAuth:T0,oauthProxyHandler:dC$,watchHandler:pC$,betterAuthProtectedResourceHandler:z,getNatsConnection:()=>N?.getConnection()??null});return L.route("/api/:org",M0),L.notFound((n)=>{return n.json({error:"Not Found",path:n.req.path},404)}),L.onError(e2$),Object.assign(L,{markShuttingDown:()=>{X=!0},shutdown:async()=>{if(console.log("[shutdown] Stopping workers..."),await Promise.allSettled([t5.stop(),Og?Promise.resolve(Og()).finally(()=>{Og=null}):Promise.resolve()]),N)await N.drain().catch((n)=>console.error("[shutdown] NATS drain error:",n));console.log("[shutdown] Flushing telemetry..."),await gQ().catch((n)=>console.error("[shutdown] Telemetry flush error:",n)),console.log("[shutdown] Closing database..."),await ck1(Z).catch((n)=>console.error("[shutdown] Database close error:",n)),console.log("[shutdown] Cleanup complete.")},initDbos:async()=>{await wg.registerQueue(yQ,{partitionQueue:!0,concurrency:Ut0,minPollingIntervalMs:wt0}),await wg.registerQueue(mY,{partitionQueue:!0,concurrency:kp0}),await wg.registerQueue(BW,{partitionQueue:!0,concurrency:Ap0}),await wg.registerQueue(kH,{partitionQueue:!0,concurrency:C3$}),await P01(V),await Promise.allSettled(["automations-gate","automations-global"].map((n)=>wg.deleteQueue(n))),await Ot0(Z.pool),Dg1().catch((n)=>{console.error("[studio-pack-backfill] failed:",n)}),II1().catch((n)=>{console.error("[org-fs] public-sets boot sync kick failed:",n)})}})}var mC$,cC$=5000,Og=null,dC$=async($)=>{let Z=$.req.param("connectionId");if(!Z)return $.json({error:"Missing connectionId"},400);let X=$.req.path.split("/").filter(Boolean),G=X[X.length-1],Q=$.get("studioContext");if(!Q)Q=await tU.create($.req.raw),$.set("studioContext",Q);let Y=$.req.param("org")?Q.organization?.id:void 0,J=await Q.storage.connections.findById(Z,Y);if(!J?.connection_url)return $.json({error:"Connection not found"},404);let K=await hf(J.connection_url),W,N=new URL(J.connection_url),F=(typeof J.metadata?.oauthResource==="string"&&J.metadata.oauthResource.length>0?J.metadata.oauthResource:void 0)??J.connection_url;if(K.ok)W=(await K.json()).authorization_servers?.[0];if(!W)W=N.origin;let U=await Yi(W);if(!U.ok)return $.json({error:"Failed to get auth server metadata"},502);let w=await U.json(),O;if(G==="authorize")O=w.authorization_endpoint;else if(G==="token")O=w.token_endpoint;else if(G==="register")O=w.registration_endpoint;if(!O)return $.json({error:`Unknown OAuth endpoint: ${G}`},404);let D=new URL(O),L=new URL($.req.url);if(D.search=L.search,G==="authorize"){let l=D.searchParams.get("redirect_uri");if(l){let b=n0().baseUrl??L.origin;try{let x=new URL(l),p=new URL(b);if(!(x.origin===p.origin||x.hostname==="localhost"))return $.json({error:"invalid_request",error_description:"redirect_uri is not allowed"},400)}catch{return $.json({error:"invalid_request",error_description:"redirect_uri is malformed"},400)}D.searchParams.set("redirect_uri",l)}if(D.searchParams.has("resource"))D.searchParams.set("resource",F);if(C21(J.connection_url))try{let b=await P16(Q,J.organization_id),x=A16(b);for(let[p,d]of x)D.searchParams.set(p,d)}catch(b){console.warn("[oauth-proxy] Failed to get smart OAuth params, proceeding without:",b)}return $.redirect(D.toString(),302)}let E={Accept:$.req.header("Accept")||"application/json"},z=$.req.header("Content-Type");if(z)E["Content-Type"]=z;let j=$.req.header("Authorization");if(j)E.Authorization=j;let A,P=null,I=null;if($.req.method!=="GET"&&$.req.method!=="HEAD")if(G==="token"&&z?.includes("application/x-www-form-urlencoded")){if(j?.toLowerCase().startsWith("basic "))try{let d=atob(j.slice(6).trim()),J0=d.indexOf(":");if(J0!==-1){let O0=decodeURIComponent(d.slice(0,J0)),T0=decodeURIComponent(d.slice(J0+1));P=O0||null,I=T0||null}}catch{}let l=await $.req.formData();if(l.has("resource"))l.set("resource",F);let b=l.get("client_id"),x=l.get("client_secret");if(typeof b==="string"&&b)P=b;if(typeof x==="string"&&x)I=x;let p=new URLSearchParams;for(let[d,J0]of l.entries())p.append(d,J0.toString());A=p.toString()}else if(G==="register"&&z?.toLowerCase().includes("application/json")){let l=await Q.db.selectFrom("organization").select(["id","slug","name"]).where("id","=",J.organization_id).executeTakeFirst(),b=await $.req.text(),x={};try{x=b?JSON.parse(b):{}}catch{A=b}let p=typeof x==="object"&&x!==null&&!Array.isArray(x);if(A===void 0&&!p)A=b;if(A===void 0){let d=x,J0=d.metadata&&typeof d.metadata==="object"?d.metadata:{};d.metadata={...J0,organization_id:J.organization_id,...l?.slug?{organization_slug:l.slug}:{},...l?.name?{organization_name:l.name}:{}},A=JSON.stringify(d),E["Content-Type"]="application/json"}}else A=$.req.raw.body??void 0;let V=await fetch(D.toString(),{method:$.req.method,headers:E,body:A,duplex:"half",redirect:"manual"}),k=new Headers,_=["connection","keep-alive","transfer-encoding","content-encoding","content-length"];for(let[l,b]of V.headers.entries())if(!_.includes(l.toLowerCase()))k.set(l,b);if(G==="token"&&V.ok){let l=await V.text();try{let b=JSON.parse(l);if(typeof b.access_token==="string"&&b.access_token){let x=typeof b.expires_in==="number"?new Date(Date.now()+b.expires_in*1000):null,p=null;try{p=await uf(J.connection_url)??O}catch{p=O}let d={connectionId:Z,accessToken:b.access_token,refreshToken:typeof b.refresh_token==="string"?b.refresh_token:null,scope:typeof b.scope==="string"?b.scope:null,expiresAt:x,clientId:P,clientSecret:I,tokenEndpoint:p};await new F5(Q.db,Q.vault).upsert(d)}}catch(b){console.error("[oauth-proxy] failed to persist downstream token:",b)}return new Response(l,{status:V.status,statusText:V.statusText,headers:k})}return new Response(V.body,{status:V.status,statusText:V.statusText,headers:k})},pC$=async($)=>{let Z=$.var.studioContext;if(!(Z.auth.user?.id??Z.auth.apiKey?.userId))return $.json({error:"Unauthorized"},401);let G=Z.organization?.id;if(!G)return $.json({error:"organization id missing"},400);let Q=$.req.query("types"),Y=Q?Q.split(",").map((K)=>K.trim()).filter(Boolean):null,J=crypto.randomUUID();return qH($,async(K)=>{if(await K.writeSSE({event:"connected",data:JSON.stringify({listenerId:J,organizationId:G,typePatterns:Y,connectedAt:new Date().toISOString()})}),!t5.add({id:J,organizationId:G,typePatterns:Y?.length?Y:null,push:(H)=>{K.writeSSE({id:H.id,event:H.type,data:JSON.stringify(H)}).catch(()=>{t5.remove(G,J)})}})){await K.writeSSE({event:"error",data:JSON.stringify({error:"Too many connections",message:"SSE connection limit reached. Try again later."})});return}let N=setInterval(()=>{K.writeSSE({event:"keepalive",data:""}).catch(()=>{clearInterval(N)})},30000);await new Promise((H)=>{K.onAbort(()=>{clearInterval(N),t5.remove(G,J),H()})})})},T16,q16,M16=()=>I16(L8),k16=()=>R16(L8);var oC$=B(()=>{L5();f$();qI1();wZ();e_();O8();i8();k00();Dq1();oV0();AY();Gi();ae0();XY();G5();B6();Q01();M2$();_2$();N01();a2$();E01();pJ();c60();z01();$q$();j01();$V$();I01();XV$();WO0();Ji();WV$();FO0();o11();wV$();PV$();TV$();kV$();_V$();t11();n11();Wo();Wc();oV$();YQ();z40();Td();Tt0();rV$();sV$();$C$();w01();JC$();zp0();KC$();vy0();Vd();bX();up0();gy0();FC$();d$0();I$1();hG();A01();DV();jp0();Dp0();d$0();_w0();$y0();Zy0();wC$();Gv();LC$();Ng();ae0();Rw0();Ew0();mC$=M(CO(),1);T16=new z16,q16=new Set([yQ,mY,BW,kH])});var eC$={};N4(eC$,{resolveClientDir:()=>x16,resolveAssetPathWithTraversalCheck:()=>sC$,isPathWithinDirectory:()=>aC$,createAssetHandler:()=>y16});import{resolve as st,dirname as V16,join as C16,extname as _16,basename as v16,sep as rC$}from"path";function b16($,Z){if($===Z||v16($)==="index.html")return{"Cache-Control":"no-cache"};if($.includes(`${rC$}assets${rC$}`))return{"Cache-Control":"public, max-age=31536000, immutable"};return{}}function aC$($,Z){let X=st(Z),G=st($);return G===X||G.startsWith(X+"/")}function sC$({requestPath:$,clientDir:Z}){let X=$.startsWith("/")?$.slice(1):$,G=st(Z,X);if(!aC$(G,Z))return null;return G}function x16($,Z="../client"){let X=new URL($),G=V16(X.pathname);return st(G,Z)}function y16($={}){let{env:Z="production",clientDir:X=f16,isServerPath:G=()=>!1}=$;if(Z==="development")return async function(Y){return null};return async function(Y){if(Y.method!=="GET")return null;let J=new URL(Y.url),K;try{K=decodeURIComponent(J.pathname)}catch{return null}if(G(K))return null;let W=sC$({requestPath:K,clientDir:X});if(!W)return null;let N=C16(W,"index.html"),H=st(X,"index.html"),F=Y.headers.get("accept"),w=F?.includes("text/html")||F?.includes("*/*")&&["",".html"].includes(_16(W))?[N,H]:[];for(let O of[W,...w])try{let D=Bun.file(O);if(await D.exists())return new Response(D,{headers:b16(O,H)})}catch{}if(K.includes("/assets/"))return new Response("Not Found",{status:404,headers:{"Cache-Control":"no-store"}});return null}}var f16="./dist/client";var $_$=()=>{};var Z_$={};N4(Z_$,{tryUpgradePreviewWs:()=>m16,tryHandlePreviewHttp:()=>d16,previewWebSocketHandler:()=>i16,parsePreviewBaseDomain:()=>l16,isPreviewWsData:()=>ME0,extractHandleFromHost:()=>b$1});function u16($){if($.method!=="GET")return!1;return($.headers.get("accept")??"").includes("text/html")}function c16(){return new Response(h16,{status:503,headers:{"content-type":"text/html; charset=utf-8","cache-control":"no-store","retry-after":"1","access-control-allow-origin":"*"}})}function l16($){if(!$||$.trim()==="")return null;let Z=$.includes("{handle}")?$.replace("{handle}","__handle__"):$,X;try{X=new URL(Z)}catch{return null}let G=X.hostname;if($.includes("{handle}")){let Q=G.indexOf(".");if(Q<=0||Q===G.length-1)return null;return G.slice(Q+1)}return G}function b$1($,Z){if(!$||!Z)return null;let X=$.indexOf(":"),G=(X>=0?$.slice(0,X):$).toLowerCase(),Y=`.${Z.toLowerCase().replace(/^\.+|\.+$/g,"")}`;if(!G.endsWith(Y))return null;let J=G.slice(0,G.length-Y.length);if(!J||J.includes("."))return null;return J}async function d16($,Z){let X=b$1($.headers.get("host"),Z.baseDomain);if(!X)return null;let G=await Z.getRunner();if(!G)return $o(503,"preview proxy not configured");let Q=await G.proxyPreviewRequest(X,$);if(Q.headers.get(XV)&&u16($))return c16();return Q.headers.delete(XV),Q}function $o($,Z){return new Response(JSON.stringify({error:Z}),{status:$,headers:{"content-type":"application/json","access-control-allow-origin":"*"}})}function ME0($){return typeof $==="object"&&$!==null&&$.kind==="preview"}async function m16($,Z,X){if(($.headers.get("upgrade")??"").toLowerCase()!=="websocket")return null;let G=b$1($.headers.get("host"),X.baseDomain);if(!G)return null;let Q=await X.getRunner();if(!Q)return $o(503,"preview proxy not configured");let Y=await Q.resolvePreviewUpstreamUrl(G);if(!Y)return $o(404,"sandbox not found");let J=new URL($.url);if(J.pathname.startsWith("/_sandbox")||J.pathname.startsWith("/_decopilot_vm"))return $o(404,"not found");let K=`${Y.replace(/^http/,"ws")}${J.pathname}${J.search}`,W=$.headers.get("sec-websocket-protocol"),N=W?W.split(",").map((U)=>U.trim()).filter(Boolean):[],H={kind:"preview",upstreamUrl:K,upstreamProtocols:N,pending:[],upstream:null,closed:!1};if(!Z.upgrade($,{data:H}))return $o(426,"upgrade failed");return}function et($,Z,X,G){if(Z.closed)return;Z.closed=!0;try{$.close(X,G)}catch{}try{Z.upstream?.close()}catch{}}var g16=256,h16='<!DOCTYPE html><html><head><meta charset="utf-8"><title>Connecting\u2026</title><style>body{font-family:system-ui,sans-serif;display:flex;align-items:center;justify-content:center;min-height:100vh;margin:0;background:#fafafa;color:#555}div{text-align:center;max-width:420px;padding:24px}h3{margin:0 0 8px}p{margin:0;font-size:14px;color:#999;line-height:1.5}</style></head><body><div><h3>Connecting to sandbox\u2026</h3><p>Waiting for the sandbox to come online. This page refreshes automatically.</p></div><script>setTimeout(function(){window.location.reload()},1500)</script></body></html>',i16;var X_$=B(()=>{Zn0();i16={open($){let Z=$.data;if(!ME0(Z))return;let X;try{X=Z.upstreamProtocols.length>0?new WebSocket(Z.upstreamUrl,Z.upstreamProtocols):new WebSocket(Z.upstreamUrl)}catch(G){console.warn(`[preview-ws] failed to dial upstream ${Z.upstreamUrl}: ${G instanceof Error?G.message:String(G)}`),et($,Z,1011,"upstream connect failed");return}X.binaryType="arraybuffer",Z.upstream=X,X.addEventListener("open",()=>{while(Z.pending.length>0){let G=Z.pending.shift();if(G!==void 0)X.send(G)}}),X.addEventListener("message",(G)=>{if(Z.closed)return;$.send(G.data)}),X.addEventListener("close",(G)=>{et($,Z,G.code||1000,G.reason||"")}),X.addEventListener("error",()=>{et($,Z,1011,"upstream error")})},message($,Z){let X=$.data;if(!ME0(X))return;let G=X.upstream;if(G&&G.readyState===WebSocket.OPEN){G.send(Z);return}if(X.pending.length>=g16){et($,X,1011,"preview ws backlog overflow");return}X.pending.push(Z)},close($){let Z=$.data;if(!ME0(Z))return;et($,Z,1000,"")}}});var J_$={};N4(J_$,{printBanner:()=>p16,bannerLines:()=>Y_$,BANNER_LINES:()=>G_$,BANNER_GRADIENT:()=>Q_$});function n16($){let Z=Number.parseInt($.slice(1),16);return[Z>>16&255,Z>>8&255,Z&255]}function Y_$($){let Z=G_$.map((X,G)=>{let[Q,Y,J]=n16(Q_$[G]);return`\x1B[38;2;${Q};${Y};${J}m${X}\x1B[39m`});if($!==void 0)Z.push(`\x1B[2m v${$}\x1B[22m`);return Z}function p16($){console.log("");for(let Z of Y_$($))console.log(Z);console.log("")}var G_$,Q_$;var K_$=B(()=>{G_$=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588 ","\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 "," \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2588 \u2591 \u2588\u2588\u2588 \u2591\u2591\u2591 \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2591\u2591\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591 \u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 "," \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591 ","\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591 "],Q_$=["#00ff64","#00ee5e","#00dc56","#00c84e","#00b444","#00a03c","#008832","#006e28"]});L5();var i$1="7";function n$1($){return{name:"decocms",systemDatabaseUrl:$.systemDatabaseUrl,systemDatabaseSchemaName:"dbos",systemDatabasePoolSize:$.poolSize,runAdminServer:!1,executorID:$.executorID,applicationVersion:i$1,...$.listenQueues!==void 0?{listenQueues:$.listenQueues}:{}}}f$();fE0();G5();function Tv$(){let $=(process.env.BUN_OPTIONS??"").split(/\s+/).filter(Boolean);return[...process.argv.slice(1),...$]}function eE0($,Z){for(let X=0;X<$.length;X++){let G=$[X];if(G===void 0)continue;if(G===Z)return $[X+1];if(G.startsWith(`${Z}=`))return G.slice(Z.length+1)}return}function k81(){let $=Tv$();if($.includes("--cpu-prof")){console.log(JSON.stringify({msg:"cpu-profiling-active",dir:eE0($,"--cpu-prof-dir")??process.cwd(),name:eE0($,"--cpu-prof-name"),markdown:$.includes("--cpu-prof-md"),intervalUs:Number(eE0($,"--cpu-prof-interval")??1000),note:"profile is written on process exit"}));return}if(process.env.CPU_PROFILE)console.warn(JSON.stringify({msg:"cpu-profiling-requested-but-inactive",hint:'CPU profiling is a Bun launch flag. Set BUN_OPTIONS="--cpu-prof --cpu-prof-md --cpu-prof-dir=/tmp" before starting the process.'}))}Xz0();var Fo;function y81(){if(process.env.HEAP_WATCH!=="1")return()=>{};let $=Number(process.env.HEAP_WATCH_INTERVAL_MS??60000),Z=async()=>{let X=EO();if(!X)return;let G={};try{let{heapStats:Q}=await import("bun:jsc"),Y=Q(),J=Object.entries(Y.objectTypeCounts).sort((K,W)=>W[1]-K[1]).slice(0,20);G={objectCount:Y.objectCount,heapSize:Y.heapSize,top:Object.fromEntries(J)}}catch{}console.log(JSON.stringify({msg:"heap-watch",ts:new Date().toISOString(),uptimeS:Math.round(process.uptime()),rss:X.rss,heapUsed:X.heapUsed,heapTotal:X.heapTotal,external:X.external,arrayBuffers:X.arrayBuffers,...G}))};return Z().catch(()=>{}),Fo=setInterval(()=>void Z().catch(()=>{}),$),Fo.unref?.(),process.on("SIGUSR2",()=>{try{let X=Bun.generateHeapSnapshot("v8"),G=typeof X==="string"?X:JSON.stringify(X),Q=`/tmp/heap-${process.pid}-${Date.now()}.heapsnapshot`;Bun.write(Q,G),console.log(JSON.stringify({msg:"heap-snapshot-written",path:Q}))}catch(X){console.error("[heap-watch] snapshot failed:",X)}}),()=>{if(Fo)clearInterval(Fo)}}import*as qv$ from"bun:jsc";var{startSamplingProfiler:Mv$,samplingProfilerStackTraces:kv$}=qv$;function g81(){if(process.env.STALL_WATCHDOG!=="1")return()=>{};let $=Number(process.env.STALL_WATCHDOG_MS??100),Z=Number(process.env.STALL_WATCHDOG_TICK_MS??50);try{Mv$()}catch(Y){return console.error("[stall-watchdog] failed to start sampling profiler:",Y),()=>{}}let X,G=performance.now()+Z,Q=()=>{let Y=performance.now(),J=Y-G;G=Y+Z;let K=[];try{K=kv$()?.traces??[]}catch{}if(J>$&&K.length>0){let W=new Map;for(let H of K){let F=H.frames.find((O)=>O.sourceURL&&!/Unknown Executable/.test(O.category??""))??H.frames[0];if(!F)continue;let U=(F.sourceURL??"?").replace(/^.*\/node_modules\//,"node_modules/"),w=`${F.name??"?"} @ ${U}:${F.line??"?"}`;W.set(w,(W.get(w)??0)+1)}let N=[...W.entries()].sort((H,F)=>F[1]-H[1]).slice(0,8).map(([H,F])=>({frame:H,count:F}));console.warn(JSON.stringify({msg:"stall-stack",ts:new Date().toISOString(),lagMs:Math.round(J),samplesInWindow:K.length,top:N}))}X=setTimeout(Q,Z),X.unref?.()};return X=setTimeout(Q,Z),X.unref?.(),()=>{if(X)clearTimeout(X)}}function h81(){k81();let $=[y81(),x81(),g81()];return()=>{for(let Z of $)Z()}}import{existsSync as Z$6}from"fs";var dY=n0();I81();var{DBOS:Zo,DBOSClient:t16}=await import("@dbos-inc/dbos-sdk");function U_$($,Z){if(!Z)return $;let X=new URL($);if(!X.searchParams.has("sslmode"))X.searchParams.set("sslmode","verify-full");return X.toString()}var o16=[yQ,mY,BW,kH],r16=dY.dispatchRole==="worker"?o16:dY.dispatchRole==="api"?[]:void 0;Zo.setConfig(n$1({systemDatabaseUrl:U_$(dY.databaseUrl,dY.databasePgSsl),poolSize:dY.dbosPoolSize,executorID:dY.podName,listenQueues:r16}));var{createApp:a16}=await Promise.resolve().then(() => (oC$(),tC$)),{isServerPath:s16}=await Promise.resolve().then(() => (Wo(),W81)),{createAssetHandler:e16,resolveClientDir:w_$}=await Promise.resolve().then(() => ($_$(),eC$)),$$6=dY.port,W_$=w_$(import.meta.url,"../client"),O_$=Z$6(W_$)?W_$:w_$(import.meta.url,"../dist/client"),X$6=e16({clientDir:O_$,isServerPath:s16}),G$6={"X-Frame-Options":"DENY","Content-Security-Policy":"frame-ancestors 'none'"};function Q$6($){let Z=new Headers($.headers);for(let[X,G]of Object.entries(G$6))Z.set(X,G);return new Response($.body,{status:$.status,statusText:$.statusText,headers:Z})}var{parsePreviewBaseDomain:Y$6,tryHandlePreviewHttp:J$6,tryUpgradePreviewWs:K$6,previewWebSocketHandler:f$1,isPreviewWsData:x$1}=await Promise.resolve().then(() => (X_$(),Z_$)),{getOrInitSharedRunner:W$6}=await Promise.resolve().then(() => (gU0(),_Q$)),B_$=Y$6(process.env.STUDIO_SANDBOX_PREVIEW_URL_PATTERN),N_$={baseDomain:B_$??"",getRunner:W$6},kE0=await a16({clientDir:O_$}),y$1=process.env.DBOS_CONDUCTOR_KEY?.trim(),H_$=process.env.DBOS_CONDUCTOR_URL?.trim();await Zo.launch({...y$1?{conductorKey:y$1}:{},...y$1&&H_$?{conductorURL:H_$}:{}});console.log(`[dbos] application version: ${Zo.applicationVersion}`);var g$1=5,h$1=0;await gG(async()=>{h$1++;try{return await kE0.initDbos()}catch($){let Z=h$1>=g$1?"giving up":"retrying";throw console.warn(`[dbos] initDbos attempt ${h$1}/${g$1} failed, ${Z}`,$),$}},{maxAttempts:g$1,minTimeout:1000,maxTimeout:1e4,jitter:0.5});if(!dY.isCli){let{bannerLines:$}=await Promise.resolve().then(() => (K_$(),J_$));console.log("");for(let Z of $())console.log(Z)}var N$6=Bun.serve({idleTimeout:0,port:$$6,hostname:"0.0.0.0",fetch:async($,Z)=>{if(B_$){let G=await K$6($,Z,N_$);if(G===void 0)return;if(G)return G;let Q=await J$6($,N_$);if(Q)return Q}let X=await X$6($);if(X)return Q$6(X);return kE0.fetch($,{server:Z})},websocket:{open($){if(x$1($.data))f$1.open($)},message($,Z){if(x$1($.data))f$1.message($,Z)},close($){if(x$1($.data))f$1.close($)}},development:!1}),H$6=h81();if(dY.localMode)Promise.resolve().then(() => (WV(),$w0)).then(async({seedLocalMode:$,markSeedComplete:Z})=>{try{let X=await $()}catch(X){console.error("Failed to seed local mode:",X)}finally{Z()}}).catch(async($)=>{console.error("Failed to load local-mode module:",$);try{let{markSeedComplete:Z}=await Promise.resolve().then(() => (WV(),$w0));Z()}catch{}});var F_$=!1;async function F$6($){let Z;try{Z=await t16.create({systemDatabaseUrl:U_$(dY.databaseUrl,dY.databasePgSsl),systemDatabaseSchemaName:"dbos"});let X=await Z.listWorkflows({status:"PENDING",queueName:mY,executorId:$,loadInput:!1,loadOutput:!1});if(X.length===0){console.log(`[shutdown] no in-flight thread-gate gates to hand off (executor ${$})`);return}let G=X.map((Q)=>Q.workflowID);await Z.resumeWorkflows(G,{queueName:mY}),console.log(`[shutdown] re-enqueued ${G.length} in-flight thread-gate gate(s) for re-adoption by a live executor (from ${$}):`,G)}catch(X){console.error("[shutdown] thread-gate handoff failed:",X)}finally{await Z?.destroy().catch(()=>{})}}async function SE0($){if(F_$)return;F_$=!0,console.log(`
|
|
2725
2725
|
[shutdown] Received ${$}, shutting down gracefully...`);let Z=Number(process.env.SHUTDOWN_GRACE_SECONDS??60)*1000,X=Math.max(Z-5000,1e4),G=setTimeout(()=>{console.error(`[shutdown] Timed out after ${X}ms, forcing exit.`),process.exit(1)},X);G.unref?.();let Q=0;try{H$6(),kE0.markShuttingDown();let Y=t$1(dY.dispatchRole,X,process.env.SHUTDOWN_DRAIN_MS);await w8(Y),await N$6.stop(!0);let J=Zo.executorID;await Zo.shutdown(),await F$6(J),await kE0.shutdown()}catch(Y){console.error("[shutdown] Error during shutdown:",Y),Q=1}clearTimeout(G),process.exit(Q)}process.on("SIGTERM",()=>SE0("SIGTERM"));process.on("SIGINT",()=>SE0("SIGINT"));process.on("SIGHUP",()=>SE0("SIGHUP"));process.on("unhandledRejection",($)=>{console.error("[process] Unhandled rejection:",$)});process.on("uncaughtException",($)=>{console.error("[process] Uncaught exception:",$),SE0("uncaughtException")});
|