decocms 4.163.0 → 4.163.2
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-ti3Pu3kK.js → AlertCircle-BZ5uUp33.js} +1 -1
- package/dist/client/assets/{AreaChart-BpnZ_7SJ.js → AreaChart-RKDjLQou.js} +1 -1
- package/dist/client/assets/{ArrowUp-Bf_YffT3.js → ArrowUp-DWoLVGTg.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-BmHQxyY6.js → ArrowUpRight-CUgq40t2.js} +1 -1
- package/dist/client/assets/{Check-Dl9VA67i.js → Check-2AcWjzOf.js} +1 -1
- package/dist/client/assets/{CheckCircle-ngI5WaH_.js → CheckCircle-CTEJQ351.js} +1 -1
- package/dist/client/assets/{ChevronDown-BYjJlyLN.js → ChevronDown-CDdmtcy6.js} +1 -1
- package/dist/client/assets/{ChevronRight-CHUOn5n9.js → ChevronRight-9379Od8d.js} +1 -1
- package/dist/client/assets/{ChevronUp-DVtoQDnd.js → ChevronUp-oe0lDn1N.js} +1 -1
- package/dist/client/assets/{Copy01-965RrpjX.js → Copy01-Btw70Aes.js} +1 -1
- package/dist/client/assets/{CpuChip01-DBf5H5mA.js → CpuChip01-DFv_gHFs.js} +1 -1
- package/dist/client/assets/{DotsVertical-DEB201om.js → DotsVertical-Cjn6YGrU.js} +1 -1
- package/dist/client/assets/{Eye-CgkFzpTD.js → Eye-B0neBfTk.js} +1 -1
- package/dist/client/assets/{FilterLines-BG44bodv.js → FilterLines-HfVy6A-w.js} +1 -1
- package/dist/client/assets/{HardDrive-DaPgqmiq.js → HardDrive-9UI1DDT_.js} +1 -1
- package/dist/client/assets/{Key01-DW0yvGkT.js → Key01-Dobf1jZ_.js} +1 -1
- package/dist/client/assets/{LayoutLeft-M37kqvFg.js → LayoutLeft-CByt2qP4.js} +1 -1
- package/dist/client/assets/{LinkExternal01-Dn4hoZr7.js → LinkExternal01-DQaZsPR-.js} +1 -1
- package/dist/client/assets/{LogOut01-CxdGbFfc.js → LogOut01-CMV1BsaS.js} +1 -1
- package/dist/client/assets/{Monitor01-Ci9totvI.js → Monitor01-CvKuxwsa.js} +1 -1
- package/dist/client/assets/{Palette-DXKwKHjA.js → Palette-ZEErkwMI.js} +1 -1
- package/dist/client/assets/{Play-yjpVhW0_.js → Play-DwnSw9Tq.js} +1 -1
- package/dist/client/assets/{Plus-0d2UuDSn.js → Plus-BRe4-S1L.js} +1 -1
- package/dist/client/assets/{SearchLg-Csxdk914.js → SearchLg-CMheHgX9.js} +1 -1
- package/dist/client/assets/{SearchMd-DDsU6A88.js → SearchMd-C7HOHjTl.js} +1 -1
- package/dist/client/assets/{Settings02-Czpn3CZA.js → Settings02-BJ4vWSm4.js} +1 -1
- package/dist/client/assets/{Shield01-ZsfAoy5n.js → Shield01-BpIXTCoE.js} +1 -1
- package/dist/client/assets/{Star01-B7LuQRN5.js → Star01-DA4wkNyA.js} +1 -1
- package/dist/client/assets/{Stars01-BCJedufT.js → Stars01-mViNacNL.js} +1 -1
- package/dist/client/assets/{Stars02-DgOsFnRy.js → Stars02-RXEYy9-m.js} +1 -1
- package/dist/client/assets/{Sun-HRota3Gt.js → Sun-Cx7F80lP.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-SAWs9UZb.js → SwitchHorizontal01-BT1C_QeG.js} +1 -1
- package/dist/client/assets/{Tool01-CmNFiaOd.js → Tool01-DZ8kXd38.js} +1 -1
- package/dist/client/assets/{Tool02-B3a9_UnC.js → Tool02-9P3B5y2_.js} +1 -1
- package/dist/client/assets/{Trash01-HjhDXK-j.js → Trash01-T1I231Gx.js} +1 -1
- package/dist/client/assets/{TrendUp01-CVdp5lOw.js → TrendUp01-D5SVXPSi.js} +1 -1
- package/dist/client/assets/{Upload01-aDI7fYe2.js → Upload01-BVgh7n-m.js} +1 -1
- package/dist/client/assets/{User01-C-e9I8LM.js → User01-Bmgtlzg4.js} +1 -1
- package/dist/client/assets/{Users01-CbE7OgV1.js → Users01-BkQ0IGbO.js} +1 -1
- package/dist/client/assets/{Users03-CqrzC-61.js → Users03-CXjzAJCL.js} +1 -1
- package/dist/client/assets/{X-Cpa-4tY8.js → X-zkjgovg6.js} +1 -1
- package/dist/client/assets/{XCircle-Cc5dbnAP.js → XCircle-BYWiuRFZ.js} +1 -1
- package/dist/client/assets/{XClose-BpJtEZCi.js → XClose-DIU1NlSR.js} +1 -1
- package/dist/client/assets/{Zap-DBmcAhRL.js → Zap-lj1IB3Nf.js} +1 -1
- package/dist/client/assets/{ZapSquare-C_9eVdy7.js → ZapSquare-BPMd-0Nq.js} +1 -1
- package/dist/client/assets/{access-gate-BdZx5t_O.js → access-gate-CC_HFjwI.js} +1 -1
- package/dist/client/assets/{add-section-modal-DhWmeBP-.js → add-section-modal-CaXRPsUD.js} +1 -1
- package/dist/client/assets/{agent-icon-BZwf-0L5.js → agent-icon-BGVU2GaU.js} +1 -1
- package/dist/client/assets/{agents-list-DR2RCf1X.js → agents-list-Cgyp228M.js} +1 -1
- package/dist/client/assets/{ai-providers-ZnGATH3-.js → ai-providers-D5odE7Er.js} +1 -1
- package/dist/client/assets/{alert-DuPRWm0k.js → alert-DnA0w3CQ.js} +1 -1
- package/dist/client/assets/{alert-dialog-DKZMEv6W.js → alert-dialog-CU8qwP7M.js} +1 -1
- package/dist/client/assets/{app-editor-DtkxS_dD.js → app-editor-bG4_7VOY.js} +1 -1
- package/dist/client/assets/{auth-CukKYLpe.js → auth-DP416MP8.js} +1 -1
- package/dist/client/assets/{auth-catchall-Dg_TsJNy.js → auth-catchall-Dp0nYMeG.js} +1 -1
- package/dist/client/assets/{auth-entry-BzZUp_Rx.js → auth-entry-DQBeFn7T.js} +1 -1
- package/dist/client/assets/{auth-split-layout-CGnvVGdP.js → auth-split-layout-W617Olul.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-CD7P-JRl.js → authenticate-and-persist-oauth-px99lMUu.js} +1 -1
- package/dist/client/assets/{automation-list-row-f_dKKdi2.js → automation-list-row-CQ8-iORV.js} +1 -1
- package/dist/client/assets/{automation-runs-DDvO1cio.js → automation-runs-BiVYhtNb.js} +1 -1
- package/dist/client/assets/{automations-BMRJoIQl.js → automations-D2W7YXBF.js} +1 -1
- package/dist/client/assets/{avatar-DlmhqAFz.js → avatar-Bm2GdcrI.js} +1 -1
- package/dist/client/assets/{badge-BsTm-Hzg.js → badge-CdIVMCyA.js} +1 -1
- package/dist/client/assets/{block-document-BPM0FyRM.js → block-document-DiRo_c7P.js} +1 -1
- package/dist/client/assets/{brand-context-BeGri80o.js → brand-context-CM5ByAO0.js} +1 -1
- package/dist/client/assets/{buckets-BW610lZ4.js → buckets-C8iseayd.js} +1 -1
- package/dist/client/assets/{bulk-category-panel-D2YNZHfv.js → bulk-category-panel-DBXYUOEz.js} +1 -1
- package/dist/client/assets/{calendar-Bk_nFZ1w.js → calendar-D5_9OFkY.js} +1 -1
- package/dist/client/assets/{capability-load-error-D2OMsdaf.js → capability-load-error-Dzx0DFbw.js} +1 -1
- package/dist/client/assets/{card-DmIrghk9.js → card-BsXyxxvJ.js} +1 -1
- package/dist/client/assets/{category-editor-BUNZZgoJ.js → category-editor-C4hDnuA5.js} +1 -1
- package/dist/client/assets/{chat-context-BPLKmgUf.js → chat-context-CI9n98Nh.js} +4 -5
- package/dist/client/assets/{checkbox-DiX_Aibc.js → checkbox-KIltkVU4.js} +1 -1
- package/dist/client/assets/{cli-auth-success-CG28X0PS.js → cli-auth-success-kc_yGiDz.js} +1 -1
- package/dist/client/assets/{collection-detail-AZu9wl9i.js → collection-detail-9Ava1ixp.js} +1 -1
- package/dist/client/assets/{collection-display-button-DDCltC7W.js → collection-display-button-JevqW4DP.js} +1 -1
- package/dist/client/assets/{collection-search-Bd39Ty93.js → collection-search-CINmlXbX.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-CtC7kITz.js → collection-table-wrapper-5OiODBX3.js} +1 -1
- package/dist/client/assets/{collection-tabs-DL4kPQ6M.js → collection-tabs-CN98fDiU.js} +1 -1
- package/dist/client/assets/{command-BHk6o7mF.js → command-Dvwl0hOJ.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-CuKivMvY.js → commerce-onboarding-9pxmCdus.js} +1 -1
- package/dist/client/assets/{companions-core-bbx0bQkr.js → companions-core-_jKf_ASy.js} +1 -1
- package/dist/client/assets/{connect-B4NgEj6a.js → connect-CdsuH3lD.js} +1 -1
- package/dist/client/assets/{connection-Dc6rTRVb.js → connection-BMYkWDLm.js} +1 -1
- package/dist/client/assets/{connection-card-Brf9stvI.js → connection-card-DBmjORWV.js} +1 -1
- package/dist/client/assets/{connection-detail-DVy64MLr.js → connection-detail-Cu7IFtlC.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-CW8Dvuhm.js → connection-form-helpers-G4fbDzDK.js} +1 -1
- package/dist/client/assets/{connections-BzFLeAiu.js → connections-Cx5X7Xnl.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-D2VYWLbF.js → decopilot-sse-pool-CMaq4dw5.js} +1 -1
- package/dist/client/assets/{dialog-eccDqfDY.js → dialog-EWobQe0o.js} +1 -1
- package/dist/client/assets/{domain-settings-_3LQLqGd.js → domain-settings-BIPb4aD7.js} +1 -1
- package/dist/client/assets/{drawer-BHAigiqw.js → drawer-Ux7BXZpv.js} +1 -1
- package/dist/client/assets/{dropdown-menu-VKVNItQB.js → dropdown-menu-w86iGtja.js} +1 -1
- package/dist/client/assets/{empty-state-BQBOhe9i.js → empty-state-B1NXmGrk.js} +1 -1
- package/dist/client/assets/{extract-connection-data-CpSXosWl.js → extract-connection-data-nNm41Q_U.js} +1 -1
- package/dist/client/assets/{file-explorer-jztB0bTV.js → file-explorer-By28LbnJ.js} +1 -1
- package/dist/client/assets/{form-DTe5FR5B.js → form-DKQf1SuG.js} +1 -1
- package/dist/client/assets/{general-bk_tZOsT.js → general-BiB1Kl-j.js} +1 -1
- package/dist/client/assets/{github-repo-picker-CXx_pb1g.js → github-repo-picker-DIuZuT1N.js} +1 -1
- package/dist/client/assets/{hooks-DG7ciaea.js → hooks-CISw4arr.js} +1 -1
- package/dist/client/assets/{index-Brt7IRdN.js → index-BVXsyVeE.js} +5 -5
- package/dist/client/assets/{index-QYD1kCPQ.js → index-BZUcNCam.js} +1 -1
- package/dist/client/assets/{index-Dc6BHLcV.js → index-COMWr3K_.js} +3 -3
- package/dist/client/assets/{index-BMoDCepY.js → index-CPeoZUeU.js} +1 -1
- package/dist/client/assets/{index-Ddr2_EhW.js → index-Cb6pJrm4.js} +1 -1
- package/dist/client/assets/{index-DoPXbjwA.js → index-ClwfVk1w.js} +1 -1
- package/dist/client/assets/{index-BauNjP_Q.js → index-DJwZ_Qmr.js} +1 -1
- package/dist/client/assets/{index-Dg3mj-78.js → index-EBvscSpq.js} +1 -1
- package/dist/client/assets/{index-Czz8zq-M.js → index-LC5zcR1I.js} +3 -3
- package/dist/client/assets/{index-CBeLWIus.js → index-_d3BXv-c.js} +1 -1
- package/dist/client/assets/{index-D0mv-0LW.js → index-r3fILkXo.js} +1 -1
- package/dist/client/assets/{index-redirect-DtGSaXFd.js → index-redirect-D1uIGUCd.js} +1 -1
- package/dist/client/assets/{input-C4hWY6oj.js → input-CSgoj-o-.js} +1 -1
- package/dist/client/assets/{integration-icon-d7X2fLnq.js → integration-icon-BKsEvs2_.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-CFjVr7QF.js → invite-member-dialog-DVXh9An9.js} +1 -1
- package/dist/client/assets/{label-C7Ydt9op.js → label-C1j9OAMJ.js} +1 -1
- package/dist/client/assets/{layout-DqNW2J-G.js → layout-BRc7Dnn4.js} +1 -1
- package/dist/client/assets/{login-BeK2JYf_.js → login-DcAqmmV3.js} +1 -1
- package/dist/client/assets/{mcp-oauth-CbqNfo_L.js → mcp-oauth-BtJyo-tO.js} +1 -1
- package/dist/client/assets/{members--Y5icCSA.js → members-C-JZ2DHT.js} +1 -1
- package/dist/client/assets/{monaco-editor-DDHgiR5s.js → monaco-editor-CoCGu6F4.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-CFnSQJPb.js → monitoring-stats-row-a4iaQcdD.js} +1 -1
- package/dist/client/assets/{multi-select-5bCKTJK_.js → multi-select-BVX9sRI4.js} +1 -1
- package/dist/client/assets/{oauth-callback-Cr3LPs-p.js → oauth-callback-DeC6HbES.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-D3uVpONF.js → oauth-callback-ai-provider-BpHJ5ay8.js} +1 -1
- package/dist/client/assets/{onboarding-BveJcJSR.js → onboarding-vMt8nc2t.js} +1 -1
- package/dist/client/assets/{org-layout-DYIHjm60.js → org-layout-CBhZFDdB.js} +1 -1
- package/dist/client/assets/{organization-choice-CpGPmWiP.js → organization-choice-DfWC55Nh.js} +1 -1
- package/dist/client/assets/{orgs-DTu-EbUr.js → orgs-C_l05NL7.js} +1 -1
- package/dist/client/assets/{page-seo-form-DTHFP-Ey.js → page-seo-form-tC5pgxZw.js} +1 -1
- package/dist/client/assets/{popover-Bd-jbefm.js → popover-BKI8kJQO.js} +1 -1
- package/dist/client/assets/{post-editor-CuWFbgIg.js → post-editor-UWb7kwB7.js} +1 -1
- package/dist/client/assets/{primitives-DPjI8jZN.js → primitives-VbgBF80i.js} +1 -1
- package/dist/client/assets/{profile-Zik8L35T.js → profile-DgGrFBV2.js} +1 -1
- package/dist/client/assets/project-app-view-QN1zvyVP.js +1 -0
- package/dist/client/assets/record-editor-B1lYBA30.js +1 -0
- package/dist/client/assets/{redirect-editor-B-7oGrzI.js → redirect-editor-e4XkOceV.js} +1 -1
- package/dist/client/assets/registry-BQHoENIj.js +2 -0
- package/dist/client/assets/{registry-layout-C5N6gB_V.js → registry-layout-BHEZBHuH.js} +1 -1
- package/dist/client/assets/{reports-Bxbv432E.js → reports-DPNA9mnB.js} +1 -1
- package/dist/client/assets/{require-capability-BksNuDZT.js → require-capability-DCIX-8lv.js} +1 -1
- package/dist/client/assets/{required-auth-layout-CQEgmxXV.js → required-auth-layout-BWYKkhAX.js} +1 -1
- package/dist/client/assets/{reset-password-BESGgxg0.js → reset-password-Bv363PQT.js} +1 -1
- package/dist/client/assets/{roles-bUWRe9YV.js → roles-BkFLGzPt.js} +1 -1
- package/dist/client/assets/{search-input-BORWq34N.js → search-input-CcaHjEA0.js} +1 -1
- package/dist/client/assets/{secrets-CJ4YV6qZ.js → secrets-DScsiPB9.js} +1 -1
- package/dist/client/assets/{sections-editor-CoWDmj5O.js → sections-editor-CNw058mf.js} +1 -1
- package/dist/client/assets/{select-zQuR8Sqj.js → select-_ZSbK5or.js} +1 -1
- package/dist/client/assets/{select-model-CUnyew1j.js → select-model-C8qAGDWv.js} +1 -1
- package/dist/client/assets/{self-tool-result-CMg7eAwe.js → self-tool-result-BA6pr-4V.js} +1 -1
- package/dist/client/assets/{seo-editor-bQKyo-SO.js → seo-editor-lljIqdb0.js} +1 -1
- package/dist/client/assets/{settings-layout-BVogLuxy.js → settings-layout-B-OwC_bI.js} +1 -1
- package/dist/client/assets/{settings-section-JZZlweID.js → settings-section-DPVJu564.js} +1 -1
- package/dist/client/assets/{shell-controls-Ddct7BqP.js → shell-controls-BPL1nCa7.js} +1 -1
- package/dist/client/assets/{shell-layout-ZlXt23su.js → shell-layout-8Rc3738k.js} +1 -1
- package/dist/client/assets/{sidebar-BkStRxDT.js → sidebar-mItyCeAc.js} +1 -1
- package/dist/client/assets/{skeleton-D-I_pOuk.js → skeleton-CnXuFsfR.js} +1 -1
- package/dist/client/assets/{spinner-DD08wc6q.js → spinner-DPM-yX6b.js} +1 -1
- package/dist/client/assets/{sso-D4qzo6G5.js → sso-k8mvFyVG.js} +1 -1
- package/dist/client/assets/{store-vW7og05p.js → store-LQVj6L0g.js} +1 -1
- package/dist/client/assets/store-registry-DnaLRiEb.js +2 -0
- package/dist/client/assets/{studio-tools-BPPCCWXf.js → studio-tools-Bn-loM7_.js} +1 -1
- package/dist/client/assets/{switch-DxdQ5vrY.js → switch-DyFKNxvZ.js} +1 -1
- package/dist/client/assets/{tab-id-FQNpqTpn.js → tab-id-MI30AnUC.js} +1 -1
- package/dist/client/assets/{table-ihueNrlC.js → table-D1r0Tm53.js} +1 -1
- package/dist/client/assets/{tabs-CqdH0tsp.js → tabs-DXHIfvuK.js} +1 -1
- package/dist/client/assets/{textarea-GdS0gjtE.js → textarea-BmIP24hL.js} +1 -1
- package/dist/client/assets/{toggle-group-CzY0_WrP.js → toggle-group-DTt3nPYc.js} +1 -1
- package/dist/client/assets/{toolbar-BpklR9pD.js → toolbar-CUKMbJln.js} +1 -1
- package/dist/client/assets/{tooltip-BNhPNrKe.js → tooltip-DnA85u6o.js} +1 -1
- package/dist/client/assets/{use-ai-providers-DBSETegu.js → use-ai-providers-F6SYEEw_.js} +1 -1
- package/dist/client/assets/{use-automations-DxITYrKN.js → use-automations-DyDkufEr.js} +1 -1
- package/dist/client/assets/{use-autosave-D991EwNV.js → use-autosave-DQEMmTVM.js} +1 -1
- package/dist/client/assets/{use-capability-Da-zOQM3.js → use-capability-BVeJXBCJ.js} +1 -1
- package/dist/client/assets/{use-clock-tick-DcvtsA2A.js → use-clock-tick-C6s8dFH5.js} +1 -1
- package/dist/client/assets/{use-connection-BuMQx4ki.js → use-connection-CmZN0ezt.js} +1 -1
- package/dist/client/assets/{use-copy-DNDEIbKS.js → use-copy-D3jANsQP.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-D6RB0TgY.js → use-create-virtual-mcp-DKwlPHVT.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-Cgb6YpZp.js → use-debounced-autosave-DJA_sRkV.js} +1 -1
- package/dist/client/assets/{use-debounced-value-BNGiIib3.js → use-debounced-value-BLsBYGK2.js} +1 -1
- package/dist/client/assets/{use-deco-credits-XnJiEJuK.js → use-deco-credits-CEAP7uUP.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-C7kOxyI8.js → use-decopilot-events-DVk7NfH-.js} +1 -1
- package/dist/client/assets/{use-delete-connection-DIVEu8lp.js → use-delete-connection-H-9PoiDP.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-BMY0jdD6.js → use-deployment-admin-BvrbtokR.js} +1 -1
- package/dist/client/assets/{use-file-configs-CE8ExSwD.js → use-file-configs-CAP01vv_.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-BpR1k-qF.js → use-infinite-scroll-B1roqY6U.js} +1 -1
- package/dist/client/assets/{use-join-requests-CdUg8tEq.js → use-join-requests-D7SWixFc.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-BR6D4nc3.js → use-mcp-auth-status--ulHnwDi.js} +1 -1
- package/dist/client/assets/{use-mcp-client-2_fvLjiP.js → use-mcp-client-ChuqcZtd.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-BvzMqHnQ.js → use-mcp-tools-DZnsWrtC.js} +1 -1
- package/dist/client/assets/{use-members-2SOgYNjB.js → use-members-CAakmVIA.js} +1 -1
- package/dist/client/assets/{use-mobile-D5Acv4lR.js → use-mobile-1oBCf8eJ.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-D-4iER-1.js → use-navigate-to-agent-BGDRz2UZ.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-4_haKjM7.js → use-org-auth-client-y_c9xm6l.js} +1 -1
- package/dist/client/assets/{use-org-sso-vn-1LtBS.js → use-org-sso-BIf_80VE.js} +1 -1
- package/dist/client/assets/{use-organization-roles-BKPcU92N.js → use-organization-roles-DEfoqn2x.js} +1 -1
- package/dist/client/assets/{use-organization-settings-DJptHq-J.js → use-organization-settings-DXpnlD7q.js} +1 -1
- package/dist/client/assets/{use-registry-connections-DzAzSwb8.js → use-registry-connections-OpyDLpkT.js} +1 -1
- package/dist/client/assets/{use-secrets-B1RdRaKQ.js → use-secrets-D7-SXEPt.js} +1 -1
- package/dist/client/assets/{use-status-sounds-BYb6xNbe.js → use-status-sounds-B0jaqMPf.js} +1 -1
- package/dist/client/assets/{use-tags-BW-81eIo.js → use-tags-B3vu8ZRv.js} +1 -1
- package/dist/client/assets/{use-view-mode-CNNH_8Ku.js → use-view-mode-BrR3n5rp.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-BisiWdxz.js → use-virtual-mcp-DuHpEfQz.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-Ccg5a1hc.js +1 -0
- package/dist/client/assets/{useQueries-Bbci3K-m.js → useQueries-BxO15kGg.js} +1 -1
- package/dist/client/assets/{useRouterState-oUZ6nlDV.js → useRouterState-CNYwtycj.js} +1 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-ZbGkC2Wx.js +1 -0
- package/dist/client/assets/{users-B1LyyDda.js → users-Dj7hST_K.js} +1 -1
- package/dist/client/assets/{variant-calendar-DIM527zt.js → variant-calendar-URaypSlx.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-CjhqURhq.js → view-mode-toggle-GBGarfca.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +2 -3
- package/dist/server/server.js +2 -3
- package/package.json +1 -1
- package/dist/client/assets/project-app-view-hhQ2zFtc.js +0 -1
- package/dist/client/assets/record-editor-BFWvdGcG.js +0 -1
- package/dist/client/assets/registry-Cvci0c2h.js +0 -2
- package/dist/client/assets/store-registry-C1MZanSQ.js +0 -2
- package/dist/client/assets/useInfiniteQuery-gQfHKtAA.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-B0gKYiYE.js +0 -1
package/dist/server/cli.js
CHANGED
|
@@ -1252,7 +1252,7 @@ Usage: deco services <up|down|status>`),process.exit(1)}}var xh1=O(()=>{$v()});f
|
|
|
1252
1252
|
`.execute($);if(Number(W.rows[0]?.cnt)===0){console.warn(`Failed to migrate ${J}/${K}, keeping in old table`);continue}}await Mf`
|
|
1253
1253
|
DELETE FROM kysely_migration WHERE name = ${X}
|
|
1254
1254
|
`.execute($)}}async function Vd1($){await eb6($),await $y6($);let Z=new kd1({db:$,provider:{getMigrations:()=>Promise.resolve(Sc0)}}),{error:X,results:Q}=await Z.migrateToLatest(),Y=0;if(Q?.forEach((G)=>{if(G.status==="Success")Y++;else if(G.status==="Error")console.error(`Failed to execute migration "${G.migrationName}"`)}),X)throw console.error("Failed to migrate"),console.error(X),X;return Y}async function Zy6($){let{keepOpen:Z=!1,database:X,skipBetterAuth:Q=!1}=$??{},Y="skipped";if(!Q&&!X)Y=await Eg0();let G=X??X6(),J=async()=>{if(!Z&&!X)await mF(G).catch((K)=>{console.warn("Warning: Error closing database:",K)})};try{let K=await Vd1(G.db);return await J(),{betterAuth:Y,kysely:K}}catch(K){throw await J(),K}}async function Xy6(){let $=X6(),Z=new kd1({db:$.db,provider:{getMigrations:()=>Promise.resolve(Sc0)}}),{error:X,results:Q}=await Z.migrateDown();if(Q?.forEach((Y)=>{if(Y.status==="Success")console.log(`\u2705 Migration "${Y.migrationName}" rolled back successfully`);else if(Y.status==="Error")console.error(`\u274C Failed to rollback migration "${Y.migrationName}"`)}),X)throw console.error("Failed to rollback migration"),console.error(X),X}var _d1=O(()=>{Md1();zg0();G7()});async function J50($){let Z={...process.env},X=X00($,Z);console.log(wN1(X.settings.encryptionKey));let{ensureServices:Q}=await Promise.resolve().then(() => (z$0(),E$0)),{outputs:Y,services:G}=await Q({home:X.settings.dataDir,externalDatabaseUrl:X.externalDatabaseUrl,externalNatsUrl:X.externalNatsUrl});if(!X.skipMigrations){let{migrateBetterAuth:K}=await Promise.resolve().then(() => (zg0(),Hc1));await K(Y.databaseUrl);let{createDatabase:W}=await Promise.resolve().then(() => (G7(),ku1)),{migrateToLatest:H}=await Promise.resolve().then(() => (_d1(),Cd1)),N=W(Y.databaseUrl);await H({keepOpen:!0,database:N,skipBetterAuth:!0})}let J={...X.settings,databaseUrl:Y.databaseUrl,natsUrls:Y.natsUrls,...Y.s3?{s3Endpoint:Y.s3.endpoint,s3Bucket:Y.s3.bucket,s3AccessKeyId:Y.s3.accessKeyId,s3SecretAccessKey:Y.s3.secretAccessKey,s3ForcePathStyle:Y.s3.forcePathStyle}:{},...Y.natsTunnel?{natsPublicUrl:Y.natsTunnel.publicUrl,natsAccountJwt:Y.natsTunnel.accountJwt,natsAccountSigningKey:Y.natsTunnel.accountSigningKey,natsOperatorJwt:Y.natsTunnel.operatorJwt,natsTunnelPublicEnabled:!0,natsCredsPath:Y.natsTunnel.credsPath}:{}};return vh1(J),{settings:J,services:G.map((K)=>({name:K.name==="PostgreSQL"?"Postgres":K.name,port:K.port})),managedServiceNames:G.filter((K)=>K.owner==="managed").map((K)=>K.name)}}var Vc0=O(()=>{$v();v8()});var fd1={};P0(fd1,{updateService:()=>ED,subscribeCliState:()=>xc0,setTuiConsoleIntercepted:()=>K50,setServerUrl:()=>ed,setMigrationsDone:()=>sd,setDevMode:()=>Gy6,resetCliStateForTests:()=>Qy6,isTuiConsoleIntercepted:()=>W50,getCliState:()=>_c0,addLogEntry:()=>oF});function xd1(){return{services:[{name:"Postgres",status:"pending",port:0},{name:"NATS",status:"pending",port:0}],migrationsStatus:"pending",serverUrl:null,logs:[]}}function Qy6(){AQ=xd1()}function Yy6(){return[{name:"Postgres",status:"pending",port:0},{name:"NATS",status:"pending",port:0}]}function ad(){for(let $ of Cc0)$()}function _c0(){return AQ}function xc0($){return Cc0.add($),()=>Cc0.delete($)}function ED($){AQ={...AQ,services:AQ.services.map((Z)=>Z.name===$.name?$:Z)},ad()}function sd(){AQ={...AQ,migrationsStatus:"done"},ad()}function ed($){AQ={...AQ,serverUrl:$},ad()}function oF($){let Z=[...AQ.logs,$];AQ={...AQ,logs:Z.length>500?Z.slice(-500):Z},ad()}function Gy6(){AQ={...AQ,services:[...Yy6(),{name:"API",status:"pending",port:0},{name:"Vite",status:"pending",port:0}]},ad()}function K50($){vd1=$}function W50(){return vd1}var AQ,Cc0,vd1=!1;var zD=O(()=>{AQ=xd1();Cc0=new Set});import{createServer as bd1}from"net";function Jy6($){return new Promise((Z)=>{let X=bd1();X.once("error",()=>Z(!1)),X.listen($,"0.0.0.0",()=>{X.close(()=>Z(!0))})})}async function $m($){if(await Jy6($))return $;let Z=await new Promise((X,Q)=>{let Y=bd1();Y.once("error",Q),Y.listen(0,"0.0.0.0",()=>{let G=Y.address(),J=typeof G==="object"&&G?G.port:0;Y.close(()=>X(J))})});return console.warn(`Port ${$} is in use, using port ${Z} instead.`),Z}var vc0=()=>{};function Zm($){return $.replace(/\x1b\[[0-9;]*m/g,"")}var fc0={};P0(fc0,{startDevServer:()=>Wy6});import{join as Ky6}from"path";function yd1($){let Z=$.getReader(),X=new TextDecoder,Q="";function Y(){let G=Q.split(`
|
|
1255
|
-
`);Q=G.pop()??"";for(let J of G){let K=Zm(J).replace(/^\[\d+\]\s*/,"").trim();if(!K)continue;oF({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:K})}}(async()=>{for(;;){let{done:G,value:J}=await Z.read();if(G)break;Q+=X.decode(J,{stream:!0}),Y()}if(Q.trim()){let G=Zm(Q).replace(/^\[\d+\]\s*/,"").trim();if(G)oF({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:G})}})()}async function Wy6($){let{baseUrl:Z,noTui:X}=$,Q=process.env.HOST==="0.0.0.0"&&Boolean(process.env.PORT),Y=Q?process.env.PORT:$.vitePort,G=Z||`http://localhost:${Y}`,J=Q?await $m(Number(Y)+1):await $m(Number($.port)),{settings:K,services:W,managedServiceNames:H}=await J50({port:String(J),home:$.home,baseUrl:$.baseUrl,localMode:$.localMode,skipMigrations:$.skipMigrations,noTui:$.noTui,vitePort:$.vitePort});for(let L of W)ED({name:L.name,status:"ready",port:L.port});sd();let N=Ky6(import.meta.dir,"..","..","..","..",".."),U=X===!0,F=Bun.spawn(["bun","run","dev:servers"],{cwd:N,env:{...process.env,PORT:String(K.port),VITE_PORT:String(Y),DATABASE_URL:K.databaseUrl,NATS_URL:K.natsUrls.join(","),NODE_ENV:K.nodeEnv,BASE_URL:G,DECOCMS_LOCAL_MODE:String(K.localMode),DECOCMS_HOME:K.dataDir,DATA_DIR:K.dataDir,DECO_CLI:"1",...K.s3Endpoint?{S3_ENDPOINT:K.s3Endpoint,S3_BUCKET:K.s3Bucket??"",S3_ACCESS_KEY_ID:K.s3AccessKeyId??"",S3_SECRET_ACCESS_KEY:K.s3SecretAccessKey??"",S3_FORCE_PATH_STYLE:String(K.s3ForcePathStyle)}:{},...K.natsPublicUrl&&K.natsAccountJwt&&K.natsAccountSigningKey?{NATS_PUBLIC_URL:K.natsPublicUrl,NATS_ACCOUNT_JWT:K.natsAccountJwt,NATS_ACCOUNT_SIGNING_KEY:K.natsAccountSigningKey,NATS_OPERATOR_JWT:K.natsOperatorJwt??"",NATS_TUNNEL_PUBLIC_ENABLED:"true",...K.natsCredsPath?{NATS_CREDS:K.natsCredsPath}:{}}:{}},stdio:["inherit",U?"inherit":"pipe",U?"inherit":"pipe"]});if(!U)yd1(F.stdout),yd1(F.stderr);ed(G),ED({name:"Vite",status:"ready",port:Number(Y)}),ED({name:"API",status:"ready",port:Number(K.port)});let B=async(L)=>{if(F.kill(L),await F.exited,H.length>0){let{stopServices:D}=await Promise.resolve().then(() => (z$0(),E$0));await D(K.dataDir)}};return process.on("SIGINT",()=>B("SIGINT")),process.on("SIGTERM",()=>B("SIGTERM")),{port:Number(Y),process:F}}var bc0=O(()=>{Vc0();zD();vc0()});var H50;var yc0=O(()=>{H50={name:"decocms",version:"4.163.0",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"}}});import{Box as Ny6,Text as gd1}from"ink";import{jsx as Uy6,jsxs as hd1}from"react/jsx-runtime";function ud1({version:$}){return hd1(Ny6,{flexDirection:"column",marginTop:1,children:[c$0.map((Z,X)=>Uy6(gd1,{color:l$0[X],children:Z},X)),hd1(gd1,{dimColor:!0,children:[" v",$]})]})}var cd1=O(()=>{cd()});import{Box as jD,Text as rF}from"ink";import{Spinner as Fy6}from"@inkjs/ui";import{jsx as VY,jsxs as kf}from"react/jsx-runtime";function ld1({status:$}){if($==="pending")return VY(Fy6,{label:""});return VY(rF,{color:"green",children:"\u2713"})}function wy6($){return`${$.name}: ${$.port||"...."}`}function dd1({services:$,migrationsStatus:Z,home:X,serverUrl:Q}){return kf(jD,{flexDirection:"column",paddingBottom:1,children:[VY(ud1,{version:H50.version}),VY(jD,{marginBottom:1,children:VY(rF,{dimColor:!0,children:"\u2500".repeat(80)})}),VY(jD,{children:kf(rF,{dimColor:!0,children:["Home: ",X]})}),kf(jD,{gap:2,children:[$.map((Y)=>kf(jD,{gap:1,children:[VY(rF,{children:wy6(Y)}),VY(ld1,{status:Y.status})]},Y.name)),kf(jD,{gap:1,children:[VY(rF,{children:"Migrations"}),VY(ld1,{status:Z})]})]}),VY(jD,{children:Q?kf(rF,{children:["Open in browser: ",VY(rF,{color:"cyan",children:Q})]}):VY(rF,{dimColor:!0,children:"Starting..."})})]})}var md1=O(()=>{yc0();cd1()});import{Box as By6,Text as Xm}from"ink";import{jsx as gc0,jsxs as hc0}from"react/jsx-runtime";function Oy6($){if($>=500)return"red";if($>=400)return"yellow";if($>=300)return"cyan";return"green"}function id1({logs:$}){return gc0(By6,{flexDirection:"column",children:$.map((Z,X)=>{if(Z.rawLine)return gc0(Xm,{dimColor:!0,children:Z.rawLine},X);let Q=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return hc0(Xm,{children:[hc0(Xm,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),gc0(Xm,{color:Oy6(Z.status),children:Z.status}),hc0(Xm,{dimColor:!0,children:[" ",Q.padStart(8)]})]},X)})})}var nd1=()=>{};var uc0={};P0(uc0,{App:()=>Ey6});import{Box as Ly6}from"ink";import{useSyncExternalStore as Dy6}from"react";import{jsx as pd1,jsxs as zy6}from"react/jsx-runtime";function Ey6({home:$}){let Z=Dy6(xc0,_c0);return zy6(Ly6,{flexDirection:"column",children:[pd1(dd1,{services:Z.services,migrationsStatus:Z.migrationsStatus,home:$,serverUrl:Z.serverUrl}),pd1(id1,{logs:Z.logs})]})}var cc0=O(()=>{md1();nd1();zD()});var $J="thread-gate",GN="decopilot-hosted-harness",hG="automations",aF="background-tools";var td1="6";function od1($){return{name:"decocms",systemDatabaseUrl:$.systemDatabaseUrl,systemDatabaseSchemaName:"dbos",systemDatabasePoolSize:$.poolSize,runAdminServer:!1,executorID:$.executorID,applicationVersion:td1,...$.listenQueues!==void 0?{listenQueues:$.listenQueues}:{}}}var rd1=()=>{};function jy6(){let $=(process.env.BUN_OPTIONS??"").split(/\s+/).filter(Boolean);return[...process.argv.slice(1),...$]}function lc0($,Z){for(let X=0;X<$.length;X++){let Q=$[X];if(Q===void 0)continue;if(Q===Z)return $[X+1];if(Q.startsWith(`${Z}=`))return Q.slice(Z.length+1)}return}function ad1(){let $=jy6();if($.includes("--cpu-prof")){console.log(JSON.stringify({msg:"cpu-profiling-active",dir:lc0($,"--cpu-prof-dir")??process.cwd(),name:lc0($,"--cpu-prof-name"),markdown:$.includes("--cpu-prof-md"),intervalUs:Number(lc0($,"--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.'}))}function sd1(){if(process.env.HEAP_WATCH!=="1")return()=>{};let $=Number(process.env.HEAP_WATCH_INTERVAL_MS??60000),Z=async()=>{let X=BD();if(!X)return;let Q={};try{let{heapStats:Y}=await import("bun:jsc"),G=Y(),J=Object.entries(G.objectTypeCounts).sort((K,W)=>W[1]-K[1]).slice(0,20);Q={objectCount:G.objectCount,heapSize:G.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,...Q}))};return Z().catch(()=>{}),N50=setInterval(()=>void Z().catch(()=>{}),$),N50.unref?.(),process.on("SIGUSR2",()=>{try{let X=Bun.generateHeapSnapshot("v8"),Q=typeof X==="string"?X:JSON.stringify(X),Y=`/tmp/heap-${process.pid}-${Date.now()}.heapsnapshot`;Bun.write(Y,Q),console.log(JSON.stringify({msg:"heap-snapshot-written",path:Y}))}catch(X){console.error("[heap-watch] snapshot failed:",X)}}),()=>{if(N50)clearInterval(N50)}}var N50;var ed1=()=>{};import*as Py6 from"bun:jsc";function $m1(){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{Ay6()}catch(G){return console.error("[stall-watchdog] failed to start sampling profiler:",G),()=>{}}let X,Q=performance.now()+Z,Y=()=>{let G=performance.now(),J=G-Q;Q=G+Z;let K=[];try{K=Ty6()?.traces??[]}catch{}if(J>$&&K.length>0){let W=new Map;for(let N of K){let U=N.frames.find((B)=>B.sourceURL&&!/Unknown Executable/.test(B.category??""))??N.frames[0];if(!U)continue;let F=(U.sourceURL??"?").replace(/^.*\/node_modules\//,"node_modules/"),w=`${U.name??"?"} @ ${F}:${U.line??"?"}`;W.set(w,(W.get(w)??0)+1)}let H=[...W.entries()].sort((N,U)=>U[1]-N[1]).slice(0,8).map(([N,U])=>({frame:N,count:U}));console.warn(JSON.stringify({msg:"stall-stack",ts:new Date().toISOString(),lagMs:Math.round(J),samplesInWindow:K.length,top:H}))}X=setTimeout(Y,Z),X.unref?.()};return X=setTimeout(Y,Z),X.unref?.(),()=>{if(X)clearTimeout(X)}}var Ay6,Ty6;var Zm1=O(()=>{({startSamplingProfiler:Ay6,samplingProfilerStackTraces:Ty6}=Py6)});function Xm1(){ad1();let $=[sd1(),ju1(),$m1()];return()=>{for(let Z of $)Z()}}var Qm1=O(()=>{Wg0();ed1();Zm1()});var PD=_((Ym1)=>{Object.defineProperty(Ym1,"__esModule",{value:!0});Ym1.RepublishHeaders=Ym1.DirectMsgHeaders=Ym1.JsHeaders=Ym1.AdvisoryKind=void 0;Ym1.isOrderedPushConsumerOptions=Iy6;Ym1.isPullConsumer=Ry6;Ym1.isPushConsumer=qy6;Ym1.isBoundPushConsumerOptions=My6;function Iy6($){if($&&typeof $==="object")return"name_prefix"in $||"deliver_subject_prefix"in $||"filter_subjects"in $||"filter_subject"in $||"deliver_policy"in $||"opt_start_seq"in $||"opt_start_time"in $||"replay_policy"in $||"inactive_threshold"in $||"headers_only"in $||"deliver_prefix"in $;return!1}function Ry6($){return $.isPullConsumer()}function qy6($){return $.isPushConsumer()}function My6($){if($&&typeof $==="object")return"deliver_subject"in $||"deliver_group"in $||"idle_heartbeat"in $;return!1}Ym1.AdvisoryKind={API:"api_audit",StreamAction:"stream_action",ConsumerAction:"consumer_action",SnapshotCreate:"snapshot_create",SnapshotComplete:"snapshot_complete",RestoreCreate:"restore_create",RestoreComplete:"restore_complete",MaxDeliver:"max_deliver",Terminated:"terminated",Ack:"consumer_ack",StreamLeaderElected:"stream_leader_elected",StreamQuorumLost:"stream_quorum_lost",ConsumerLeaderElected:"consumer_leader_elected",ConsumerQuorumLost:"consumer_quorum_lost"};Ym1.JsHeaders={StreamSourceHdr:"Nats-Stream-Source",LastConsumerSeqHdr:"Nats-Last-Consumer",LastStreamSeqHdr:"Nats-Last-Stream",ConsumerStalledHdr:"Nats-Consumer-Stalled",MessageSizeHdr:"Nats-Msg-Size",RollupHdr:"Nats-Rollup",RollupValueSubject:"sub",RollupValueAll:"all",PendingMessagesHdr:"Nats-Pending-Messages",PendingBytesHdr:"Nats-Pending-Bytes",RequiredApiLevel:"Nats-Required-Api-Level"};Ym1.DirectMsgHeaders={Stream:"Nats-Stream",Sequence:"Nats-Sequence",TimeStamp:"Nats-Time-Stamp",Subject:"Nats-Subject",LastSequence:"Nats-Last-Sequence",NumPending:"Nats-Num-Pending"};Ym1.RepublishHeaders={Stream:"Nats-Stream",Subject:"Nats-Subject",Sequence:"Nats-Sequence",LastSequence:"Nats-Last-Sequence",Size:"Nats-Msg-Size"}});var CY=_((Jm1)=>{Object.defineProperty(Jm1,"__esModule",{value:!0});Jm1.TD=Jm1.TE=Jm1.Empty=void 0;Jm1.encode=by6;Jm1.decode=yy6;Jm1.Empty=new Uint8Array(0);Jm1.TE=new TextEncoder;Jm1.TD=new TextDecoder;function fy6(...$){let Z=0;for(let Y=0;Y<$.length;Y++)Z+=$[Y].length;let X=new Uint8Array(Z),Q=0;for(let Y=0;Y<$.length;Y++)X.set($[Y],Q),Q+=$[Y].length;return X}function by6(...$){let Z=[];for(let X=0;X<$.length;X++)Z.push(Jm1.TE.encode($[X]));if(Z.length===0)return Jm1.Empty;if(Z.length===1)return Z[0];return fy6(...Z)}function yy6($){if(!$||$.length===0)return"";return Jm1.TD.decode($)}});var _Y=_((Hm1)=>{Object.defineProperty(Hm1,"__esModule",{value:!0});Hm1.errors=Hm1.PermissionViolationError=Hm1.NoRespondersError=Hm1.TimeoutError=Hm1.RequestError=Hm1.ProtocolError=Hm1.ConnectionError=Hm1.DrainingConnectionError=Hm1.ClosedConnectionError=Hm1.AuthorizationError=Hm1.UserAuthenticationExpiredError=Hm1.InvalidOperationError=Hm1.InvalidArgumentError=Hm1.InvalidSubjectError=void 0;class mc0 extends Error{constructor($,Z){super(`illegal subject: '${$}'`,Z);this.name="InvalidSubjectError"}}Hm1.InvalidSubjectError=mc0;class U50 extends Error{constructor($,Z){super($,Z);this.name="InvalidArgumentError"}static format($,Z,X){if(Array.isArray(Z)&&Z.length>1)Z=Z[0];if(Array.isArray($))$=$.map((Q)=>`'${Q}'`),$=$.join(",");else $=`'${$}'`;return new U50(`${$} ${Z}`,X)}}Hm1.InvalidArgumentError=U50;class ic0 extends Error{constructor($,Z){super($,Z);this.name="InvalidOperationError"}}Hm1.InvalidOperationError=ic0;class F50 extends Error{constructor($,Z){super($,Z);this.name="UserAuthenticationExpiredError"}static parse($){if($.toLowerCase().indexOf("user authentication expired")!==-1)return new F50($);return null}}Hm1.UserAuthenticationExpiredError=F50;class w50 extends Error{constructor($,Z){super($,Z);this.name="AuthorizationError"}static parse($){let Z=["authorization violation","account authentication expired","authentication timeout"],X=$.toLowerCase();for(let Q=0;Q<Z.length;Q++)if(X.indexOf(Z[Q])!==-1)return new w50($);return null}}Hm1.AuthorizationError=w50;class nc0 extends Error{constructor(){super("closed connection");this.name="ClosedConnectionError"}}Hm1.ClosedConnectionError=nc0;class pc0 extends Error{constructor(){super("connection draining");this.name="DrainingConnectionError"}}Hm1.DrainingConnectionError=pc0;class tc0 extends Error{constructor($,Z){super($,Z);this.name="ConnectionError"}}Hm1.ConnectionError=tc0;class oc0 extends Error{constructor($,Z){super($,Z);this.name="ProtocolError"}}Hm1.ProtocolError=oc0;class rc0 extends Error{constructor($="",Z){super($,Z);this.name="RequestError"}isNoResponders(){return this.cause instanceof B50}}Hm1.RequestError=rc0;class ac0 extends Error{constructor($){super("timeout",$);this.name="TimeoutError"}}Hm1.TimeoutError=ac0;class B50 extends Error{subject;constructor($,Z){super(`no responders: '${$}'`,Z);this.subject=$,this.name="NoResponders"}}Hm1.NoRespondersError=B50;class O50 extends Error{operation;subject;queue;constructor($,Z,X,Q,Y){super($,Y);this.name="PermissionViolationError",this.operation=Z,this.subject=X,this.queue=Q}static parse($){if(($?$.toLowerCase():"").indexOf("permissions violation")===-1)return null;let X="publish",Q="",Y=void 0,G=$.match(/(Publish|Subscription) to "(\S+)"/);if(G){if(X=G[1].toLowerCase(),Q=G[2],X==="subscription"){let J=$.match(/using queue "(\S+)"/);if(J)Y=J[1]}}return new O50($,X,Q,Y)}}Hm1.PermissionViolationError=O50;Hm1.errors={AuthorizationError:w50,ClosedConnectionError:nc0,ConnectionError:tc0,DrainingConnectionError:pc0,InvalidArgumentError:U50,InvalidOperationError:ic0,InvalidSubjectError:mc0,NoRespondersError:B50,PermissionViolationError:O50,ProtocolError:oc0,RequestError:rc0,TimeoutError:ac0,UserAuthenticationExpiredError:F50}});var ZJ=_((Bm1)=>{Object.defineProperty(Bm1,"__esModule",{value:!0});Bm1.SimpleMutex=Bm1.Perf=void 0;Bm1.extend=$g6;Bm1.render=Zg6;Bm1.timeout=Xg6;Bm1.delay=Qg6;Bm1.deadline=Yg6;Bm1.deferred=ec0;Bm1.debugDeferred=Gg6;Bm1.shuffle=Jg6;Bm1.collect=Kg6;Bm1.jitter=wm1;Bm1.backoff=Wg6;Bm1.nanos=Hg6;Bm1.millis=Ng6;Bm1.randomToken=wg6;var ey6=CY(),sc0=_Y();function $g6($,...Z){for(let X=0;X<Z.length;X++){let Q=Z[X];Object.keys(Q).forEach(function(Y){$[Y]=Q[Y]})}return $}function Zg6($){return ey6.TD.decode($).replace(/\n/g,"\u240A").replace(/\r/g,"\u240D")}function Xg6($,Z=!0){let X=Z?new sc0.TimeoutError:null,Q,Y,G=new Promise((J,K)=>{Q={cancel:()=>{if(Y)clearTimeout(Y)}},Y=setTimeout(()=>{if(X===null)K(new sc0.TimeoutError);else K(X)},$)});return Object.assign(G,Q)}function Qg6($=0){let Z,X=new Promise((Q)=>{let Y=setTimeout(()=>{Q()},$);Z={cancel:()=>{if(Y)clearTimeout(Y),Q()}}});return Object.assign(X,Z)}async function Yg6($,Z=1000){let X=ec0(),Q=setTimeout(()=>{X.reject(new sc0.TimeoutError)},Z);try{return await Promise.race([$,X])}finally{clearTimeout(Q)}}function ec0(){let $={},Z=new Promise((X,Q)=>{$={resolve:X,reject:Q}});return Object.assign(Z,$)}function Gg6(){let $={},Z=new Promise((X,Q)=>{$={resolve:(Y)=>{console.trace("resolve",Y),X(Y)},reject:(Y)=>{console.trace("reject"),Q(Y)}}});return Object.assign(Z,$)}function Jg6($){for(let Z=$.length-1;Z>0;Z--){let X=Math.floor(Math.random()*(Z+1));[$[Z],$[X]]=[$[X],$[Z]]}return $}async function Kg6($){let Z=[];for await(let X of $)Z.push(X);return Z}class Um1{timers;measures;constructor(){this.timers=new Map,this.measures=new Map}mark($){this.timers.set($,performance.now())}measure($,Z,X){let Q=this.timers.get(Z);if(Q===void 0)throw Error(`${Z} is not defined`);let Y=this.timers.get(X);if(Y===void 0)throw Error(`${X} is not defined`);this.measures.set($,Y-Q)}getEntries(){let $=[];return this.measures.forEach((Z,X)=>{$.push({name:X,duration:Z})}),$}}Bm1.Perf=Um1;class Fm1{max;current;waiting;constructor($=1){this.max=$,this.current=0,this.waiting=[]}lock(){if(this.current++,this.current<=this.max)return Promise.resolve();let $=ec0();return this.waiting.push($),$}unlock(){this.current--,this.waiting.pop()?.resolve()}}Bm1.SimpleMutex=Fm1;function wm1($){if($===0)return 0;return Math.floor($/2+Math.random()*$)}function Wg6($=[0,250,250,500,500,3000,5000]){if(!Array.isArray($))$=[0,250,250,500,500,3000,5000];let Z=$.length-1;return{backoff(X){return wm1(X>Z?$[Z]:$[X])}}}function Hg6($){return $*1e6}function Ng6($){return Math.floor($/1e6)}var Ug6="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",JN=new Uint8Array(62);for(let $=0;$<62;$++)JN[$]=Ug6.charCodeAt($);var Fg6=218340105584896;function wg6(){let $=Math.floor(Math.random()*Fg6),Z=$%62,X=JN[Z];$=($-Z)/62,Z=$%62;let Q=JN[Z];$=($-Z)/62,Z=$%62;let Y=JN[Z];$=($-Z)/62,Z=$%62;let G=JN[Z];$=($-Z)/62,Z=$%62;let J=JN[Z];$=($-Z)/62,Z=$%62;let K=JN[Z];$=($-Z)/62,Z=$%62;let W=JN[Z];$=($-Z)/62;let H=JN[$];return String.fromCharCode(X,Q,Y,G,J,K,W,H)}});var Am1=_((jm1)=>{Object.defineProperty(jm1,"__esModule",{value:!0});jm1.nuid=jm1.NuidImpl=void 0;var Sg6="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",sF=62,D50=12,Em1=10,Lm1=33,Vg6=333,Dm1=D50+Em1,Zl0=new Uint8Array(sF);for(let $=0;$<sF;$++)Zl0[$]=Sg6.charCodeAt($);var L50=4294967296,zm1=BigInt(sF)**BigInt(Em1),Qm=Number(zm1/(1n<<32n)),$l0=Number(zm1%(1n<<32n));function Cg6($){for(let Z=0;Z<$.length;Z++)$[Z]=Math.floor(Math.random()*256)}function _g6($){if(globalThis?.crypto?.getRandomValues)globalThis.crypto.getRandomValues($);else Cg6($)}class Xl0{buf;cbuf;seqHi;seqLo;inc;inited;constructor(){this.buf=new Uint8Array(Dm1),this.cbuf=new Uint8Array(D50),this.inited=!1}init(){this.inited=!0,this.setPre(),this.initSeqAndInc(),this.fillSeq()}initSeqAndInc(){let $=0;do this.seqHi=Math.floor(Math.random()*(Qm+1)),this.seqLo=Math.floor(Math.random()*L50);while($++<8&&this.seqHi===Qm&&this.seqLo>=$l0);if(this.seqHi===Qm&&this.seqLo>=$l0)this.seqLo=0;this.inc=Math.random()*(Vg6-Lm1)+Lm1|0}setPre(){_g6(this.cbuf);for(let $=0;$<D50;$++)this.buf[$]=Zl0[this.cbuf[$]%sF]}fillSeq(){let $=this.seqHi,Z=this.seqLo;for(let X=Dm1-1;X>=D50;X--){let Q=Math.floor($/sF),G=($-Q*sF)*L50+Z,J=Math.floor(G/sF),K=G-J*sF;this.buf[X]=Zl0[K],$=Q,Z=J}}next(){if(!this.inited)this.init();if(this.seqLo+=this.inc,this.seqLo>=L50)this.seqLo-=L50,this.seqHi+=1;if(this.seqHi>Qm||this.seqHi===Qm&&this.seqLo>=$l0)this.setPre(),this.initSeqAndInc();this.fillSeq();let $=this.buf;return String.fromCharCode($[0],$[1],$[2],$[3],$[4],$[5],$[6],$[7],$[8],$[9],$[10],$[11],$[12],$[13],$[14],$[15],$[16],$[17],$[18],$[19],$[20],$[21])}reset(){this.init()}}jm1.NuidImpl=Xl0;jm1.nuid=new Xl0});var qm1=_((Im1)=>{Object.defineProperty(Im1,"__esModule",{value:!0});Im1.nuid=Im1.Nuid=void 0;var Tm1=Am1();Im1.Nuid=Tm1.NuidImpl;Im1.nuid=Tm1.nuid});var z50=_((E50)=>{Object.defineProperty(E50,"__esModule",{value:!0});E50.nuid=E50.Nuid=void 0;var Mm1=qm1();Object.defineProperty(E50,"Nuid",{enumerable:!0,get:function(){return Mm1.Nuid}});Object.defineProperty(E50,"nuid",{enumerable:!0,get:function(){return Mm1.nuid}})});var eF=_((km1)=>{Object.defineProperty(km1,"__esModule",{value:!0});km1.DEFAULT_HOST=km1.DEFAULT_PORT=km1.Match=void 0;km1.syncIterator=gg6;km1.createInbox=hg6;var bg6=z50(),yg6=_Y();km1.Match={Exact:"exact",CanonicalMIME:"canonical",IgnoreCase:"insensitive"};function gg6($){let Z=$[Symbol.asyncIterator]();return{async next(){let X=await Z.next();if(X.done)return Promise.resolve(null);return Promise.resolve(X.value)}}}function hg6($=""){if($=$||"_INBOX",typeof $!=="string")throw TypeError("prefix must be a string");return $.split(".").forEach((Z)=>{if(Z==="*"||Z===">")throw yg6.InvalidArgumentError.format("prefix",`cannot have wildcards ('${$}')`)}),`${$}.${bg6.nuid.next()}`}km1.DEFAULT_PORT=4222;km1.DEFAULT_HOST="127.0.0.1"});var Ym=_((_m1)=>{Object.defineProperty(_m1,"__esModule",{value:!0});_m1.DataBuffer=void 0;var Vm1=CY();class Cm1{buffers;byteLength;constructor(){this.buffers=[],this.byteLength=0}static concat(...$){let Z=0;for(let Y=0;Y<$.length;Y++)Z+=$[Y].length;let X=new Uint8Array(Z),Q=0;for(let Y=0;Y<$.length;Y++)X.set($[Y],Q),Q+=$[Y].length;return X}static fromAscii($){if(!$)$="";return Vm1.TE.encode($)}static toAscii($){return Vm1.TD.decode($)}reset(){this.buffers.length=0,this.byteLength=0}pack(){if(this.buffers.length>1){let $=new Uint8Array(this.byteLength),Z=0;for(let X=0;X<this.buffers.length;X++)$.set(this.buffers[X],Z),Z+=this.buffers[X].length;this.buffers.length=0,this.buffers.push($)}}shift(){if(this.buffers.length){let $=this.buffers.shift();if($)return this.byteLength-=$.length,$}return new Uint8Array(0)}drain($){if(this.buffers.length){this.pack();let Z=this.buffers.pop();if(Z){let X=this.byteLength;if($===void 0||$>X)$=X;let Q=Z.subarray(0,$);if(X>$)this.buffers.push(Z.subarray($));return this.byteLength=X-$,Q}}return new Uint8Array(0)}fill($,...Z){if($)this.buffers.push($),this.byteLength+=$.length;for(let X=0;X<Z.length;X++)if(Z[X]&&Z[X].length)this.buffers.push(Z[X]),this.byteLength+=Z[X].length}peek(){if(this.buffers.length)return this.pack(),this.buffers[0];return new Uint8Array(0)}size(){return this.byteLength}length(){return this.buffers.length}}_m1.DataBuffer=Cm1});var AD=_((fm1)=>{Object.defineProperty(fm1,"__esModule",{value:!0});fm1.LF=fm1.CR=fm1.CRLF=fm1.CR_LF_LEN=fm1.CR_LF=void 0;fm1.setTransportFactory=pg6;fm1.defaultPort=tg6;fm1.getUrlParseFn=og6;fm1.newTransport=rg6;fm1.getResolveFn=ag6;fm1.protoLen=vm1;fm1.extractProtocolMessage=sg6;var mg6=CY(),ig6=eF(),ng6=Ym(),xY;function pg6($){xY=$}function tg6(){return xY!==void 0&&xY.defaultPort!==void 0?xY.defaultPort:ig6.DEFAULT_PORT}function og6(){return xY!==void 0&&xY.urlParseFn?xY.urlParseFn:void 0}function rg6(){if(!xY||typeof xY.factory!=="function")throw Error("transport fn is not set");return xY.factory()}function ag6(){return xY!==void 0&&xY.dnsResolveFn?xY.dnsResolveFn:void 0}fm1.CR_LF=`\r
|
|
1255
|
+
`);Q=G.pop()??"";for(let J of G){let K=Zm(J).replace(/^\[\d+\]\s*/,"").trim();if(!K)continue;oF({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:K})}}(async()=>{for(;;){let{done:G,value:J}=await Z.read();if(G)break;Q+=X.decode(J,{stream:!0}),Y()}if(Q.trim()){let G=Zm(Q).replace(/^\[\d+\]\s*/,"").trim();if(G)oF({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:G})}})()}async function Wy6($){let{baseUrl:Z,noTui:X}=$,Q=process.env.HOST==="0.0.0.0"&&Boolean(process.env.PORT),Y=Q?process.env.PORT:$.vitePort,G=Z||`http://localhost:${Y}`,J=Q?await $m(Number(Y)+1):await $m(Number($.port)),{settings:K,services:W,managedServiceNames:H}=await J50({port:String(J),home:$.home,baseUrl:$.baseUrl,localMode:$.localMode,skipMigrations:$.skipMigrations,noTui:$.noTui,vitePort:$.vitePort});for(let L of W)ED({name:L.name,status:"ready",port:L.port});sd();let N=Ky6(import.meta.dir,"..","..","..","..",".."),U=X===!0,F=Bun.spawn(["bun","run","dev:servers"],{cwd:N,env:{...process.env,PORT:String(K.port),VITE_PORT:String(Y),DATABASE_URL:K.databaseUrl,NATS_URL:K.natsUrls.join(","),NODE_ENV:K.nodeEnv,BASE_URL:G,DECOCMS_LOCAL_MODE:String(K.localMode),DECOCMS_HOME:K.dataDir,DATA_DIR:K.dataDir,DECO_CLI:"1",...K.s3Endpoint?{S3_ENDPOINT:K.s3Endpoint,S3_BUCKET:K.s3Bucket??"",S3_ACCESS_KEY_ID:K.s3AccessKeyId??"",S3_SECRET_ACCESS_KEY:K.s3SecretAccessKey??"",S3_FORCE_PATH_STYLE:String(K.s3ForcePathStyle)}:{},...K.natsPublicUrl&&K.natsAccountJwt&&K.natsAccountSigningKey?{NATS_PUBLIC_URL:K.natsPublicUrl,NATS_ACCOUNT_JWT:K.natsAccountJwt,NATS_ACCOUNT_SIGNING_KEY:K.natsAccountSigningKey,NATS_OPERATOR_JWT:K.natsOperatorJwt??"",NATS_TUNNEL_PUBLIC_ENABLED:"true",...K.natsCredsPath?{NATS_CREDS:K.natsCredsPath}:{}}:{}},stdio:["inherit",U?"inherit":"pipe",U?"inherit":"pipe"]});if(!U)yd1(F.stdout),yd1(F.stderr);ed(G),ED({name:"Vite",status:"ready",port:Number(Y)}),ED({name:"API",status:"ready",port:Number(K.port)});let B=async(L)=>{if(F.kill(L),await F.exited,H.length>0){let{stopServices:D}=await Promise.resolve().then(() => (z$0(),E$0));await D(K.dataDir)}};return process.on("SIGINT",()=>B("SIGINT")),process.on("SIGTERM",()=>B("SIGTERM")),{port:Number(Y),process:F}}var bc0=O(()=>{Vc0();zD();vc0()});var H50;var yc0=O(()=>{H50={name:"decocms",version:"4.163.2",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"}}});import{Box as Ny6,Text as gd1}from"ink";import{jsx as Uy6,jsxs as hd1}from"react/jsx-runtime";function ud1({version:$}){return hd1(Ny6,{flexDirection:"column",marginTop:1,children:[c$0.map((Z,X)=>Uy6(gd1,{color:l$0[X],children:Z},X)),hd1(gd1,{dimColor:!0,children:[" v",$]})]})}var cd1=O(()=>{cd()});import{Box as jD,Text as rF}from"ink";import{Spinner as Fy6}from"@inkjs/ui";import{jsx as VY,jsxs as kf}from"react/jsx-runtime";function ld1({status:$}){if($==="pending")return VY(Fy6,{label:""});return VY(rF,{color:"green",children:"\u2713"})}function wy6($){return`${$.name}: ${$.port||"...."}`}function dd1({services:$,migrationsStatus:Z,home:X,serverUrl:Q}){return kf(jD,{flexDirection:"column",paddingBottom:1,children:[VY(ud1,{version:H50.version}),VY(jD,{marginBottom:1,children:VY(rF,{dimColor:!0,children:"\u2500".repeat(80)})}),VY(jD,{children:kf(rF,{dimColor:!0,children:["Home: ",X]})}),kf(jD,{gap:2,children:[$.map((Y)=>kf(jD,{gap:1,children:[VY(rF,{children:wy6(Y)}),VY(ld1,{status:Y.status})]},Y.name)),kf(jD,{gap:1,children:[VY(rF,{children:"Migrations"}),VY(ld1,{status:Z})]})]}),VY(jD,{children:Q?kf(rF,{children:["Open in browser: ",VY(rF,{color:"cyan",children:Q})]}):VY(rF,{dimColor:!0,children:"Starting..."})})]})}var md1=O(()=>{yc0();cd1()});import{Box as By6,Text as Xm}from"ink";import{jsx as gc0,jsxs as hc0}from"react/jsx-runtime";function Oy6($){if($>=500)return"red";if($>=400)return"yellow";if($>=300)return"cyan";return"green"}function id1({logs:$}){return gc0(By6,{flexDirection:"column",children:$.map((Z,X)=>{if(Z.rawLine)return gc0(Xm,{dimColor:!0,children:Z.rawLine},X);let Q=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return hc0(Xm,{children:[hc0(Xm,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),gc0(Xm,{color:Oy6(Z.status),children:Z.status}),hc0(Xm,{dimColor:!0,children:[" ",Q.padStart(8)]})]},X)})})}var nd1=()=>{};var uc0={};P0(uc0,{App:()=>Ey6});import{Box as Ly6}from"ink";import{useSyncExternalStore as Dy6}from"react";import{jsx as pd1,jsxs as zy6}from"react/jsx-runtime";function Ey6({home:$}){let Z=Dy6(xc0,_c0);return zy6(Ly6,{flexDirection:"column",children:[pd1(dd1,{services:Z.services,migrationsStatus:Z.migrationsStatus,home:$,serverUrl:Z.serverUrl}),pd1(id1,{logs:Z.logs})]})}var cc0=O(()=>{md1();nd1();zD()});var $J="thread-gate",GN="decopilot-hosted-harness",hG="automations",aF="background-tools";var td1="6";function od1($){return{name:"decocms",systemDatabaseUrl:$.systemDatabaseUrl,systemDatabaseSchemaName:"dbos",systemDatabasePoolSize:$.poolSize,runAdminServer:!1,executorID:$.executorID,applicationVersion:td1,...$.listenQueues!==void 0?{listenQueues:$.listenQueues}:{}}}var rd1=()=>{};function jy6(){let $=(process.env.BUN_OPTIONS??"").split(/\s+/).filter(Boolean);return[...process.argv.slice(1),...$]}function lc0($,Z){for(let X=0;X<$.length;X++){let Q=$[X];if(Q===void 0)continue;if(Q===Z)return $[X+1];if(Q.startsWith(`${Z}=`))return Q.slice(Z.length+1)}return}function ad1(){let $=jy6();if($.includes("--cpu-prof")){console.log(JSON.stringify({msg:"cpu-profiling-active",dir:lc0($,"--cpu-prof-dir")??process.cwd(),name:lc0($,"--cpu-prof-name"),markdown:$.includes("--cpu-prof-md"),intervalUs:Number(lc0($,"--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.'}))}function sd1(){if(process.env.HEAP_WATCH!=="1")return()=>{};let $=Number(process.env.HEAP_WATCH_INTERVAL_MS??60000),Z=async()=>{let X=BD();if(!X)return;let Q={};try{let{heapStats:Y}=await import("bun:jsc"),G=Y(),J=Object.entries(G.objectTypeCounts).sort((K,W)=>W[1]-K[1]).slice(0,20);Q={objectCount:G.objectCount,heapSize:G.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,...Q}))};return Z().catch(()=>{}),N50=setInterval(()=>void Z().catch(()=>{}),$),N50.unref?.(),process.on("SIGUSR2",()=>{try{let X=Bun.generateHeapSnapshot("v8"),Q=typeof X==="string"?X:JSON.stringify(X),Y=`/tmp/heap-${process.pid}-${Date.now()}.heapsnapshot`;Bun.write(Y,Q),console.log(JSON.stringify({msg:"heap-snapshot-written",path:Y}))}catch(X){console.error("[heap-watch] snapshot failed:",X)}}),()=>{if(N50)clearInterval(N50)}}var N50;var ed1=()=>{};import*as Py6 from"bun:jsc";function $m1(){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{Ay6()}catch(G){return console.error("[stall-watchdog] failed to start sampling profiler:",G),()=>{}}let X,Q=performance.now()+Z,Y=()=>{let G=performance.now(),J=G-Q;Q=G+Z;let K=[];try{K=Ty6()?.traces??[]}catch{}if(J>$&&K.length>0){let W=new Map;for(let N of K){let U=N.frames.find((B)=>B.sourceURL&&!/Unknown Executable/.test(B.category??""))??N.frames[0];if(!U)continue;let F=(U.sourceURL??"?").replace(/^.*\/node_modules\//,"node_modules/"),w=`${U.name??"?"} @ ${F}:${U.line??"?"}`;W.set(w,(W.get(w)??0)+1)}let H=[...W.entries()].sort((N,U)=>U[1]-N[1]).slice(0,8).map(([N,U])=>({frame:N,count:U}));console.warn(JSON.stringify({msg:"stall-stack",ts:new Date().toISOString(),lagMs:Math.round(J),samplesInWindow:K.length,top:H}))}X=setTimeout(Y,Z),X.unref?.()};return X=setTimeout(Y,Z),X.unref?.(),()=>{if(X)clearTimeout(X)}}var Ay6,Ty6;var Zm1=O(()=>{({startSamplingProfiler:Ay6,samplingProfilerStackTraces:Ty6}=Py6)});function Xm1(){ad1();let $=[sd1(),ju1(),$m1()];return()=>{for(let Z of $)Z()}}var Qm1=O(()=>{Wg0();ed1();Zm1()});var PD=_((Ym1)=>{Object.defineProperty(Ym1,"__esModule",{value:!0});Ym1.RepublishHeaders=Ym1.DirectMsgHeaders=Ym1.JsHeaders=Ym1.AdvisoryKind=void 0;Ym1.isOrderedPushConsumerOptions=Iy6;Ym1.isPullConsumer=Ry6;Ym1.isPushConsumer=qy6;Ym1.isBoundPushConsumerOptions=My6;function Iy6($){if($&&typeof $==="object")return"name_prefix"in $||"deliver_subject_prefix"in $||"filter_subjects"in $||"filter_subject"in $||"deliver_policy"in $||"opt_start_seq"in $||"opt_start_time"in $||"replay_policy"in $||"inactive_threshold"in $||"headers_only"in $||"deliver_prefix"in $;return!1}function Ry6($){return $.isPullConsumer()}function qy6($){return $.isPushConsumer()}function My6($){if($&&typeof $==="object")return"deliver_subject"in $||"deliver_group"in $||"idle_heartbeat"in $;return!1}Ym1.AdvisoryKind={API:"api_audit",StreamAction:"stream_action",ConsumerAction:"consumer_action",SnapshotCreate:"snapshot_create",SnapshotComplete:"snapshot_complete",RestoreCreate:"restore_create",RestoreComplete:"restore_complete",MaxDeliver:"max_deliver",Terminated:"terminated",Ack:"consumer_ack",StreamLeaderElected:"stream_leader_elected",StreamQuorumLost:"stream_quorum_lost",ConsumerLeaderElected:"consumer_leader_elected",ConsumerQuorumLost:"consumer_quorum_lost"};Ym1.JsHeaders={StreamSourceHdr:"Nats-Stream-Source",LastConsumerSeqHdr:"Nats-Last-Consumer",LastStreamSeqHdr:"Nats-Last-Stream",ConsumerStalledHdr:"Nats-Consumer-Stalled",MessageSizeHdr:"Nats-Msg-Size",RollupHdr:"Nats-Rollup",RollupValueSubject:"sub",RollupValueAll:"all",PendingMessagesHdr:"Nats-Pending-Messages",PendingBytesHdr:"Nats-Pending-Bytes",RequiredApiLevel:"Nats-Required-Api-Level"};Ym1.DirectMsgHeaders={Stream:"Nats-Stream",Sequence:"Nats-Sequence",TimeStamp:"Nats-Time-Stamp",Subject:"Nats-Subject",LastSequence:"Nats-Last-Sequence",NumPending:"Nats-Num-Pending"};Ym1.RepublishHeaders={Stream:"Nats-Stream",Subject:"Nats-Subject",Sequence:"Nats-Sequence",LastSequence:"Nats-Last-Sequence",Size:"Nats-Msg-Size"}});var CY=_((Jm1)=>{Object.defineProperty(Jm1,"__esModule",{value:!0});Jm1.TD=Jm1.TE=Jm1.Empty=void 0;Jm1.encode=by6;Jm1.decode=yy6;Jm1.Empty=new Uint8Array(0);Jm1.TE=new TextEncoder;Jm1.TD=new TextDecoder;function fy6(...$){let Z=0;for(let Y=0;Y<$.length;Y++)Z+=$[Y].length;let X=new Uint8Array(Z),Q=0;for(let Y=0;Y<$.length;Y++)X.set($[Y],Q),Q+=$[Y].length;return X}function by6(...$){let Z=[];for(let X=0;X<$.length;X++)Z.push(Jm1.TE.encode($[X]));if(Z.length===0)return Jm1.Empty;if(Z.length===1)return Z[0];return fy6(...Z)}function yy6($){if(!$||$.length===0)return"";return Jm1.TD.decode($)}});var _Y=_((Hm1)=>{Object.defineProperty(Hm1,"__esModule",{value:!0});Hm1.errors=Hm1.PermissionViolationError=Hm1.NoRespondersError=Hm1.TimeoutError=Hm1.RequestError=Hm1.ProtocolError=Hm1.ConnectionError=Hm1.DrainingConnectionError=Hm1.ClosedConnectionError=Hm1.AuthorizationError=Hm1.UserAuthenticationExpiredError=Hm1.InvalidOperationError=Hm1.InvalidArgumentError=Hm1.InvalidSubjectError=void 0;class mc0 extends Error{constructor($,Z){super(`illegal subject: '${$}'`,Z);this.name="InvalidSubjectError"}}Hm1.InvalidSubjectError=mc0;class U50 extends Error{constructor($,Z){super($,Z);this.name="InvalidArgumentError"}static format($,Z,X){if(Array.isArray(Z)&&Z.length>1)Z=Z[0];if(Array.isArray($))$=$.map((Q)=>`'${Q}'`),$=$.join(",");else $=`'${$}'`;return new U50(`${$} ${Z}`,X)}}Hm1.InvalidArgumentError=U50;class ic0 extends Error{constructor($,Z){super($,Z);this.name="InvalidOperationError"}}Hm1.InvalidOperationError=ic0;class F50 extends Error{constructor($,Z){super($,Z);this.name="UserAuthenticationExpiredError"}static parse($){if($.toLowerCase().indexOf("user authentication expired")!==-1)return new F50($);return null}}Hm1.UserAuthenticationExpiredError=F50;class w50 extends Error{constructor($,Z){super($,Z);this.name="AuthorizationError"}static parse($){let Z=["authorization violation","account authentication expired","authentication timeout"],X=$.toLowerCase();for(let Q=0;Q<Z.length;Q++)if(X.indexOf(Z[Q])!==-1)return new w50($);return null}}Hm1.AuthorizationError=w50;class nc0 extends Error{constructor(){super("closed connection");this.name="ClosedConnectionError"}}Hm1.ClosedConnectionError=nc0;class pc0 extends Error{constructor(){super("connection draining");this.name="DrainingConnectionError"}}Hm1.DrainingConnectionError=pc0;class tc0 extends Error{constructor($,Z){super($,Z);this.name="ConnectionError"}}Hm1.ConnectionError=tc0;class oc0 extends Error{constructor($,Z){super($,Z);this.name="ProtocolError"}}Hm1.ProtocolError=oc0;class rc0 extends Error{constructor($="",Z){super($,Z);this.name="RequestError"}isNoResponders(){return this.cause instanceof B50}}Hm1.RequestError=rc0;class ac0 extends Error{constructor($){super("timeout",$);this.name="TimeoutError"}}Hm1.TimeoutError=ac0;class B50 extends Error{subject;constructor($,Z){super(`no responders: '${$}'`,Z);this.subject=$,this.name="NoResponders"}}Hm1.NoRespondersError=B50;class O50 extends Error{operation;subject;queue;constructor($,Z,X,Q,Y){super($,Y);this.name="PermissionViolationError",this.operation=Z,this.subject=X,this.queue=Q}static parse($){if(($?$.toLowerCase():"").indexOf("permissions violation")===-1)return null;let X="publish",Q="",Y=void 0,G=$.match(/(Publish|Subscription) to "(\S+)"/);if(G){if(X=G[1].toLowerCase(),Q=G[2],X==="subscription"){let J=$.match(/using queue "(\S+)"/);if(J)Y=J[1]}}return new O50($,X,Q,Y)}}Hm1.PermissionViolationError=O50;Hm1.errors={AuthorizationError:w50,ClosedConnectionError:nc0,ConnectionError:tc0,DrainingConnectionError:pc0,InvalidArgumentError:U50,InvalidOperationError:ic0,InvalidSubjectError:mc0,NoRespondersError:B50,PermissionViolationError:O50,ProtocolError:oc0,RequestError:rc0,TimeoutError:ac0,UserAuthenticationExpiredError:F50}});var ZJ=_((Bm1)=>{Object.defineProperty(Bm1,"__esModule",{value:!0});Bm1.SimpleMutex=Bm1.Perf=void 0;Bm1.extend=$g6;Bm1.render=Zg6;Bm1.timeout=Xg6;Bm1.delay=Qg6;Bm1.deadline=Yg6;Bm1.deferred=ec0;Bm1.debugDeferred=Gg6;Bm1.shuffle=Jg6;Bm1.collect=Kg6;Bm1.jitter=wm1;Bm1.backoff=Wg6;Bm1.nanos=Hg6;Bm1.millis=Ng6;Bm1.randomToken=wg6;var ey6=CY(),sc0=_Y();function $g6($,...Z){for(let X=0;X<Z.length;X++){let Q=Z[X];Object.keys(Q).forEach(function(Y){$[Y]=Q[Y]})}return $}function Zg6($){return ey6.TD.decode($).replace(/\n/g,"\u240A").replace(/\r/g,"\u240D")}function Xg6($,Z=!0){let X=Z?new sc0.TimeoutError:null,Q,Y,G=new Promise((J,K)=>{Q={cancel:()=>{if(Y)clearTimeout(Y)}},Y=setTimeout(()=>{if(X===null)K(new sc0.TimeoutError);else K(X)},$)});return Object.assign(G,Q)}function Qg6($=0){let Z,X=new Promise((Q)=>{let Y=setTimeout(()=>{Q()},$);Z={cancel:()=>{if(Y)clearTimeout(Y),Q()}}});return Object.assign(X,Z)}async function Yg6($,Z=1000){let X=ec0(),Q=setTimeout(()=>{X.reject(new sc0.TimeoutError)},Z);try{return await Promise.race([$,X])}finally{clearTimeout(Q)}}function ec0(){let $={},Z=new Promise((X,Q)=>{$={resolve:X,reject:Q}});return Object.assign(Z,$)}function Gg6(){let $={},Z=new Promise((X,Q)=>{$={resolve:(Y)=>{console.trace("resolve",Y),X(Y)},reject:(Y)=>{console.trace("reject"),Q(Y)}}});return Object.assign(Z,$)}function Jg6($){for(let Z=$.length-1;Z>0;Z--){let X=Math.floor(Math.random()*(Z+1));[$[Z],$[X]]=[$[X],$[Z]]}return $}async function Kg6($){let Z=[];for await(let X of $)Z.push(X);return Z}class Um1{timers;measures;constructor(){this.timers=new Map,this.measures=new Map}mark($){this.timers.set($,performance.now())}measure($,Z,X){let Q=this.timers.get(Z);if(Q===void 0)throw Error(`${Z} is not defined`);let Y=this.timers.get(X);if(Y===void 0)throw Error(`${X} is not defined`);this.measures.set($,Y-Q)}getEntries(){let $=[];return this.measures.forEach((Z,X)=>{$.push({name:X,duration:Z})}),$}}Bm1.Perf=Um1;class Fm1{max;current;waiting;constructor($=1){this.max=$,this.current=0,this.waiting=[]}lock(){if(this.current++,this.current<=this.max)return Promise.resolve();let $=ec0();return this.waiting.push($),$}unlock(){this.current--,this.waiting.pop()?.resolve()}}Bm1.SimpleMutex=Fm1;function wm1($){if($===0)return 0;return Math.floor($/2+Math.random()*$)}function Wg6($=[0,250,250,500,500,3000,5000]){if(!Array.isArray($))$=[0,250,250,500,500,3000,5000];let Z=$.length-1;return{backoff(X){return wm1(X>Z?$[Z]:$[X])}}}function Hg6($){return $*1e6}function Ng6($){return Math.floor($/1e6)}var Ug6="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",JN=new Uint8Array(62);for(let $=0;$<62;$++)JN[$]=Ug6.charCodeAt($);var Fg6=218340105584896;function wg6(){let $=Math.floor(Math.random()*Fg6),Z=$%62,X=JN[Z];$=($-Z)/62,Z=$%62;let Q=JN[Z];$=($-Z)/62,Z=$%62;let Y=JN[Z];$=($-Z)/62,Z=$%62;let G=JN[Z];$=($-Z)/62,Z=$%62;let J=JN[Z];$=($-Z)/62,Z=$%62;let K=JN[Z];$=($-Z)/62,Z=$%62;let W=JN[Z];$=($-Z)/62;let H=JN[$];return String.fromCharCode(X,Q,Y,G,J,K,W,H)}});var Am1=_((jm1)=>{Object.defineProperty(jm1,"__esModule",{value:!0});jm1.nuid=jm1.NuidImpl=void 0;var Sg6="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",sF=62,D50=12,Em1=10,Lm1=33,Vg6=333,Dm1=D50+Em1,Zl0=new Uint8Array(sF);for(let $=0;$<sF;$++)Zl0[$]=Sg6.charCodeAt($);var L50=4294967296,zm1=BigInt(sF)**BigInt(Em1),Qm=Number(zm1/(1n<<32n)),$l0=Number(zm1%(1n<<32n));function Cg6($){for(let Z=0;Z<$.length;Z++)$[Z]=Math.floor(Math.random()*256)}function _g6($){if(globalThis?.crypto?.getRandomValues)globalThis.crypto.getRandomValues($);else Cg6($)}class Xl0{buf;cbuf;seqHi;seqLo;inc;inited;constructor(){this.buf=new Uint8Array(Dm1),this.cbuf=new Uint8Array(D50),this.inited=!1}init(){this.inited=!0,this.setPre(),this.initSeqAndInc(),this.fillSeq()}initSeqAndInc(){let $=0;do this.seqHi=Math.floor(Math.random()*(Qm+1)),this.seqLo=Math.floor(Math.random()*L50);while($++<8&&this.seqHi===Qm&&this.seqLo>=$l0);if(this.seqHi===Qm&&this.seqLo>=$l0)this.seqLo=0;this.inc=Math.random()*(Vg6-Lm1)+Lm1|0}setPre(){_g6(this.cbuf);for(let $=0;$<D50;$++)this.buf[$]=Zl0[this.cbuf[$]%sF]}fillSeq(){let $=this.seqHi,Z=this.seqLo;for(let X=Dm1-1;X>=D50;X--){let Q=Math.floor($/sF),G=($-Q*sF)*L50+Z,J=Math.floor(G/sF),K=G-J*sF;this.buf[X]=Zl0[K],$=Q,Z=J}}next(){if(!this.inited)this.init();if(this.seqLo+=this.inc,this.seqLo>=L50)this.seqLo-=L50,this.seqHi+=1;if(this.seqHi>Qm||this.seqHi===Qm&&this.seqLo>=$l0)this.setPre(),this.initSeqAndInc();this.fillSeq();let $=this.buf;return String.fromCharCode($[0],$[1],$[2],$[3],$[4],$[5],$[6],$[7],$[8],$[9],$[10],$[11],$[12],$[13],$[14],$[15],$[16],$[17],$[18],$[19],$[20],$[21])}reset(){this.init()}}jm1.NuidImpl=Xl0;jm1.nuid=new Xl0});var qm1=_((Im1)=>{Object.defineProperty(Im1,"__esModule",{value:!0});Im1.nuid=Im1.Nuid=void 0;var Tm1=Am1();Im1.Nuid=Tm1.NuidImpl;Im1.nuid=Tm1.nuid});var z50=_((E50)=>{Object.defineProperty(E50,"__esModule",{value:!0});E50.nuid=E50.Nuid=void 0;var Mm1=qm1();Object.defineProperty(E50,"Nuid",{enumerable:!0,get:function(){return Mm1.Nuid}});Object.defineProperty(E50,"nuid",{enumerable:!0,get:function(){return Mm1.nuid}})});var eF=_((km1)=>{Object.defineProperty(km1,"__esModule",{value:!0});km1.DEFAULT_HOST=km1.DEFAULT_PORT=km1.Match=void 0;km1.syncIterator=gg6;km1.createInbox=hg6;var bg6=z50(),yg6=_Y();km1.Match={Exact:"exact",CanonicalMIME:"canonical",IgnoreCase:"insensitive"};function gg6($){let Z=$[Symbol.asyncIterator]();return{async next(){let X=await Z.next();if(X.done)return Promise.resolve(null);return Promise.resolve(X.value)}}}function hg6($=""){if($=$||"_INBOX",typeof $!=="string")throw TypeError("prefix must be a string");return $.split(".").forEach((Z)=>{if(Z==="*"||Z===">")throw yg6.InvalidArgumentError.format("prefix",`cannot have wildcards ('${$}')`)}),`${$}.${bg6.nuid.next()}`}km1.DEFAULT_PORT=4222;km1.DEFAULT_HOST="127.0.0.1"});var Ym=_((_m1)=>{Object.defineProperty(_m1,"__esModule",{value:!0});_m1.DataBuffer=void 0;var Vm1=CY();class Cm1{buffers;byteLength;constructor(){this.buffers=[],this.byteLength=0}static concat(...$){let Z=0;for(let Y=0;Y<$.length;Y++)Z+=$[Y].length;let X=new Uint8Array(Z),Q=0;for(let Y=0;Y<$.length;Y++)X.set($[Y],Q),Q+=$[Y].length;return X}static fromAscii($){if(!$)$="";return Vm1.TE.encode($)}static toAscii($){return Vm1.TD.decode($)}reset(){this.buffers.length=0,this.byteLength=0}pack(){if(this.buffers.length>1){let $=new Uint8Array(this.byteLength),Z=0;for(let X=0;X<this.buffers.length;X++)$.set(this.buffers[X],Z),Z+=this.buffers[X].length;this.buffers.length=0,this.buffers.push($)}}shift(){if(this.buffers.length){let $=this.buffers.shift();if($)return this.byteLength-=$.length,$}return new Uint8Array(0)}drain($){if(this.buffers.length){this.pack();let Z=this.buffers.pop();if(Z){let X=this.byteLength;if($===void 0||$>X)$=X;let Q=Z.subarray(0,$);if(X>$)this.buffers.push(Z.subarray($));return this.byteLength=X-$,Q}}return new Uint8Array(0)}fill($,...Z){if($)this.buffers.push($),this.byteLength+=$.length;for(let X=0;X<Z.length;X++)if(Z[X]&&Z[X].length)this.buffers.push(Z[X]),this.byteLength+=Z[X].length}peek(){if(this.buffers.length)return this.pack(),this.buffers[0];return new Uint8Array(0)}size(){return this.byteLength}length(){return this.buffers.length}}_m1.DataBuffer=Cm1});var AD=_((fm1)=>{Object.defineProperty(fm1,"__esModule",{value:!0});fm1.LF=fm1.CR=fm1.CRLF=fm1.CR_LF_LEN=fm1.CR_LF=void 0;fm1.setTransportFactory=pg6;fm1.defaultPort=tg6;fm1.getUrlParseFn=og6;fm1.newTransport=rg6;fm1.getResolveFn=ag6;fm1.protoLen=vm1;fm1.extractProtocolMessage=sg6;var mg6=CY(),ig6=eF(),ng6=Ym(),xY;function pg6($){xY=$}function tg6(){return xY!==void 0&&xY.defaultPort!==void 0?xY.defaultPort:ig6.DEFAULT_PORT}function og6(){return xY!==void 0&&xY.urlParseFn?xY.urlParseFn:void 0}function rg6(){if(!xY||typeof xY.factory!=="function")throw Error("transport fn is not set");return xY.factory()}function ag6(){return xY!==void 0&&xY.dnsResolveFn?xY.dnsResolveFn:void 0}fm1.CR_LF=`\r
|
|
1256
1256
|
`;fm1.CR_LF_LEN=fm1.CR_LF.length;fm1.CRLF=ng6.DataBuffer.fromAscii(fm1.CR_LF);fm1.CR=new Uint8Array(fm1.CRLF)[0];fm1.LF=new Uint8Array(fm1.CRLF)[1];function vm1($){for(let Z=0;Z<$.length;Z++){let X=Z+1;if($.byteLength>X&&$[Z]===fm1.CR&&$[X]===fm1.LF)return X+1}return 0}function sg6($){let Z=vm1($);if(Z>0){let Q=new Uint8Array($).slice(0,Z);return mg6.TD.decode(Q)}return""}});var Kl0=_((dm1)=>{Object.defineProperty(dm1,"__esModule",{value:!0});dm1.ipV4=um1;dm1.isIP=Hh6;dm1.parseIP=cm1;var Gm=4,TD=16,j50=48,hm1=57,ym1=65,Kh6=70,gm1=97,Wh6=102,Jl0=16777215;function um1($,Z,X,Q){let Y=new Uint8Array(TD);return[0,0,0,0,0,0,0,0,0,0,255,255].forEach((J,K)=>{Y[K]=J}),Y[12]=$,Y[13]=Z,Y[14]=X,Y[15]=Q,Y}function Hh6($){return cm1($)!==void 0}function cm1($){for(let Z=0;Z<$.length;Z++)switch($[Z]){case".":return lm1($);case":":return Nh6($)}return}function lm1($){let Z=new Uint8Array(Gm);for(let X=0;X<Gm;X++){if($.length===0)return;if(X>0){if($[0]!==".")return;$=$.substring(1)}let{n:Q,c:Y,ok:G}=Uh6($);if(!G||Q>255)return;$=$.substring(Y),Z[X]=Q}return um1(Z[0],Z[1],Z[2],Z[3])}function Nh6($){let Z=new Uint8Array(TD),X=-1;if($.length>=2&&$[0]===":"&&$[1]===":"){if(X=0,$=$.substring(2),$.length===0)return Z}let Q=0;while(Q<TD){let{n:Y,c:G,ok:J}=Fh6($);if(!J||Y>65535)return;if(G<$.length&&$[G]==="."){if(X<0&&Q!=TD-Gm)return;if(Q+Gm>TD)return;let K=lm1($);if(K===void 0)return;Z[Q]=K[12],Z[Q+1]=K[13],Z[Q+2]=K[14],Z[Q+3]=K[15],$="",Q+=Gm;break}if(Z[Q]=Y>>8,Z[Q+1]=Y,Q+=2,$=$.substring(G),$.length===0)break;if($[0]!==":"||$.length==1)return;if($=$.substring(1),$[0]===":"){if(X>=0)return;if(X=Q,$=$.substring(1),$.length===0)break}}if($.length!==0)return;if(Q<TD){if(X<0)return;let Y=TD-Q;for(let G=Q-1;G>=X;G--)Z[G+Y]=Z[G];for(let G=X+Y-1;G>=X;G--)Z[G]=0}else if(X>=0)return;return Z}function Uh6($){let Z=0,X=0;for(Z=0;Z<$.length&&j50<=$.charCodeAt(Z)&&$.charCodeAt(Z)<=hm1;Z++)if(X=X*10+($.charCodeAt(Z)-j50),X>=Jl0)return{n:Jl0,c:Z,ok:!1};if(Z===0)return{n:0,c:0,ok:!1};return{n:X,c:Z,ok:!0}}function Fh6($){let Z=0,X=0;for(X=0;X<$.length;X++){if(j50<=$.charCodeAt(X)&&$.charCodeAt(X)<=hm1)Z*=16,Z+=$.charCodeAt(X)-j50;else if(gm1<=$.charCodeAt(X)&&$.charCodeAt(X)<=Wh6)Z*=16,Z+=$.charCodeAt(X)-gm1+10;else if(ym1<=$.charCodeAt(X)&&$.charCodeAt(X)<=Kh6)Z*=16,Z+=$.charCodeAt(X)-ym1+10;else break;if(Z>=Jl0)return{n:0,c:X,ok:!1}}if(X===0)return{n:0,c:X,ok:!1};return{n:Z,c:X,ok:!0}}});var wl0=_((im1)=>{Object.defineProperty(im1,"__esModule",{value:!0});im1.Servers=im1.ServerImpl=void 0;im1.isIPV4OrHostname=mm1;im1.hostPort=Fl0;var Wl0=AD(),Hl0=ZJ(),Nl0=Kl0(),Lh6=eF(),Dh6=_Y();function mm1($){if($.indexOf("[")!==-1||$.indexOf("::")!==-1)return!1;if($.indexOf(".")!==-1)return!0;if($.split(":").length<=2)return!0;return!1}function Ul0($){return!mm1($)}function Eh6($){let X=$.toUpperCase().indexOf("::FFFF:");if(X!==-1&&$.indexOf(".")!==-1){let Q=$.substring(X+7);return Q=Q.replace("[",""),Q.replace("]","")}return $}function Fl0($){if($=$.trim(),$.match(/^(.*:\/\/)(.*)/m))$=$.replace(/^(.*:\/\/)(.*)/gm,"$2");if($=Eh6($),Ul0($)&&$.indexOf("[")===-1)$=`[${$}]`;let Z=Ul0($)?$.match(/(]:)(\d+)/):$.match(/(:)(\d+)/),X=Z&&Z.length===3&&Z[1]&&Z[2]?parseInt(Z[2]):Lh6.DEFAULT_PORT,Y=new URL(`${X===80?"https":"http"}://${$}`);Y.port=`${X}`;let G=Y.hostname;if(G.charAt(0)==="[")G=G.substring(1,G.length-1);return{listen:Y.host,hostname:G,port:X}}class Sf{src;listen;hostname;port;didConnect;reconnects;lastConnect;gossiped;tlsName;resolves;constructor($,Z=!1){this.src=$,this.tlsName="";let X=Fl0($);this.listen=X.listen,this.hostname=X.hostname,this.port=X.port,this.didConnect=!1,this.reconnects=0,this.lastConnect=0,this.gossiped=Z}toString(){return this.listen}async resolve($){if(!$.fn||$.resolve===!1)return[this];let Z=[];if((0,Nl0.isIP)(this.hostname))return[this];else{let X=await $.fn(this.hostname);if($.debug)console.log(`resolve ${this.hostname} = ${X.join(",")}`);for(let Q of X){let Y=this.port===80?"https":"http",G=new URL(`${Y}://${Ul0(Q)?"["+Q+"]":Q}`);G.port=`${this.port}`;let J=new Sf(G.host,!1);J.tlsName=this.hostname,Z.push(J)}}if($.randomize)(0,Hl0.shuffle)(Z);return this.resolves=Z,Z}}im1.ServerImpl=Sf;class P50{firstSelect;servers;currentServer;tlsName;randomize;constructor($={}){this.firstSelect=!0,this.servers=[],this.tlsName="",this.randomize=$.randomize||!1}setServers($){if(!Array.isArray($)||$.length===0)throw Dh6.InvalidArgumentError.format("servers","cannot be empty");let Z=(0,Wl0.getUrlParseFn)(),X=new Map;for(let Y of this.servers)X.set(Y.listen,Y);let Q=[];for(let Y of $){Y=Z?Z(Y):Y;let{listen:G}=Fl0(Y),J=X.get(G);if(J)J.gossiped=!1,Q.push(J);else Q.push(new Sf(Y))}if(this.randomize)(0,Hl0.shuffle)(Q);if(this.servers=Q,this.currentServer===void 0||!Q.includes(this.currentServer))this.currentServer=Q[0],this.firstSelect=!0}clear(){this.servers.length=0}updateTLSName(){let $=this.getCurrentServer();if(!(0,Nl0.isIP)($.hostname))this.tlsName=$.hostname,this.servers.forEach((Z)=>{if(Z.gossiped)Z.tlsName=this.tlsName})}getCurrentServer(){return this.currentServer}addServer($,Z=!1){let X=(0,Wl0.getUrlParseFn)();$=X?X($):$;let Q=new Sf($,Z);if((0,Nl0.isIP)(Q.hostname))Q.tlsName=this.tlsName;this.servers.push(Q)}selectServer(){if(this.firstSelect)return this.firstSelect=!1,this.currentServer;let $=this.servers.shift();if($)this.servers.push($),this.currentServer=$;return $}removeCurrentServer(){this.removeServer(this.currentServer)}removeServer($){if($){let Z=this.servers.indexOf($);this.servers.splice(Z,1)}}snapshot(){return P50.freezeAll(this.servers)}snapshotForHandler(){let $=this.currentServer;if(!$)return this.snapshot();let Z=this.servers.indexOf($);if(Z<=0)return this.snapshot();return P50.freezeAll([$,...this.servers.slice(0,Z),...this.servers.slice(Z+1)])}static freezeAll($){return $.map((Z)=>Object.freeze({hostname:Z.hostname,port:Z.port,listen:Z.listen,src:Z.src,tlsName:Z.tlsName,reconnects:Z.reconnects,lastConnect:Z.lastConnect,gossiped:Z.gossiped,didConnect:Z.didConnect}))}find($){return this.servers.find((Z)=>Z.listen===$.listen)}setCurrent($){this.currentServer=$}length(){return this.servers.length}next(){return this.servers.length?this.servers[0]:void 0}getServers(){return this.servers}update($,Z){let X=[],Q=[],Y=(0,Wl0.getUrlParseFn)(),G=new Map;if($.connect_urls&&$.connect_urls.length>0)$.connect_urls.forEach((K)=>{K=Y?Y(K,Z):K;let W=new Sf(K,!0);G.set(K,W)});let J=[];if(this.servers.forEach((K,W)=>{let H=K.listen;if(K.gossiped&&this.currentServer.listen!==H&&G.get(H)===void 0)J.push(W);G.delete(H)}),J.reverse(),J.forEach((K)=>{let W=this.servers.splice(K,1);Q=Q.concat(W[0].listen)}),G.forEach((K,W)=>{this.servers.push(K),X.push(W)}),this.randomize&&X.length>0){let K=this.currentServer,W=this.servers.filter((H)=>H!==K);(0,Hl0.shuffle)(W),this.servers=K?[K,...W]:W}return{added:X,deleted:Q}}}im1.Servers=P50});var A50=_((om1)=>{Object.defineProperty(om1,"__esModule",{value:!0});om1.QueuedIteratorImpl=void 0;var Bl0=ZJ(),pm1=_Y();class tm1{inflight;processed;received;noIterator;iterClosed;done;signal;yields;filtered;pendingFiltered;ctx;_data;err;time;profile;yielding;didBreak;constructor(){this.inflight=0,this.filtered=0,this.pendingFiltered=0,this.processed=0,this.received=0,this.noIterator=!1,this.done=!1,this.signal=(0,Bl0.deferred)(),this.yields=[],this.iterClosed=(0,Bl0.deferred)(),this.time=0,this.yielding=!1,this.didBreak=!1,this.profile=!1}[Symbol.asyncIterator](){return this.iterate()}push($){if(this.done)return;if(this.didBreak){if(typeof $==="function"){let Z=$;try{Z()}catch(X){}}return}if(typeof $==="function")this.pendingFiltered++;this.yields.push($),this.signal.resolve()}async*iterate(){if(this.noIterator)throw new pm1.InvalidOperationError("iterator cannot be used when a callback is registered");if(this.yielding)throw new pm1.InvalidOperationError("iterator is already yielding");this.yielding=!0;try{while(!0){if(this.yields.length===0)await this.signal;if(this.err)throw this.err;let $=this.yields;this.inflight=$.length,this.yields=[];for(let Z=0;Z<$.length;Z++){if(typeof $[Z]==="function"){this.pendingFiltered--;let Q=$[Z];try{Q()}catch(Y){throw Y}if(this.err)throw this.err;continue}this.processed++,this.inflight--;let X=this.profile?Date.now():0;yield $[Z],this.time=this.profile?Date.now()-X:0}if(this.done)break;else if(this.yields.length===0)$.length=0,this.yields=$,this.signal=(0,Bl0.deferred)()}}finally{this.didBreak=!0,this.stop()}}stop($){if(this.done)return;this.err=$,this.done=!0,this.signal.resolve(),this.iterClosed.resolve($)}getProcessed(){return this.noIterator?this.received:this.processed}getPending(){return this.yields.length+this.inflight-this.pendingFiltered}getReceived(){return this.received-this.filtered}}om1.QueuedIteratorImpl=tm1});var Ol0=_((em1)=>{Object.defineProperty(em1,"__esModule",{value:!0});em1.MuxSubscription=void 0;var Ah6=eF(),am1=_Y();class sm1{baseInbox;reqs;constructor(){this.reqs=new Map}size(){return this.reqs.size}init($){return this.baseInbox=`${(0,Ah6.createInbox)($)}.`,this.baseInbox}add($){if(!isNaN($.received))$.received=0;this.reqs.set($.token,$)}get($){return this.reqs.get($)}cancel($){this.reqs.delete($.token)}getToken($){let Z=$.subject||"";if(Z.indexOf(this.baseInbox)===0)return Z.substring(this.baseInbox.length);return null}all(){return Array.from(this.reqs.values())}handleError($,Z){if($)return this.all().forEach((X)=>{X.resolver(Z,{})}),!0;if(Z.operation==="publish"){let X=this.all().find((Q)=>{return Q.requestSubject===Z.subject});if(X)return X.resolver(Z,{}),!0}return!1}dispatcher(){return($,Z)=>{let X=this.getToken(Z);if(X){let Q=this.get(X);if(Q){if($===null)$=Z?.data?.length===0&&Z.headers?.code===503?new am1.NoRespondersError(Q.requestSubject):null;Q.resolver($,Z)}}}}close(){let $=new am1.RequestError("connection closed");this.reqs.forEach((Z)=>{Z.resolver($,{})})}}em1.MuxSubscription=sm1});var Ll0=_((Xi1)=>{Object.defineProperty(Xi1,"__esModule",{value:!0});Xi1.Heartbeat=void 0;var Th6=ZJ();class Zi1{ph;interval;maxOut;timer;pendings;constructor($,Z,X){this.ph=$,this.interval=Z,this.maxOut=X,this.pendings=[]}start(){this.cancel(),this._schedule()}cancel($){if(this.timer)clearTimeout(this.timer),this.timer=void 0;if(this._reset(),$)this.ph.disconnect()}_schedule(){this.timer=setTimeout(()=>{if(this.ph.dispatchStatus({type:"ping",pendingPings:this.pendings.length+1}),this.pendings.length===this.maxOut){this.cancel(!0);return}let $=(0,Th6.deferred)();this.ph.flush($).then(()=>{this._reset()}).catch(()=>{this.cancel()}),this.pendings.push($),this._schedule()},this.interval)}_reset(){this.pendings=this.pendings.filter(($)=>{return $.resolve(),!1})}}Xi1.Heartbeat=Zi1});var zl0=_((Ki1)=>{Object.defineProperty(Ki1,"__esModule",{value:!0});Ki1.DenoBuffer=Ki1.MAX_SIZE=Ki1.AssertionError=void 0;Ki1.assert=Gi1;Ki1.concat=Ji1;Ki1.append=Rh6;Ki1.readAll=qh6;Ki1.writeAll=Mh6;var Ih6=CY();class Dl0 extends Error{constructor($){super($);this.name="AssertionError"}}Ki1.AssertionError=Dl0;function Gi1($,Z="Assertion failed."){if(!$)throw new Dl0(Z)}var Yi1=32768;Ki1.MAX_SIZE=4294967294;function T50($,Z,X=0){let Q=Z.byteLength-X;if($.byteLength>Q)$=$.subarray(0,Q);return Z.set($,X),$.byteLength}function Ji1($,Z){if($===void 0&&Z===void 0)return new Uint8Array(0);if($===void 0)return Z;if(Z===void 0)return $;let X=new Uint8Array($.length+Z.length);return X.set($,0),X.set(Z,$.length),X}function Rh6($,Z){return Ji1($,Uint8Array.of(Z))}class El0{_buf;_off;constructor($){if(this._off=0,$==null){this._buf=new Uint8Array(0);return}this._buf=new Uint8Array($)}bytes($={copy:!0}){if($.copy===!1)return this._buf.subarray(this._off);return this._buf.slice(this._off)}empty(){return this._buf.byteLength<=this._off}get length(){return this._buf.byteLength-this._off}get capacity(){return this._buf.buffer.byteLength}truncate($){if($===0){this.reset();return}if($<0||$>this.length)throw Error("bytes.Buffer: truncation out of range");this._reslice(this._off+$)}reset(){this._reslice(0),this._off=0}_tryGrowByReslice($){let Z=this._buf.byteLength;if($<=this.capacity-Z)return this._reslice(Z+$),Z;return-1}_reslice($){Gi1($<=this._buf.buffer.byteLength),this._buf=new Uint8Array(this._buf.buffer,0,$)}readByte(){let $=new Uint8Array(1);if(this.read($))return $[0];return null}read($){if(this.empty()){if(this.reset(),$.byteLength===0)return 0;return null}let Z=T50(this._buf.subarray(this._off),$);return this._off+=Z,Z}writeByte($){return this.write(Uint8Array.of($))}writeString($){return this.write(Ih6.TE.encode($))}write($){let Z=this._grow($.byteLength);return T50($,this._buf,Z)}_grow($){let Z=this.length;if(Z===0&&this._off!==0)this.reset();let X=this._tryGrowByReslice($);if(X>=0)return X;let Q=this.capacity;if($<=Math.floor(Q/2)-Z)T50(this._buf.subarray(this._off),this._buf);else if(Q+$>Ki1.MAX_SIZE)throw Error("The buffer cannot be grown beyond the maximum size.");else{let Y=new Uint8Array(Math.min(2*Q+$,Ki1.MAX_SIZE));T50(this._buf.subarray(this._off),Y),this._buf=Y}return this._off=0,this._reslice(Math.min(Z+$,Ki1.MAX_SIZE)),Z}grow($){if($<0)throw Error("Buffer._grow: negative count");let Z=this._grow($);this._reslice(Z)}readFrom($){let Z=0,X=new Uint8Array(Yi1);while(!0){let Q=this.capacity-this.length<Yi1,Y=Q?X:new Uint8Array(this._buf.buffer,this.length),G=$.read(Y);if(G===null)return Z;if(Q)this.write(Y.subarray(0,G));else this._reslice(this.length+G);Z+=G}}}Ki1.DenoBuffer=El0;function qh6($){let Z=new El0;return Z.readFrom($),Z.bytes()}function Mh6($,Z){let X=0;while(X<Z.length)X+=$.write(Z.subarray(X))}});var Al0=_((Fi1)=>{Object.defineProperty(Fi1,"__esModule",{value:!0});Fi1.cc=Fi1.State=Fi1.Parser=Fi1.Kind=void 0;Fi1.describe=vh6;var jl0=zl0(),Pl0=CY();Fi1.Kind={OK:0,ERR:1,MSG:2,INFO:3,PING:4,PONG:5};function vh6($){let Z,X="";switch($.kind){case Fi1.Kind.MSG:Z="MSG";break;case Fi1.Kind.OK:Z="OK";break;case Fi1.Kind.ERR:Z="ERR",X=Pl0.TD.decode($.data);break;case Fi1.Kind.PING:Z="PING";break;case Fi1.Kind.PONG:Z="PONG";break;case Fi1.Kind.INFO:Z="INFO",X=Pl0.TD.decode($.data)}return`${Z}: ${X}`}function Hi1(){let $={};return $.sid=-1,$.hdr=-1,$.size=-1,$}var Ni1=48,fh6=57,Vf=67108864;class Ui1{dispatcher;state;as;drop;hdr;ma;argBuf;msgBuf;constructor($){this.dispatcher=$,this.state=Fi1.State.OP_START,this.as=0,this.drop=0,this.hdr=0}parse($){let Z;for(Z=0;Z<$.length;Z++){let X=$[Z];switch(this.state){case Fi1.State.OP_START:switch(X){case Fi1.cc.M:case Fi1.cc.m:this.state=Fi1.State.OP_M,this.hdr=-1,this.ma=Hi1();break;case Fi1.cc.H:case Fi1.cc.h:this.state=Fi1.State.OP_H,this.hdr=0,this.ma=Hi1();break;case Fi1.cc.P:case Fi1.cc.p:this.state=Fi1.State.OP_P;break;case Fi1.cc.PLUS:this.state=Fi1.State.OP_PLUS;break;case Fi1.cc.MINUS:this.state=Fi1.State.OP_MINUS;break;case Fi1.cc.I:case Fi1.cc.i:this.state=Fi1.State.OP_I;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_H:switch(X){case Fi1.cc.M:case Fi1.cc.m:this.state=Fi1.State.OP_M;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_M:switch(X){case Fi1.cc.S:case Fi1.cc.s:this.state=Fi1.State.OP_MS;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_MS:switch(X){case Fi1.cc.G:case Fi1.cc.g:this.state=Fi1.State.OP_MSG;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_MSG:switch(X){case Fi1.cc.SPACE:case Fi1.cc.TAB:this.state=Fi1.State.OP_MSG_SPC;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_MSG_SPC:switch(X){case Fi1.cc.SPACE:case Fi1.cc.TAB:continue;default:this.state=Fi1.State.MSG_ARG,this.as=Z}break;case Fi1.State.MSG_ARG:switch(X){case Fi1.cc.CR:this.drop=1;break;case Fi1.cc.NL:{let Q=this.argBuf?this.argBuf.bytes():$.subarray(this.as,Z-this.drop);this.processMsgArgs(Q),this.drop=0,this.as=Z+1,this.state=Fi1.State.MSG_PAYLOAD,Z=this.as+this.ma.size-1;break}default:if(this.argBuf)this.argBuf.writeByte(X)}break;case Fi1.State.MSG_PAYLOAD:if(this.msgBuf)if(this.msgBuf.length>=this.ma.size){let Q=this.msgBuf.bytes({copy:!1});this.dispatcher.push({kind:Fi1.Kind.MSG,msg:this.ma,data:Q}),this.argBuf=void 0,this.msgBuf=void 0,this.state=Fi1.State.MSG_END}else{let Q=this.ma.size-this.msgBuf.length,Y=$.length-Z;if(Y<Q)Q=Y;if(Q>0)this.msgBuf.write($.subarray(Z,Z+Q)),Z=Z+Q-1;else this.msgBuf.writeByte(X)}else if(Z-this.as>=this.ma.size)this.dispatcher.push({kind:Fi1.Kind.MSG,msg:this.ma,data:$.subarray(this.as,Z)}),this.argBuf=void 0,this.msgBuf=void 0,this.state=Fi1.State.MSG_END;break;case Fi1.State.MSG_END:switch(X){case Fi1.cc.NL:this.drop=0,this.as=Z+1,this.state=Fi1.State.OP_START;break;default:continue}break;case Fi1.State.OP_PLUS:switch(X){case Fi1.cc.O:case Fi1.cc.o:this.state=Fi1.State.OP_PLUS_O;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_PLUS_O:switch(X){case Fi1.cc.K:case Fi1.cc.k:this.state=Fi1.State.OP_PLUS_OK;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_PLUS_OK:switch(X){case Fi1.cc.NL:this.dispatcher.push({kind:Fi1.Kind.OK}),this.drop=0,this.state=Fi1.State.OP_START;break}break;case Fi1.State.OP_MINUS:switch(X){case Fi1.cc.E:case Fi1.cc.e:this.state=Fi1.State.OP_MINUS_E;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_MINUS_E:switch(X){case Fi1.cc.R:case Fi1.cc.r:this.state=Fi1.State.OP_MINUS_ER;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_MINUS_ER:switch(X){case Fi1.cc.R:case Fi1.cc.r:this.state=Fi1.State.OP_MINUS_ERR;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_MINUS_ERR:switch(X){case Fi1.cc.SPACE:case Fi1.cc.TAB:this.state=Fi1.State.OP_MINUS_ERR_SPC;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_MINUS_ERR_SPC:switch(X){case Fi1.cc.SPACE:case Fi1.cc.TAB:continue;default:this.state=Fi1.State.MINUS_ERR_ARG,this.as=Z}break;case Fi1.State.MINUS_ERR_ARG:switch(X){case Fi1.cc.CR:this.drop=1;break;case Fi1.cc.NL:{let Q;if(this.argBuf)Q=this.argBuf.bytes(),this.argBuf=void 0;else Q=$.subarray(this.as,Z-this.drop);this.dispatcher.push({kind:Fi1.Kind.ERR,data:Q}),this.drop=0,this.as=Z+1,this.state=Fi1.State.OP_START;break}default:if(this.argBuf)this.argBuf.write(Uint8Array.of(X))}break;case Fi1.State.OP_P:switch(X){case Fi1.cc.I:case Fi1.cc.i:this.state=Fi1.State.OP_PI;break;case Fi1.cc.O:case Fi1.cc.o:this.state=Fi1.State.OP_PO;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_PO:switch(X){case Fi1.cc.N:case Fi1.cc.n:this.state=Fi1.State.OP_PON;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_PON:switch(X){case Fi1.cc.G:case Fi1.cc.g:this.state=Fi1.State.OP_PONG;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_PONG:switch(X){case Fi1.cc.NL:this.dispatcher.push({kind:Fi1.Kind.PONG}),this.drop=0,this.state=Fi1.State.OP_START;break}break;case Fi1.State.OP_PI:switch(X){case Fi1.cc.N:case Fi1.cc.n:this.state=Fi1.State.OP_PIN;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_PIN:switch(X){case Fi1.cc.G:case Fi1.cc.g:this.state=Fi1.State.OP_PING;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_PING:switch(X){case Fi1.cc.NL:this.dispatcher.push({kind:Fi1.Kind.PING}),this.drop=0,this.state=Fi1.State.OP_START;break}break;case Fi1.State.OP_I:switch(X){case Fi1.cc.N:case Fi1.cc.n:this.state=Fi1.State.OP_IN;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_IN:switch(X){case Fi1.cc.F:case Fi1.cc.f:this.state=Fi1.State.OP_INF;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_INF:switch(X){case Fi1.cc.O:case Fi1.cc.o:this.state=Fi1.State.OP_INFO;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_INFO:switch(X){case Fi1.cc.SPACE:case Fi1.cc.TAB:this.state=Fi1.State.OP_INFO_SPC;break;default:throw this.fail($.subarray(Z))}break;case Fi1.State.OP_INFO_SPC:switch(X){case Fi1.cc.SPACE:case Fi1.cc.TAB:continue;default:this.state=Fi1.State.INFO_ARG,this.as=Z}break;case Fi1.State.INFO_ARG:switch(X){case Fi1.cc.CR:this.drop=1;break;case Fi1.cc.NL:{let Q;if(this.argBuf)Q=this.argBuf.bytes(),this.argBuf=void 0;else Q=$.subarray(this.as,Z-this.drop);this.dispatcher.push({kind:Fi1.Kind.INFO,data:Q}),this.drop=0,this.as=Z+1,this.state=Fi1.State.OP_START;break}default:if(this.argBuf)this.argBuf.writeByte(X)}break;default:throw this.fail($.subarray(Z))}}if((this.state===Fi1.State.MSG_ARG||this.state===Fi1.State.MINUS_ERR_ARG||this.state===Fi1.State.INFO_ARG)&&!this.argBuf)this.argBuf=new jl0.DenoBuffer($.subarray(this.as,Z-this.drop));if(this.state===Fi1.State.MSG_PAYLOAD&&!this.msgBuf){if(!this.argBuf)this.cloneMsgArg();this.msgBuf=new jl0.DenoBuffer($.subarray(this.as))}}cloneMsgArg(){let $=this.ma.subject.length,Z=this.ma.reply?this.ma.reply.length:0,X=new Uint8Array($+Z);if(X.set(this.ma.subject),this.ma.reply)X.set(this.ma.reply,$);if(this.argBuf=new jl0.DenoBuffer(X),this.ma.subject=X.subarray(0,$),this.ma.reply)this.ma.reply=X.subarray($)}processMsgArgs($){if(this.hdr>=0)return this.processHeaderMsgArgs($);let Z=[],X=-1;for(let Q=0;Q<$.length;Q++)switch($[Q]){case Fi1.cc.SPACE:case Fi1.cc.TAB:case Fi1.cc.CR:case Fi1.cc.NL:if(X>=0)Z.push($.subarray(X,Q)),X=-1;break;default:if(X<0)X=Q}if(X>=0)Z.push($.subarray(X));switch(Z.length){case 3:this.ma.subject=Z[0],this.ma.sid=this.protoParseInt(Z[1]),this.ma.reply=void 0,this.ma.size=this.protoParseInt(Z[2],Vf);break;case 4:this.ma.subject=Z[0],this.ma.sid=this.protoParseInt(Z[1]),this.ma.reply=Z[2],this.ma.size=this.protoParseInt(Z[3],Vf);break;default:throw this.fail($,"processMsgArgs Parse Error")}if(this.ma.sid<0)throw this.fail($,"processMsgArgs Bad or Missing Sid Error");if(this.ma.size<0)throw this.fail($,"processMsgArgs Bad or Missing Size Error")}fail($,Z=""){if(!Z)Z=`parse error [${this.state}]`;else Z=`${Z} [${this.state}]`;return Error(`${Z}: ${Pl0.TD.decode($)}`)}processHeaderMsgArgs($){let Z=[],X=-1;for(let Q=0;Q<$.length;Q++)switch($[Q]){case Fi1.cc.SPACE:case Fi1.cc.TAB:case Fi1.cc.CR:case Fi1.cc.NL:if(X>=0)Z.push($.subarray(X,Q)),X=-1;break;default:if(X<0)X=Q}if(X>=0)Z.push($.subarray(X));switch(Z.length){case 4:this.ma.subject=Z[0],this.ma.sid=this.protoParseInt(Z[1]),this.ma.reply=void 0,this.ma.hdr=this.protoParseInt(Z[2],Vf),this.ma.size=this.protoParseInt(Z[3],Vf);break;case 5:this.ma.subject=Z[0],this.ma.sid=this.protoParseInt(Z[1]),this.ma.reply=Z[2],this.ma.hdr=this.protoParseInt(Z[3],Vf),this.ma.size=this.protoParseInt(Z[4],Vf);break;default:throw this.fail($,"processHeaderMsgArgs Parse Error")}if(this.ma.sid<0)throw this.fail($,"processHeaderMsgArgs Bad or Missing Sid Error");if(this.ma.hdr<0||this.ma.hdr>this.ma.size)throw this.fail($,"processHeaderMsgArgs Bad or Missing Header Size Error");if(this.ma.size<0)throw this.fail($,"processHeaderMsgArgs Bad or Missing Size Error")}protoParseInt($,Z){if($.length===0||$.length>15)return-1;let X=0;for(let Q=0;Q<$.length;Q++){if($[Q]<Ni1||$[Q]>fh6)return-1;X=X*10+($[Q]-Ni1)}return Z!==void 0&&X>Z?-1:X}}Fi1.Parser=Ui1;Fi1.State={OP_START:0,OP_PLUS:1,OP_PLUS_O:2,OP_PLUS_OK:3,OP_MINUS:4,OP_MINUS_E:5,OP_MINUS_ER:6,OP_MINUS_ERR:7,OP_MINUS_ERR_SPC:8,MINUS_ERR_ARG:9,OP_M:10,OP_MS:11,OP_MSG:12,OP_MSG_SPC:13,MSG_ARG:14,MSG_PAYLOAD:15,MSG_END:16,OP_H:17,OP_P:18,OP_PI:19,OP_PIN:20,OP_PING:21,OP_PO:22,OP_PON:23,OP_PONG:24,OP_I:25,OP_IN:26,OP_INF:27,OP_INFO:28,OP_INFO_SPC:29,INFO_ARG:30};Fi1.cc={CR:13,E:69,e:101,F:70,f:102,G:71,g:103,H:72,h:104,I:73,i:105,K:75,k:107,M:77,m:109,MINUS:45,N:78,n:110,NL:10,O:79,o:111,P:80,p:112,PLUS:43,R:82,r:114,S:83,s:115,SPACE:32,TAB:9}});var q50=_((Bi1)=>{Object.defineProperty(Bi1,"__esModule",{value:!0});Bi1.MsgHdrsImpl=void 0;Bi1.canonicalMIMEHeaderKey=Il0;Bi1.headers=gh6;var wi1=CY(),XJ=eF(),R50=_Y();function Il0($){let N=!0,U=Array($.length);for(let F=0;F<$.length;F++){let w=$.charCodeAt(F);if(w===58||w<33||w>126)throw R50.InvalidArgumentError.format("header",`'${$[F]}' is not a valid character in a header name`);if(N&&97<=w&&w<=122)w-=32;else if(!N&&65<=w&&w<=90)w+=32;U[F]=w,N=w==45}return String.fromCharCode(...U)}function gh6($=0,Z=""){if($===0&&Z!=="")throw R50.InvalidArgumentError.format("code","is required");else if($>0&&Z==="")throw R50.InvalidArgumentError.format("description","is required");return new Cf($,Z)}var Tl0="NATS/1.0";class Cf{_code;headers;_description;constructor($=0,Z=""){this._code=$,this._description=Z,this.headers=new Map}[Symbol.iterator](){return this.headers.entries()}size(){return this.headers.size}equals($){if($&&this.headers.size===$.headers.size&&this._code===$._code){for(let[Z,X]of this.headers){let Q=$.values(Z);if(X.length!==Q.length)return!1;let Y=[...X].sort(),G=[...Q].sort();for(let J=0;J<Y.length;J++)if(Y[J]!==G[J])return!1}return!0}return!1}static decode($){let Z=new Cf,Q=wi1.TD.decode($).split(`\r
|
|
1257
1257
|
`),Y=Q[0];if(Y!==Tl0){let G=Y.replace(Tl0,"").trim();if(G.length>0){if(Z._code=parseInt(G,10),isNaN(Z._code))Z._code=0;let J=Z._code.toString();G=G.replace(J,""),Z._description=G.trim()}}if(Q.length>=1)Q.slice(1).map((G)=>{if(G){let J=G.indexOf(":");if(J>-1){let K=G.slice(0,J),W=G.slice(J+1).trim();Z.append(K,W)}}});return Z}toString(){if(this.headers.size===0&&this._code===0)return"";let $=Tl0;if(this._code>0&&this._description!=="")$+=` ${this._code} ${this._description}`;for(let[Z,X]of this.headers)for(let Q=0;Q<X.length;Q++)$=`${$}\r
|
|
1258
1258
|
${Z}: ${X[Q]}`;return`${$}\r
|
|
@@ -2387,8 +2387,7 @@ ${H}`:H;return{...J,description:N,inputExamples:X?void 0:J.inputExamples}});retu
|
|
|
2387
2387
|
|
|
2388
2388
|
`)},flush($){$.enqueue(`data: [DONE]
|
|
2389
2389
|
|
|
2390
|
-
`)}})}},$61={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"};ao=U1.record(U1.string(),_z.optional()),Z61=V0(()=>K0(U1.union([U1.strictObject({type:U1.literal("text-start"),id:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("text-delta"),id:U1.string(),delta:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("text-end"),id:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("error"),errorText:U1.string()}),U1.strictObject({type:U1.literal("tool-input-start"),toolCallId:U1.string(),toolName:U1.string(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional(),title:U1.string().optional()}),U1.strictObject({type:U1.literal("tool-input-delta"),toolCallId:U1.string(),inputTextDelta:U1.string()}),U1.strictObject({type:U1.literal("tool-input-available"),toolCallId:U1.string(),toolName:U1.string(),input:U1.unknown(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional(),title:U1.string().optional()}),U1.strictObject({type:U1.literal("tool-input-error"),toolCallId:U1.string(),toolName:U1.string(),input:U1.unknown(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional(),errorText:U1.string(),title:U1.string().optional()}),U1.strictObject({type:U1.literal("tool-approval-request"),approvalId:U1.string(),toolCallId:U1.string(),signature:U1.string().optional()}),U1.strictObject({type:U1.literal("tool-output-available"),toolCallId:U1.string(),output:U1.unknown(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional(),preliminary:U1.boolean().optional()}),U1.strictObject({type:U1.literal("tool-output-error"),toolCallId:U1.string(),errorText:U1.string(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional()}),U1.strictObject({type:U1.literal("tool-output-denied"),toolCallId:U1.string()}),U1.strictObject({type:U1.literal("reasoning-start"),id:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("reasoning-delta"),id:U1.string(),delta:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("reasoning-end"),id:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("source-url"),sourceId:U1.string(),url:U1.string(),title:U1.string().optional(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("source-document"),sourceId:U1.string(),mediaType:U1.string(),title:U1.string(),filename:U1.string().optional(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("file"),url:U1.string(),mediaType:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.custom(($)=>typeof $==="string"&&$.startsWith("data-"),{message:'Type must start with "data-"'}),id:U1.string().optional(),data:U1.unknown(),transient:U1.boolean().optional()}),U1.strictObject({type:U1.literal("start-step")}),U1.strictObject({type:U1.literal("finish-step")}),U1.strictObject({type:U1.literal("start"),messageId:U1.string().optional(),messageMetadata:U1.unknown().optional()}),U1.strictObject({type:U1.literal("finish"),finishReason:U1.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:U1.unknown().optional()}),U1.strictObject({type:U1.literal("abort"),reason:U1.string().optional()}),U1.strictObject({type:U1.literal("message-metadata"),messageMetadata:U1.unknown()})])));IR4=z3;RR4=$r;MR4=bJ({prefix:"aitxt",size:24}),kR4={file:!0,source:!0,"text-start":!0,"text-end":!0,"text-delta":!0,"reasoning-start":!0,"reasoning-end":!0,"reasoning-delta":!0,"tool-input-start":!0,"tool-input-end":!0,"tool-input-delta":!0,"tool-approval-request":!0,"tool-call":!0,"tool-result":!0,"tool-error":!0,"stream-start":!1,"response-metadata":!1,finish:!1,error:!1,raw:!1};sQ=O0.record(O0.string(),_z.optional()),xR4=V0(()=>K0(O0.array(O0.object({id:O0.string(),role:O0.enum(["system","user","assistant"]),metadata:O0.unknown().optional(),parts:O0.array(O0.union([O0.object({type:O0.literal("text"),text:O0.string(),state:O0.enum(["streaming","done"]).optional(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("reasoning"),text:O0.string(),state:O0.enum(["streaming","done"]).optional(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("source-url"),sourceId:O0.string(),url:O0.string(),title:O0.string().optional(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("source-document"),sourceId:O0.string(),mediaType:O0.string(),title:O0.string(),filename:O0.string().optional(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("file"),mediaType:O0.string(),filename:O0.string().optional(),url:O0.string(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("step-start")}),O0.object({type:O0.string().startsWith("data-"),id:O0.string().optional(),data:O0.unknown()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("input-streaming"),input:O0.unknown().optional(),providerExecuted:O0.boolean().optional(),callProviderMetadata:B8.optional(),output:O0.never().optional(),errorText:O0.never().optional(),approval:O0.never().optional()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("input-available"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.never().optional()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("approval-requested"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.never().optional(),reason:O0.never().optional(),signature:O0.string().optional()})}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("approval-responded"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.boolean(),reason:O0.string().optional(),signature:O0.string().optional()})}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-available"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.unknown(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),resultProviderMetadata:B8.optional(),preliminary:O0.boolean().optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!0),reason:O0.string().optional(),signature:O0.string().optional()}).optional()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-error"),input:O0.unknown().optional(),rawInput:O0.unknown().optional(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.string(),callProviderMetadata:B8.optional(),resultProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!0),reason:O0.string().optional(),signature:O0.string().optional()}).optional()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-denied"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!1),reason:O0.string().optional(),signature:O0.string().optional()})}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("input-streaming"),providerExecuted:O0.boolean().optional(),callProviderMetadata:B8.optional(),input:O0.unknown().optional(),output:O0.never().optional(),errorText:O0.never().optional(),approval:O0.never().optional()}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("input-available"),providerExecuted:O0.boolean().optional(),input:O0.unknown(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.never().optional()}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("approval-requested"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.never().optional(),reason:O0.never().optional(),signature:O0.string().optional()})}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("approval-responded"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.boolean(),reason:O0.string().optional(),signature:O0.string().optional()})}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-available"),providerExecuted:O0.boolean().optional(),input:O0.unknown(),output:O0.unknown(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),resultProviderMetadata:B8.optional(),preliminary:O0.boolean().optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!0),reason:O0.string().optional(),signature:O0.string().optional()}).optional()}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-error"),providerExecuted:O0.boolean().optional(),input:O0.unknown().optional(),rawInput:O0.unknown().optional(),output:O0.never().optional(),errorText:O0.string(),callProviderMetadata:B8.optional(),resultProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!0),reason:O0.string().optional(),signature:O0.string().optional()}).optional()}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-denied"),providerExecuted:O0.boolean().optional(),input:O0.unknown(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!1),reason:O0.string().optional(),signature:O0.string().optional()})})])).nonempty("Message must contain at least one part")})).nonempty("Messages array must not be empty")));lR4=T30,dR4={type:"no-schema",jsonSchema:async()=>{return},async validatePartialResult({value:$,textDelta:Z}){return{success:!0,value:{partial:$,textDelta:Z}}},async validateFinalResult($,Z){return $===void 0?{success:!1,error:new $Y({message:"No object generated: response did not match schema.",text:Z.text,response:Z.response,usage:Z.usage,finishReason:Z.finishReason})}:{success:!0,value:$}},createElementStream(){throw new x4({functionality:"element streams in no-schema mode"})}};pR4=bJ({prefix:"aiobj",size:24});sR4=bJ({prefix:"aiobj",size:24});Z24=class extends aB{constructor({data:$,mediaType:Z}){super({data:$,mediaType:Z});let X="mp3";if(Z){let Q=Z.split("/");if(Q.length===2){if(Z!=="audio/mpeg")X=Q[1]}}if(!X)throw Error("Audio format must be provided or determinable from media type");this.format=X}};Y24={word:/\S+\s+/m,line:/\n+/m};J24=K61();I24=Jz8,Wz8=`vercel.ai.error.${Kz8}`,R24=Symbol.for(Wz8),Nz8=class extends v5{constructor({modelId:$,modelType:Z,providerId:X,availableProviders:Q,message:Y=`No such provider: ${X} (available providers: ${Q.join()})`}){super({errorName:Kz8,modelId:$,modelType:Z,message:Y});this[Hz8]=!0,this.providerId=X,this.availableProviders=Q}static isInstance($){return L1.hasMarker($,Wz8)}};Hz8=R24;q24=Uz8;S24=K61();wz8=class extends N61{constructor($={}){super($)}processResponseStream($){return iN({stream:$,schema:Z61}).pipeThrough(new TransformStream({async transform(Z,X){if(!Z.success)throw Z.error;X.enqueue(Z.value)}}))}};u24=class extends N61{constructor($={}){super($)}processResponseStream($){return h24({stream:$.pipeThrough(new TextDecoderStream)})}}});function Bz8($){return{type:"data-title-result",data:{title:$},transient:!0}}function F61($){return $.type==="data-title-input"}function w61($){return $.type==="data-title-result"}async function*Oz8($,Z){let X=Z.persistTitle??((Y,G)=>Z.ctx.storage.threads.update(Y,{title:G}).then(()=>{})),Q=!1;for await(let Y of $){if(F61(Y)){console.warn("[title-interceptor] harness emitted deprecated data-title-input chunk; ignoring");continue}if(w61(Y)){if(Q){console.warn("[title-interceptor] harness emitted multiple data-title-result chunks; ignoring extra");continue}if(Q=!0,Z.currentThreadTitle!==lN)continue;let G=Y.data.title;if(!G)continue;await X(Z.threadId,G).catch((J)=>{console.error("[title-interceptor] persist failed for thread",Z.threadId,J)});try{await Z.onTitleUpdated?.(G)}catch(J){console.error("[title-interceptor] onTitleUpdated callback failed",J)}if(!Z.isStreamFinished())try{Z.writer.write({type:"data-thread-title",data:{title:G},transient:!0})}catch(J){console.error("[title-interceptor] writer.write failed",J)}continue}yield Y}}function Lz8($,Z){let X=Z.persistTitle??((Y,G)=>Z.ctx.storage.threads.update(Y,{title:G}).then(()=>{})),Q=!1;return $.pipeThrough(new TransformStream({async transform(Y,G){if(F61(Y)){console.warn("[title-interceptor] harness emitted deprecated data-title-input chunk; ignoring");return}if(w61(Y)){if(Q){console.warn("[title-interceptor] harness emitted multiple data-title-result chunks; ignoring extra");return}if(Q=!0,Z.currentThreadTitle!==lN)return;let J=Y.data.title;if(!J)return;await X(Z.threadId,J).catch((K)=>{console.error("[title-interceptor] persist failed for thread",Z.threadId,K)});try{await Z.onTitleUpdated?.(J)}catch(K){console.error("[title-interceptor] onTitleUpdated callback failed",K)}if(!Z.isStreamFinished())try{Z.writer.write({type:"data-thread-title",data:{title:J},transient:!0})}catch(K){console.error("[title-interceptor] writer.write failed",K)}return}G.enqueue(Y)}}))}var Dz8=O(()=>{DB()});function c24($){let Z=$[Symbol.asyncIterator]();return new ReadableStream({async pull(X){try{let{value:Q,done:Y}=await Z.next();if(Y)X.close();else X.enqueue(Q)}catch(Q){X.error(Q)}},async cancel(X){await Z.return?.(X)}})}function l24($,Z){let X=$.getReader(),Q=!1,Y=()=>{if(Q)return;Q=!0,X.releaseLock()};return new ReadableStream({async pull(G){try{let{done:J,value:K}=await X.read();if(J)Y(),G.close();else G.enqueue(K)}catch(J){Z(),Y(),G.error(J)}},async cancel(G){await X.cancel(G),Y()}})}function d24($){let Z=$.metadata?.usage;if(!Z||typeof Z!=="object"||Array.isArray(Z))return null;let X=Z,Q=(Y)=>typeof Y==="number"?Y:0;return{...X,inputTokens:Q(X.inputTokens),outputTokens:Q(X.outputTokens),totalTokens:Q(X.totalTokens)}}function I30($){let Z=[],X=!1,Q=!1,Y=!1,G=!0,J=$.errorMessageId??crypto.randomUUID(),K,W=new Promise((z)=>{K=z});if(!$.chunks&&!$.chunkStream)throw Error("consumeHarnessStream requires chunks or chunkStream");let H=$.chunks?async function*(){try{yield*$.chunks}catch(z){throw Y=!0,z}}():null,N=$.chunkStream?l24($.chunkStream,()=>{Y=!0}):null,U=$.originalMessages?.at(-1),F=!$.generateMessageId&&U?.role==="assistant"?U.id:void 0,w=new Map,B=null,L=(z)=>{if($.generateMessageId){let j=w.get(z);if(j===void 0)j=$.generateMessageId(),w.set(z,j);return j}if(B===null)B=z;return F&&z===B?F:z},D=(z)=>({...z,id:L(z.id)});return{uiStream:G61({originalMessages:$.originalMessages,execute:({writer:z})=>{let j={ctx:null,isStreamFinished:()=>X,currentThreadTitle:$.title.currentThreadTitle,threadId:$.title.threadId,writer:z,onTitleUpdated:$.title.onTitleUpdated,persistTitle:$.title.persistTitle};if(N){z.merge(Lz8(N,j));return}let A=Oz8(H,j);z.merge(c24(A))},onStepFinish:({responseMessage:z})=>{let j=D(z);Z.push($.persistence.emitStepParts(j).catch((A)=>{G=!1,console.error("[consume-harness-stream] emitStepParts failed",A)})),Z.push(Promise.resolve($.hooks?.onStep?.(j)).catch((A)=>console.error("[consume-harness-stream] onStep hook failed",A)))},onFinish:async({responseMessage:z,finishReason:j})=>{X=!0,await Promise.allSettled(Z);let A=D(z);if(!Q){if(j)A.metadata={...A.metadata??{},finishReason:j};await $.persistence.emitFinal(A).catch((R)=>{G=!1,console.error("[consume-harness-stream] emitFinal failed",R)})}let P=d24(A);if(P)await Promise.resolve($.hooks?.onUsage?.(P)).catch((R)=>console.error("[consume-harness-stream] onUsage hook failed",R));if(!Y)await Promise.resolve($.hooks?.onFinish?.(A,j,{persistenceOk:G})).catch((R)=>console.error("[consume-harness-stream] onFinish hook failed",R));K()},onError:(z)=>{X=!0;let j=z instanceof Error?z.message:String(z);if(!Q)Q=!0,Z.push($.persistence.emitError(J,j).catch((A)=>{G=!1,console.error("[consume-harness-stream] emitError failed",A)})),Z.push(Promise.resolve($.hooks?.onError?.(z)).catch((A)=>console.error("[consume-harness-stream] onError hook failed",A)));return $.sanitizeErrorText?$.sanitizeErrorText(z):j}}),whenComplete:W,isStreamFinished:()=>X}}var B61=O(()=>{h4();Dz8()});function m24($){return{type:"data-user-message",data:$}}function Ez8($){if(!$||typeof $!=="object")return!1;return $.type==="data-user-message"}async function zz8($,Z,X){if(!$)return;try{await $.publishRawChunk(Z,m24(X))}catch{}}function jz8($){return ZO8($)||Ez8($)}async function i24($){let Z=$.getReader();try{while(!0){let{done:X}=await Z.read();if(X)break}}finally{Z.releaseLock()}}function n24($,Z){let X=$.getReader(),Q=!1,Y=()=>{if(Q)return;Q=!0,X.releaseLock()};return new ReadableStream({async pull(G){try{let{done:J,value:K}=await X.read();if(J)Y(),G.close();else G.enqueue(K)}catch(J){Z(J),Y(),G.error(J)}},async cancel(G){await X.cancel(G),Y()}})}async function Pz8($){if(!$.chunks&&!$.chunkStream)throw Error("projectChunks requires chunks or chunkStream");let Z=null,X=!1,Q=void 0,Y={inputTokens:0,outputTokens:0,totalTokens:0},G=[],J=null,K=(B)=>{if(J===null)J=B;throw B},W=$.chunks?async function*(){try{for await(let B of $.chunks){if(jz8(B))continue;yield B}}catch(B){throw Z=B,B}}():void 0,H=$.chunkStream?n24($.chunkStream,(B)=>{Z=B}).pipeThrough(new TransformStream({transform(B,L){if(!jz8(B))L.enqueue(B)}})):void 0,N={emitStepParts:(B)=>$.persistence.emitStepParts(B).catch(K),emitFinal:(B)=>$.persistence.emitFinal(B).catch(K),emitError:(B,L)=>$.persistence.emitError(B,L).catch(K)},{uiStream:U,whenComplete:F}=I30({chunks:W,chunkStream:H,originalMessages:$.originalMessages??[],title:$.title?{currentThreadTitle:$.title.currentThreadTitle,threadId:$.title.threadId,persistTitle:$.title.persistTitle}:{currentThreadTitle:void 0,threadId:"projector",persistTitle:async()=>{}},persistence:N,sanitizeErrorText:$.sanitizeErrorText,errorMessageId:$.errorMessageId,generateMessageId:$.generateMessageId,hooks:{onUsage:(B)=>{Y={inputTokens:B.inputTokens,outputTokens:B.outputTokens,totalTokens:B.totalTokens}},onError:()=>{X=!0},onFinish:(B,L)=>{Q=L,G=Array.isArray(B.parts)?B.parts.filter((D)=>D!=null&&typeof D==="object"&&("type"in D)):[]}}});if(await i24(U).catch(()=>{}),await F,J!==null)throw J;if(Z!==null)throw Z;return{failed:X&&Q===void 0,finishReason:Q,usage:Y,finalParts:G}}var Az8=O(()=>{B61();Gh()});var Wr=786432;function t24($){if(/[.*>\s]/.test($))throw Error("Invalid NATS subject token")}function QO($){return t24($),`${R30}.${$}`}function Tz8($){let Z=`${$.runId}:${$.fenceToken}:${$.seq}`;return $.fragmentIndex===void 0?Z:`${Z}:frag:${$.fragmentIndex}`}function o24($){return`${$.runId}:${$.fenceToken}:done:${$.finalSeq}`}function Iz8($){if(!$)return null;let Z=Number($);return Number.isInteger(Z)&&Z>0?Z:null}function r24($){if(!$)return null;let Z=Number($);return Number.isInteger(Z)&&Z>=0?Z:null}function a24($){if(!$)return null;let Z=$.split(":"),[X,Q,Y,G,J]=Z;if(!X||!Q||!Y)return null;if(Y==="done"){let W=Iz8(G);return Z.length===4&&W!==null?{kind:"done",runId:X,fenceToken:Q,finalSeq:W}:null}if(Y==="ckpt")return null;let K=Iz8(Y);if(K===null)return null;if(Z.length===3)return{kind:"chunk",runId:X,fenceToken:Q,seq:K,fragmentIndex:null};if(Z.length===5&&G==="frag"){let W=r24(J);return W===null?null:{kind:"chunk",runId:X,fenceToken:Q,seq:K,fragmentIndex:W}}return null}function L61($,Z){let X=QO(Z.runId),Q=O61.encode(JSON.stringify({p:$}));if(Q.length>p24)return[];if(Q.length<=Wr)return[{subject:X,data:Q,msgId:Z.dedup?Tz8({runId:Z.runId,...Z.dedup}):void 0}];let Y=Math.ceil(Q.length/Wr),G=[];for(let J=0;J<Y;J++)G.push({subject:X,data:Q.slice(J*Wr,(J+1)*Wr),headers:{[Rz8]:String(J),[qz8]:String(Y)},msgId:Z.dedup?Tz8({runId:Z.runId,...Z.dedup,fragmentIndex:J}):void 0});return G}function Mz8($){return{subject:QO($.runId),data:O61.encode(JSON.stringify({done:!0,finalSeq:$.finalSeq})),msgId:o24($)}}function kz8($){return{subject:QO($),data:O61.encode(JSON.stringify({done:!0}))}}function s24($){let Z=$.reduce((Y,G)=>Y+(G?.length??0),0),X=new Uint8Array(Z),Q=0;for(let Y of $){if(!Y)continue;X.set(Y,Q),Q+=Y.length}return X}function q30(){let $=null;return new TransformStream({transform(Z,X){let Q=Z.headers?.get(qz8);if(!Q){X.enqueue(Z);return}let Y=Number(Q),G=Number(Z.headers?.get(Rz8)??"0");if(G===0)$={total:Y,received:0,parts:Array(Y)};else if(!$||$.total!==Y)return;if(!$.parts[G])$.received++;if($.parts[G]=Z.data,$.received<$.total)return;let J=s24($.parts);$=null,X.enqueue({subject:Z.subject,data:J,headers:Z.headers})}})}function e24($){return typeof $==="number"&&Number.isInteger($)&&$>0}function Zq4($){let Z=a24($.headers?.get("Nats-Msg-Id")||void 0),X;try{X=JSON.parse($q4.decode($.data))}catch{return null}if(!X||typeof X!=="object")return null;let Q=X;if(Q.done===!0)return{kind:"done",runId:Z?.kind==="done"?Z.runId:null,fenceToken:Z?.kind==="done"?Z.fenceToken:null,envelopeFinalSeq:e24(Q.finalSeq)?Q.finalSeq:null,msgIdFinalSeq:Z?.kind==="done"?Z.finalSeq:null};if("p"in Q)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:Q.p};return null}function M30(){return new TransformStream({transform($,Z){let X=Zq4($);if(X)Z.enqueue(X)}})}var R30="decopilot.stream",Rz8="Dp-Frag-Idx",qz8="Dp-Frag-Total",p24=33554432,O61,$q4;var Sz8=O(()=>{O61=new TextEncoder;$q4=new TextDecoder});var k30=O(()=>{Sz8()});var wU="DECOPILOT_STREAMS";var D61=O(()=>{k30()});function Vz8($,Z){return new TransformStream({transform(X,Q){if(X.runId!==$||X.fenceToken!==Z)return;Q.enqueue(X)}})}function Cz8(){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 Hr($,Z.seq));return}$++,X.enqueue(Z)}})}function _z8($){let Z=$.getReader(),X=!1,Q=0,Y=()=>{if(X)return;X=!0,Z.releaseLock()};return new ReadableStream({async pull(G){for(;;){let{done:J,value:K}=await Z.read();if(J){await Z.cancel(),Y(),G.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!==Q){await Z.cancel(),Y(),G.error(new Hr(Q+1,null));return}await Z.cancel(),Y(),G.close();return}Q=W.seq??Q,G.enqueue(W.chunk);return}},async cancel(G){await Z.cancel(G),Y()}})}function Xq4($){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 V30($){let Z=Xq4($.messages),X=$.idleTimeoutMs,Q=!1,Y=(G)=>{if(Q)return;Q=!0,Z.return?.(G).catch(()=>{}),$.onCancel?.()};return new ReadableStream({async pull(G){if(X===void 0){let{done:N,value:U}=await Z.next();if(N){G.close();return}G.enqueue(U);return}let J=new AbortController,K=Z.next().then((N)=>{return J.abort(),N}),W=Z6(X,{signal:J.signal}).then(()=>"idle").catch(()=>"cancelled"),H=await Promise.race([K,W]);if(H==="idle"){G.error(new S30(X));return}if(H==="cancelled")return;if(H.done){G.close();return}G.enqueue(H.value)},async cancel(G){Y(G)}})}var S30,Hr;var C30=O(()=>{D5();S30=class S30 extends Error{idleTimeoutMs;constructor($){super("producer produced no output before timeout");this.idleTimeoutMs=$;this.name="StreamIdleTimeoutError"}};Hr=class Hr 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 Qq4($){let X=V30({messages:$.messages,idleTimeoutMs:$.idleTimeoutMs,onCancel:$.onDone}).pipeThrough(q30()).pipeThrough(M30()).pipeThrough(Vz8($.runId,$.fenceToken)).pipeThrough(Cz8());return _z8(X)}async function vz8($){let X=await(await $.js.consumers.get(wU,{filter_subjects:QO($.runId),deliver_policy:xz8.DeliverPolicy.All})).consume();async function*Q(){try{for await(let Y of X)yield{subject:Y.subject,data:Y.data,headers:Y.headers}}finally{X.stop()}}return Qq4({messages:Q(),runId:$.runId,fenceToken:$.fenceToken,idleTimeoutMs:$.idleTimeoutMs,onDone:()=>X.stop()})}var xz8;var fz8=O(()=>{D61();C30();k30();xz8=k(_D(),1)});function z61($){let Z=$.type;if(typeof Z!=="string")return!1;if(Z==="text"||Z==="reasoning")return $.state!=="streaming";if(Z==="step-start")return!1;if(Z.startsWith("tool-")||Z==="dynamic-tool")return $.state==="approval-requested"||Z==="tool-user_ask"&&$.state==="input-available"||$.state==="output-available"||$.state==="output-error"||$.state==="output-denied";return!0}function E61($){let Z=$.type??"";if(Z==="reasoning")return"reasoning";if(Z==="file")return"file";if(Z.startsWith("tool-")||Z==="dynamic-tool")return $.state==="output-available"||$.state==="output-error"||$.state==="output-denied"?"tool_result":"tool_call";return"text"}class j61{ctx;base;seqByPart=new Map;emitted=new Set;finished=new Set;partKeyByRowId=new Map;finishMessageIdByRowId=new Map;nextSeq=0;constructor($){this.ctx=$;this.base=$.baseTimeMs??Date.now()}hasEmittedContentFor($){let Z=`${$}#`;for(let X of this.emitted)if(X.startsWith(Z))return!0;return!1}seqFor($){let Z=this.seqByPart.get($);if(Z!==void 0)return Z;let X=this.nextSeq++;return this.seqByPart.set($,X),X}row($,Z,X,Q,Y,G=null){return{id:`${this.ctx.runId}:${$}:${X}`,seq:X,org_id:this.ctx.orgId,thread_id:this.ctx.threadId,run_id:this.ctx.runId,message_id:$,role:Z,kind:Q,payload:Y,payload_ref:null,metadata:G,created_at:new Date(this.base+X).toISOString()}}emitMessageParts($){let Z=$.parts??[],X=[];for(let Q=0;Q<Z.length;Q++){let Y=Z[Q];if(!z61(Y))continue;let G=`${$.id}#${Q}`;if(this.emitted.has(G))continue;let J=this.seqFor(G),K=this.row($.id,$.role,J,E61(Y),Y);this.partKeyByRowId.set(K.id,G),X.push(K)}return X}emitRequestMessageParts($){let Z=$.parts??[],X=[];for(let Q=0;Q<Z.length;Q++){let Y=Z[Q],G=`${$.id}#${Q}`,J=this.seqFor(G),K=this.row($.id,$.role,J,E61(Y),Y);this.partKeyByRowId.set(K.id,G),X.push(K)}return X}markFinished($,Z,X=null){if(this.finished.has($))return[];let Q=this.seqFor(`${$}#finish`),Y=this.row($,Z,Q,"finish",{},X);return this.finishMessageIdByRowId.set(Y.id,$),[Y]}markRequestFinished($,Z,X=null){let Q=this.seqFor(`${$}#finish`),Y=this.row($,Z,Q,"finish",{},X);return this.finishMessageIdByRowId.set(Y.id,$),[Y]}acknowledge($){for(let Z of $){let X=this.partKeyByRowId.get(Z.id);if(X!==void 0)this.emitted.add(X);let Q=this.finishMessageIdByRowId.get(Z.id);if(Q!==void 0)this.finished.add(Q)}}emitUserMessage($){return[...this.emitMessageParts($),...this.markFinished($.id,$.role,$.metadata??null)]}emitRequestMessage($){return[...this.emitRequestMessageParts($),...this.markRequestFinished($.id,$.role,$.metadata??null)]}emitStepParts($){return this.emitMessageParts($)}emitFinal($){let Z=this.emitMessageParts($);if(Z.length===0&&!this.hasEmittedContentFor($.id))return Z;return[...Z,...this.markFinished($.id,$.role,$.metadata??null)]}emitFinalSnapshot($){let Z=$.parts??[],X=[];for(let G=0;G<Z.length;G++){let J=Z[G];if(!z61(J))continue;let K=`${$.id}#${G}`,W=this.seqFor(K),H=this.row($.id,$.role,W,E61(J),J);this.partKeyByRowId.set(H.id,K),X.push(H)}if(X.length===0&&!this.hasEmittedContentFor($.id))return X;let Q=this.seqFor(`${$.id}#finish`),Y=this.row($.id,$.role,Q,"finish",{},$.metadata??null);return this.finishMessageIdByRowId.set(Y.id,$.id),[...X,Y]}emitError($,Z){let X=`${$}#error`,Q=[];if(!this.emitted.has(X)){let Y=this.seqFor(X),G=this.row($,"assistant",Y,"error",{type:"text",text:`Error: ${Z}`});this.partKeyByRowId.set(G.id,X),Q.push(G)}return[...Q,...this.markFinished($,"assistant")]}}class LX{ctx;builder;constructor($){this.ctx=$;this.builder=new j61($)}async appendBuiltRows($){await this.ctx.storage.appendParts($),this.builder.acknowledge($)}async emitUserMessage($){await this.appendBuiltRows(this.builder.emitUserMessage($))}async emitRequestMessage($){let Z=this.builder.emitRequestMessage($);await this.ctx.storage.replaceMessageParts(this.ctx.threadId,$.id,Z),this.builder.acknowledge(Z)}async emitStepParts($){await this.appendBuiltRows(this.builder.emitStepParts($))}async emitFinal($){await this.appendBuiltRows(this.builder.emitFinal($))}async replaceFinal($){let Z=this.builder.emitFinalSnapshot($);await this.ctx.storage.replaceMessageParts(this.ctx.threadId,$.id,Z),this.builder.acknowledge(Z)}async emitError($,Z){await this.appendBuiltRows(this.builder.emitError($,Z))}}var YO=()=>{};async function Yq4($){let X=($.requestMessageId?await $.messageParts.maxCreatedAtMsForMessage($.runId,$.requestMessageId):null)??await $.messageParts.maxCreatedAtMsForRun($.runId);return new LX({storage:$.messageParts,orgId:$.orgId,threadId:$.runId,runId:$.runId,baseTimeMs:(X??Date.now())+1})}async function bz8($){let Z=await Yq4($),X=$.replaceFinal?(Q)=>Z.replaceFinal(Q):(Q)=>Z.emitFinal(Q);return{emitStepParts:(Q)=>Z.emitStepParts(Q),emitFinal:X,emitError:(Q,Y)=>Z.emitError(Q,Y)}}var yz8=O(()=>{YO()});function _30($,Z){Gq4.add(1,{"org.id":Z??"unknown"})}var Gq4;var gz8=O(()=>{j5();Gq4=L6.createCounter("decopilot.projector.poison_runs",{description:"Number of decopilot runs that exhausted retries and were sent to the DLQ",unit:"{runs}"})});class P61{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 hz8($,Z,X,Q){return $.pipeThrough(new TransformStream({transform(Y,G){if(X.shouldBump(Z))Q();G.enqueue(Y)},flush(){X.clear(Z)}}))}function x30($,Z=[]){if($==="stop")return Z.filter((Y)=>Y.type==="text"&&Y.text).map((Y)=>Y.text).join(`
|
|
2391
|
-
`).replace(/https?:\/\/[^\s)>\]]+/g,"").includes("?")?"requires_action":"completed";if($==="tool-calls"){let X=Z.some((Y)=>Y.type==="tool-user_ask"&&Y.state==="input-available"),Q=Z.some((Y)=>Y.state==="approval-requested");return X||Q?"requires_action":"completed"}return"failed"}function GO($,Z){return`error-${$}:${Z}`}function v30($){return{id:$.id,role:$.role,parts:$.parts,metadata:$.metadata??void 0}}var A61=()=>{};function Jq4($){return`liveness: no stream events for ${Math.round($/60000)}m`}function I61($){return $.runFenceToken!==null&&$.runFenceToken!==$.fenceToken}function cz8($){T61=$}function lz8(){if(!T61)throw Error("[projector-workflow] runtime not initialized \u2014 setProjectorWorkflowRuntime() must run before workflows fire");return T61}function dz8(){return lz8()}async function mz8($,Z,X){let Q=lz8(),Y=Q.getJetStream();if(!Y)throw Error("JetStream unavailable");let G=(await Q.messageParts.loadWindow($.runId,{limit:500})).messages.map(v30);return{chunkCount:0,attempts:1,outcome:await Pz8({chunkStream:hz8(await vz8({js:Y,runId:$.runId,fenceToken:$.fenceToken,idleTimeoutMs:$.idleTimeoutMs}),$.runId,Kq4,()=>{Q.bumpProgress({runId:$.runId,orgId:Z}).catch(()=>{})}),persistence:await bz8({messageParts:Q.messageParts,orgId:Z,runId:$.runId,requestMessageId:$.messageId,replaceFinal:!0}),originalMessages:G,errorMessageId:GO($.runId,$.fenceToken),title:{threadId:$.runId,currentThreadTitle:X,persistTitle:async(K,W)=>{await Q.persistTitle($.runId,Z,W),await Q.onTitleUpdated({runId:$.runId,orgId:Z,title:W})}}})}}async function uz8($,Z,X){let Q=await $.resolveRun(Z).catch(()=>null);return Q!==null&&Q.runFenceToken===X&&["completed","failed","requires_action"].includes(Q.status)}async function iz8($,Z,X){let Q=await Wq4($,Z);if("skip"in Q)return;let Y=Q.row.orgId,G=Q.row.createdBy??$.runId,J=Q.row.title;try{let{outcome:K}=await X($,Y,J),W=K?.failed?"failed":K?.finishReason==null?"completed":x30(K.finishReason,K.finalParts);if(W==="failed"){let H=K?.finishReason?`harness reported an error: ${K.finishReason}`:"harness reported an error";if(_30($.runId,Y),await Z.markRunFailed($.runId,Y,H,"harness"))await Z.recordFailed({runId:$.runId,orgId:Y,distinctId:G,reason:H,kind:"harness"})}else if(W==="requires_action")await Z.markRunRequiresAction($.runId,Y),await Z.clearSynthesizedError($.runId,$.fenceToken);else{if(await Z.completeRunIfNotCompleted($.runId,Y))await Z.recordCompleted({runId:$.runId,orgId:Y,distinctId:G,usage:K?.usage??{inputTokens:0,outputTokens:0,totalTokens:0}});await Z.clearSynthesizedError($.runId,$.fenceToken)}await Z.purgeRun($.runId,$.fenceToken)}catch(K){if(K instanceof Hr){if(await uz8(Z,$.runId,$.fenceToken)){await Z.clearSynthesizedError($.runId,$.fenceToken),await Z.purgeRun($.runId,$.fenceToken);return}let F=`stream truncated before projection could replay it: ${K.message}`;if(_30($.runId,Y),await Z.markRunFailed($.runId,Y,F,"projection"))await Z.recordFailed({runId:$.runId,orgId:Y,distinctId:G,reason:F,kind:"projection"});await Z.purgeRun($.runId,$.fenceToken);return}let W=K instanceof S30;if(W&&await uz8(Z,$.runId,$.fenceToken)){await Z.purgeRun($.runId,$.fenceToken);return}let H=W?Jq4(K.idleTimeoutMs):K instanceof Error?K.message:String(K),N=W?"liveness":"projection";if(_30($.runId,Y),await Z.markRunFailed($.runId,Y,H,N))await Z.recordFailed({runId:$.runId,orgId:Y,distinctId:G,reason:H,kind:N});if(W)await Z.clearSynthesizedError($.runId,$.fenceToken);throw K}}async function Wq4($,Z){let X=await Z.resolveRun($.runId);if(!X)return{skip:"missing"};if(I61({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 T61=null,Kq4;var R61=O(()=>{Az8();fz8();C30();yz8();gz8();A61();Kq4=new P61});function nz8($,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 pz8($,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 tz8($,Z,X,Q){let{storage:Y,sseHub:G}=Q,J=await Y.get($,Z);G.emit(Z,aK($,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})),G.emit(Z,V90($,X))}async function Nq4($,Z){let{storage:X,sseHub:Q}=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 Y=await X.get($.taskId,$.orgId);Q.emit($.orgId,aK($.taskId,"in_progress",{virtualMcpId:Y?.virtual_mcp_id??void 0,createdBy:Y?.created_by,triggerId:Y?.trigger_id,title:Y?.title,branch:Y?.branch??null,createdAt:Y?.created_at,updatedAt:Y?.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 Y=await X.get($.taskId,$.orgId);Q.emit($.orgId,aK($.taskId,"in_progress",{virtualMcpId:Y?.virtual_mcp_id??void 0,createdBy:Y?.created_by,triggerId:Y?.trigger_id,title:Y?.title,branch:Y?.branch??null,createdAt:Y?.created_at,updatedAt:Y?.updated_at}));return}case"STEP_COMPLETED":Q.emit($.orgId,Em0($.taskId,$.stepCount));return;case"RUN_COMPLETED":await tz8($.taskId,$.orgId,"completed",Z);return;case"RUN_REQUIRES_ACTION":await tz8($.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 await X.update($.taskId,$.orgId,{status:"failed",run_config:null,run_started_at:null,...$.reason==="reaped"?{failure_reason:Hq4,failure_kind:"stall"}:{}});let Y=await X.get($.taskId,$.orgId);Q.emit($.orgId,aK($.taskId,"failed",{virtualMcpId:Y?.virtual_mcp_id??void 0,createdBy:Y?.created_by,triggerId:Y?.trigger_id,title:Y?.title,branch:Y?.branch??null,createdAt:Y?.created_at,updatedAt:Y?.updated_at})),Q.emit($.orgId,V90($.taskId,"failed"));return}case"PREVIOUS_RUN_ABORTED":return}}async function oz8($,Z){for(let{event:X}of $)await Nq4(X,Z)}var Hq4="Run stalled \u2014 no progress within the idle timeout window";var rz8=O(()=>{T6()});function az8($){return $.now-$.lastProgressAt>$.idleTimeoutMs}function sz8($){return Math.max($.persistedLastProgressAt??Number.NEGATIVE_INFINITY,$.currentRunStartedAt)}class M61{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)})},Uq4)}async execute($){let Z=this.dispatch($);return await this.react(Z),Z}dispatch($){let Z=this.states.get($.taskId),X=nz8($,Z),Q=[];for(let Y of X){let G=this.states.get(Y.taskId);if(Y.type==="PREVIOUS_RUN_ABORTED"||Y.type==="RUN_FAILED"){if(G?.status.tag==="running")G.status.abortController.abort()}let J=pz8(G,Y,this.clock());if(J===void 0)this.states.delete(Y.taskId);else this.states.set(Y.taskId,J);if(Q.push({event:Y,state:J}),Fq4.has(Y.type))ez8().add(1,{"org.id":Y.orgId});else if(wq4.has(Y.type)&&G?.status.tag==="running")ez8().add(-1,{"org.id":Y.orgId})}return Q}react($){return oz8($,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,Q]of Z){if(this.states.get(X)?.status.tag!=="running")continue;let G;try{let K=await this.deps.storage.getProgress(X,Q.orgId);G=sz8({persistedLastProgressAt:K?.lastProgressAt??null,currentRunStartedAt:Q.status.startedAt.getTime()})}catch(K){console.warn(`[RunRegistry] Reaper progress read failed for ${X}; skipping`,K);continue}if(!az8({lastProgressAt:G,now:$,idleTimeoutMs:f30}))continue;let J=await this.deps.storage.get(X,Q.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 > ${f30/60000}m) ...`),Bq4().add(1,{"org.id":Q.orgId,reason:"idle_timeout"}),await this.execute({type:"FORCE_FAIL",taskId:X,reason:"reaped"}).catch((K)=>{console.error("[RunRegistry] Reaper execute failed",K)})}}}var Uq4=300000,q61,f30,Fq4,wq4,$j8=($)=>{let Z;return()=>Z??=$()},ez8,Bq4;var k61=O(()=>{rz8();j5();q61=Number(process.env.RUN_IDLE_TIMEOUT_MS),f30=Number.isFinite(q61)&&q61>0?q61:600000,Fq4=new Set(["RUN_STARTED","RUN_RESUMED"]),wq4=new Set(["RUN_COMPLETED","RUN_FAILED","RUN_REQUIRES_ACTION","PREVIOUS_RUN_ABORTED"]),ez8=$j8(()=>L6.createUpDownCounter("decopilot.stream.inflight",{description:"Number of in-flight decopilot stream requests",unit:"{requests}"})),Bq4=$j8(()=>L6.createCounter("decopilot.run.reaped",{description:"Number of decopilot runs force-failed by the progress-based reaper",unit:"{runs}"}))});async function Zj8($){let{runId:Z}=$,X=dz8(),Q=await X.resolveRun(Z),Y=$.fenceToken??Q?.runFenceToken;if(!Q||Q.version!==2||Y==null)return;if(I61({status:Q.status,runFenceToken:Q.runFenceToken,fenceToken:Y}))return;if(!X.getJetStream())throw Error("JetStream unavailable for consume step");await iz8({runId:Z,fenceToken:Y,messageId:$.messageId,idleTimeoutMs:$.idleTimeoutMs??f30},X,mz8)}var Xj8=O(()=>{R61();k61()});class Nr{intervalMs;emitFn;sleepFn;controller=null;stopped=!1;constructor($){this.intervalMs=$.intervalMs??Oq4,this.emitFn=$.emit,this.sleepFn=$.sleepFn??Z6}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 Qj8($=Date.now){return{type:"data-liveness",data:{t:$()},transient:!0}}var Oq4=30000;var S61=O(()=>{D5()});function V61($){let Z=Number.isFinite($)?Math.max(1,$):1,X=0,Q=[];return{async acquire(){if(X<Z)X++;else await new Promise((G)=>Q.push(G));let Y=!1;return()=>{if(Y)return;Y=!0;let G=Q.shift();if(G)G();else X--}},get active(){return X},get pending(){return Q.length}}}var Lq4,Yj8=()=>Lq4.acquire();var C61=O(()=>{v8();Lq4=V61(Y1().decopilotMaxConcurrentSubagents)});var b30,JO,Gj8=()=>({active:JO.active,pending:JO.pending,max:b30}),Jj8=($)=>{if(JO.active>=b30)console.log("[hostedHarness] run parked at concurrency cap",{active:JO.active,pending:JO.pending,max:b30}),$?.();return JO.acquire()};var _61=O(()=>{C61();v8();j5();b30=Y1().decopilotMaxConcurrentHostedRuns,JO=V61(b30);L6.createObservableGauge("hosted_runs.active",{description:"Hosted agent-loop runs executing on this pod",unit:"{runs}"}).addCallback(($)=>$.observe(JO.active));L6.createObservableGauge("hosted_runs.pending",{description:"Hosted agent-loop runs parked waiting for a slot on this pod",unit:"{runs}"}).addCallback(($)=>$.observe(JO.pending))});function Kj8($){let Z=$[1],X=$[2],Q=Number($[3]);return{owner:Z,repo:X,number:Q,url:`https://github.com/${Z}/${X}/pull/${Q}`}}function y30($){let Z=$.length>200000?$.slice(0,200000):$,X=Dq4.exec(Z);if(X&&Number(X[3])>0)return Kj8(X);let Q=Eq4.exec(Z);if(Q&&Number(Q[3])>0)return Kj8(Q);return null}function Wj8($){if($==null)return null;if(typeof $==="string")return y30($);let Z;try{Z=JSON.stringify($)}catch{return null}return Z?y30(Z):null}var Dq4,Eq4;var x61=O(()=>{Dq4=/https?:\/\/github\.com\/([^/\s"']+)\/([^/\s"']+)\/pull\/(\d+)/,Eq4=/https?:\/\/api\.github\.com\/repos\/([^/\s"']+)\/([^/\s"']+)\/pulls\/(\d+)/});class Uj8{listeners=new Map;totalCount=0;strategy=null;started=!1;async start($){if(this.started){if(!$)return;await this.stop()}this.strategy=$,await this.strategy.start((Z,X)=>this.localEmit(Z,X)),this.started=!0}async stop(){if(!this.started||!this.strategy)return;await this.strategy.stop(),this.started=!1}add($){if(this.totalCount>=Nj8)return console.warn(`[SSEHub] Total connection limit reached (${Nj8})`),null;let Z=this.listeners.get($.organizationId);if(!Z)Z=new Map,this.listeners.set($.organizationId,Z);if(Z.size>=Hj8)return console.warn(`[SSEHub] Per-org connection limit reached for ${$.organizationId} (${Hj8})`),null;return Z.set($.id,$),this.totalCount++,$.id}remove($,Z){let X=this.listeners.get($);if(!X)return;if(X.delete(Z)){if(this.totalCount--,X.size===0)this.listeners.delete($)}}emit($,Z){if(this.strategy)this.strategy.broadcast($,Z);else this.localEmit($,Z)}countForOrg($){return this.listeners.get($)?.size??0}get count(){return this.totalCount}localEmit($,Z){let X=this.listeners.get($);if(!X||X.size===0)return;for(let Q of X.values()){if(Q.typePatterns&&!zq4(Z.type,Q.typePatterns))continue;try{Q.push(Z)}catch{this.remove($,Q.id)}}}}function zq4($,Z){for(let X of Z){if(X===$)return!0;if(X.endsWith(".*")){let Q=X.slice(0,-1);if($.startsWith(Q))return!0}}return!1}var Hj8=50,Nj8=500,W9;var g30=O(()=>{j5();W9=new Uj8;L6.createObservableGauge("sse_hub.connections",{description:"Active SSE listeners held by this pod",unit:"{connections}"}).addCallback(($)=>$.observe(W9.count))});function c9($,Z){W9.emit($,{id:crypto.randomUUID(),type:oB8,source:"task-board",subject:Z.id,data:Z,time:new Date().toISOString()})}function wj8($,Z){W9.emit($,{id:crypto.randomUUID(),type:rB8,source:"task-board",subject:Z,data:{id:Z},time:new Date().toISOString()})}function jq4($,Z){return $?[$]:Z}async function Bj8($,Z,X){let Q=$.metadata?.runMetadata?.taskBoardItemId,Y=!Q&&X?await $.storage.taskBoard.linkedTaskIds(X,Z):[];return jq4(Q,Y)}async function Bh($,Z,X){let Q=$.organization?.id;if(!Q)return;try{for(let Y of await Bj8($,Q,X)){let G=await $.storage.taskBoard.getById(Y,Q);if(!G||Fj8[Z]<=Fj8[G.status])continue;let J=await $.storage.taskBoard.update(Y,Q,{status:Z},$.auth?.user?.id??G.updatedBy);await $.storage.taskBoard.recordActivity({taskBoardItemId:Y,action:"status_changed",actorId:null,data:{from:G.status,to:Z}}).catch((K)=>console.error("[task-board] activity log write failed",K)),c9(Q,J)}}catch(Y){console.error("[task-board] run transition failed",Y)}}async function h30($,Z,X,Q){let Y=$.organization?.id;if(!Y)return;try{let G=Wj8(Z);if(!G)return;let J=await Bj8($,Y,Q);for(let K of J)await $.storage.taskBoard.linkPr({taskBoardItemId:K,organizationId:Y,url:G.url,prNumber:G.number,repoOwner:G.owner,repoName:G.repo,connectionId:X??null})}catch(G){console.error("[task-board] PR capture failed",G)}}async function Ur($,Z,X){try{let Q=await $.advanceLinkedTasksToReviewOnThreadFinish(Z,X);for(let Y of Q)c9(X,Y)}catch(Q){console.error("[task-board] thread-finish transition failed",Q)}}async function Oj8($,Z){let X=$.organization?.id;if(!X)return;try{let Q=await $.storage.taskBoard.reopenLinkedTasksOnThreadRun(Z,X);for(let Y of Q)c9(X,Y)}catch(Q){console.error("[task-board] thread-run reopen failed",Q)}}function Lj8($){return $.includes("create_pull_request")||$.includes("createPullRequest")}function Dj8($){if(Pq4.test($))return!0;return Aq4.test($)&&Tq4.test($)}var Fj8,Pq4,Aq4,Tq4;var ZY=O(()=>{x61();g30();HU();Fj8={triage:0,todo:1,in_progress:2,in_review:3,done:4};Pq4=/\bgh\s+pr\s+create\b/,Aq4=/api\.github\.com\/repos\/[^\s"']+\/pulls\b/,Tq4=/(?:-X|--request)\s+POST/});import{DBOS as gz}from"@dbos-inc/dbos-sdk";function b61($){v61=$}function zj8(){if(!v61)throw Error("[hostedHarness] runtime not initialized \u2014 setHostedHarnessRuntime() must run before workflows fire");return v61}async function Iq4($,Z){let X=zj8(),{request:Q}=$,Y=Z??await X.studioContextFactory(Q.organizationId,Q.userId);if(!Y)throw Error("user membership lost mid-dispatch");if(Q.runMetadata)Y.metadata.runMetadata=Q.runMetadata;let G=new AbortController,J=!1,K=new Nr({emit:()=>Ej8(X,$)}),W=await Jj8(()=>{J=!0,Ej8(X,$),K.arm()}).finally(()=>K.stop());try{if(J&&await Rq4($))throw Error("run cancelled while queued for a free runner");if(Bh(Y,"in_progress",$.threadId),!Q.runMetadata?.taskBoardItemId)Oj8(Y,$.threadId);await X.dispatchRunFn({...Q,abortSignal:G.signal},Y,X.deps)}finally{W()}}async function Rq4($){try{return(await gz.getWorkflowStatus(y61($.runId,$.fenceToken)))?.status==="CANCELLED"}catch(Z){return console.error(`[hostedHarness] could not read child status for run=${$.runId} fence=${$.fenceToken}`,Z),!1}}function qq4($,Z,X,Q=1){let Y=X instanceof Error?X.message:String(X);return{messageId:GO($,Z),errorChunk:{type:"error",errorText:Y},seq:Q,finalSeq:Q}}function Mq4($){if(!($ instanceof Error))return;let Z=$.lastAckSeq;return typeof Z==="number"?Z+1:void 0}async function kq4($,Z){let X=zj8(),{streamBuffer:Q}=X.deps,{messageId:Y,errorChunk:G,seq:J,finalSeq:K}=qq4($.runId,$.fenceToken,Z,Mq4(Z));if(!Q){console.error(`[hostedHarness] no streamBuffer configured; dropping terminal error for run=${$.runId} fence=${$.fenceToken} messageId=${Y}`);return}if(!await Q.publishRawChunk($.runId,G,{fenceToken:$.fenceToken,seq:J})){console.error(`[hostedHarness] failed to publish terminal error chunk for run=${$.runId} fence=${$.fenceToken} messageId=${Y}`);return}await Q.publishDone($.runId,$.fenceToken,K)}async function Sq4($){try{await gz.runStep(()=>Iq4($),{name:"runHostedHarness",retriesAllowed:!1})}catch(Z){await gz.runStep(()=>kq4($,Z),{name:"publishHostedHarnessFailure",retriesAllowed:!0}).catch((X)=>{console.error(`[hostedHarness] could not publish terminal error for run=${$.runId} fence=${$.fenceToken}`,X)})}}function y61($,Z){return`decopilot-hosted:${$}:${Z}`}async function jj8($){return{workflowID:(await gz.startWorkflow(Vq4,{workflowID:y61($.runId,$.fenceToken),queueName:GN,enqueueOptions:{queuePartitionKey:$.threadId}})($)).workflowID}}async function g61($,Z){await gz.cancelWorkflow(y61($,Z))}var f61=1,v61=null,Ej8=($,Z)=>aJ($.deps.streamBuffer,Z.runId,"waiting-capacity"),Vq4;var h61=O(()=>{S61();Gh();_61();ZY();Vq4=gz.registerWorkflow(Sq4,{name:"hostedHarnessWorkflow",maxRecoveryAttempts:1000})});import{DBOS as Oh}from"@dbos-inc/dbos-sdk";function l61($){if($!=="decopilot")throw Error(`hosted dispatch requires an explicit Decopilot harness; got ${JSON.stringify($)}`)}function d61($){u61=$}function Cq4(){if(!u61)throw Error("[threadGate] runtime not initialized \u2014 setThreadGateRuntime() must run before workflows fire");return u61}function _q4($,Z=$30){let X=$.runFenceToken;if(X)return{runFenceToken:X,claimedRequest:$,shouldPersistFence:!1};let Q=Z();return{runFenceToken:Q,claimedRequest:{...$,runFenceToken:Q},shouldPersistFence:!0}}async function xq4($){let Z=Cq4(),{request:X}=$,Q=X.taskId??$.threadId;if($O8({harnessId:X.harnessId}))await aJ(Z.deps.streamBuffer,Q,"starting-run");let Y=await Z.studioContextFactory(X.organizationId,X.userId);if(!Y)throw Error("user membership lost mid-dispatch");l61(X.harnessId);let G=X.taskId??$.threadId,{runFenceToken:J,claimedRequest:K,shouldPersistFence:W}=_q4(X);if(W)await Y.storage.threads.setRunFence(G,J);return{runFenceToken:J,hostedEnqueue:{runId:Q,fenceToken:J,threadId:$.threadId,request:K}}}async function vq4($){if($.source!=="user-message")return;let{request:Z}=$;d1.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 fq4($,Z){if($.source!=="user-message")return;let{request:X}=$;d1.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 u30($){l61($.request.harnessId),await Oh.runStep(()=>vq4($),{name:"trackMessageStarted"});let Z;try{Z=await Oh.runStep(()=>xq4($),{name:"dispatchRunAndWait",retriesAllowed:!0}),await jj8(Z.hostedEnqueue)}catch(Y){let G=Y instanceof Error?Y.message:String(Y);throw await Oh.runStep(()=>fq4($,G),{name:"trackMessageFailed"}),Y}let X=$.request.taskId??$.threadId,Q="messages"in $.request?void 0:$.request.messageId;return await Oh.runStep(()=>Zj8({runId:X,fenceToken:Z.runFenceToken,messageId:Q}),{name:"consumeRunProjection"}),{taskId:$.request.taskId??$.threadId}}async function bq4($){return u30($)}async function BU($,Z){return l61($.request.harnessId),{workflowID:(await Oh.startWorkflow(yq4,{queueName:$J,enqueueOptions:{queuePartitionKey:$.threadId},workflowID:Z?.workflowID})($)).workflowID}}var c61=1,u61=null,yq4;var Pj8=O(()=>{k$();Gh();Xj8();h61();yq4=Oh.registerWorkflow(bq4,{name:"threadGateWorkflow",maxRecoveryAttempts:1000})});var hz=O(()=>{Pj8();h61()});async function c30($,Z,X){let Q=Z.organizationId,Y=Z.assignedBy??Z.createdBy,G=await wX($,"smart"),J=yD(Q),K=await $.storage.threads.create({organization_id:Q,title:X.title,status:"in_progress",virtual_mcp_id:J,message_storage_version:2,harness_id:"decopilot",sandbox_provider_kind:"agent-sandbox",created_by:Y});await $.storage.taskBoard.linkThread(Z.id,K.id,Q);let W={id:crypto.randomUUID(),role:"user",parts:[{type:"text",text:X.prompt}]};return await new LX({storage:$.storage.threads.messageParts(),orgId:Q,threadId:K.id,runId:K.id}).emitRequestMessage(W),await BU({threadId:K.id,source:"background-tool",request:{messages:[W],models:{credentialId:G.credentialId,thinking:{id:G.modelId,title:G.modelMeta.title}},agent:{id:J},temperature:X.temperature,toolApprovalLevel:"auto",mode:"default",organizationId:Q,userId:Y,harnessId:"decopilot",sandboxProviderKind:"agent-sandbox",taskId:K.id,runMetadata:{taskBoardItemId:Z.id}}}),{threadId:K.id}}var m61=O(()=>{oB();hz();YO();T6()});async function Lh($,Z){if(Z.assigneeId!==z7)return;await i61($,Z).catch((X)=>{console.error("[task-board] Super Agent enqueue failed",X)})}async function i61($,Z,X){let Q=["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: ${Z.title}`,Z.description?`
|
|
2390
|
+
`)}})}},$61={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"};ao=U1.record(U1.string(),_z.optional()),Z61=V0(()=>K0(U1.union([U1.strictObject({type:U1.literal("text-start"),id:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("text-delta"),id:U1.string(),delta:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("text-end"),id:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("error"),errorText:U1.string()}),U1.strictObject({type:U1.literal("tool-input-start"),toolCallId:U1.string(),toolName:U1.string(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional(),title:U1.string().optional()}),U1.strictObject({type:U1.literal("tool-input-delta"),toolCallId:U1.string(),inputTextDelta:U1.string()}),U1.strictObject({type:U1.literal("tool-input-available"),toolCallId:U1.string(),toolName:U1.string(),input:U1.unknown(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional(),title:U1.string().optional()}),U1.strictObject({type:U1.literal("tool-input-error"),toolCallId:U1.string(),toolName:U1.string(),input:U1.unknown(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional(),errorText:U1.string(),title:U1.string().optional()}),U1.strictObject({type:U1.literal("tool-approval-request"),approvalId:U1.string(),toolCallId:U1.string(),signature:U1.string().optional()}),U1.strictObject({type:U1.literal("tool-output-available"),toolCallId:U1.string(),output:U1.unknown(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional(),preliminary:U1.boolean().optional()}),U1.strictObject({type:U1.literal("tool-output-error"),toolCallId:U1.string(),errorText:U1.string(),providerExecuted:U1.boolean().optional(),providerMetadata:B8.optional(),toolMetadata:ao.optional(),dynamic:U1.boolean().optional()}),U1.strictObject({type:U1.literal("tool-output-denied"),toolCallId:U1.string()}),U1.strictObject({type:U1.literal("reasoning-start"),id:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("reasoning-delta"),id:U1.string(),delta:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("reasoning-end"),id:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("source-url"),sourceId:U1.string(),url:U1.string(),title:U1.string().optional(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("source-document"),sourceId:U1.string(),mediaType:U1.string(),title:U1.string(),filename:U1.string().optional(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.literal("file"),url:U1.string(),mediaType:U1.string(),providerMetadata:B8.optional()}),U1.strictObject({type:U1.custom(($)=>typeof $==="string"&&$.startsWith("data-"),{message:'Type must start with "data-"'}),id:U1.string().optional(),data:U1.unknown(),transient:U1.boolean().optional()}),U1.strictObject({type:U1.literal("start-step")}),U1.strictObject({type:U1.literal("finish-step")}),U1.strictObject({type:U1.literal("start"),messageId:U1.string().optional(),messageMetadata:U1.unknown().optional()}),U1.strictObject({type:U1.literal("finish"),finishReason:U1.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:U1.unknown().optional()}),U1.strictObject({type:U1.literal("abort"),reason:U1.string().optional()}),U1.strictObject({type:U1.literal("message-metadata"),messageMetadata:U1.unknown()})])));IR4=z3;RR4=$r;MR4=bJ({prefix:"aitxt",size:24}),kR4={file:!0,source:!0,"text-start":!0,"text-end":!0,"text-delta":!0,"reasoning-start":!0,"reasoning-end":!0,"reasoning-delta":!0,"tool-input-start":!0,"tool-input-end":!0,"tool-input-delta":!0,"tool-approval-request":!0,"tool-call":!0,"tool-result":!0,"tool-error":!0,"stream-start":!1,"response-metadata":!1,finish:!1,error:!1,raw:!1};sQ=O0.record(O0.string(),_z.optional()),xR4=V0(()=>K0(O0.array(O0.object({id:O0.string(),role:O0.enum(["system","user","assistant"]),metadata:O0.unknown().optional(),parts:O0.array(O0.union([O0.object({type:O0.literal("text"),text:O0.string(),state:O0.enum(["streaming","done"]).optional(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("reasoning"),text:O0.string(),state:O0.enum(["streaming","done"]).optional(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("source-url"),sourceId:O0.string(),url:O0.string(),title:O0.string().optional(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("source-document"),sourceId:O0.string(),mediaType:O0.string(),title:O0.string(),filename:O0.string().optional(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("file"),mediaType:O0.string(),filename:O0.string().optional(),url:O0.string(),providerMetadata:B8.optional()}),O0.object({type:O0.literal("step-start")}),O0.object({type:O0.string().startsWith("data-"),id:O0.string().optional(),data:O0.unknown()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("input-streaming"),input:O0.unknown().optional(),providerExecuted:O0.boolean().optional(),callProviderMetadata:B8.optional(),output:O0.never().optional(),errorText:O0.never().optional(),approval:O0.never().optional()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("input-available"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.never().optional()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("approval-requested"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.never().optional(),reason:O0.never().optional(),signature:O0.string().optional()})}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("approval-responded"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.boolean(),reason:O0.string().optional(),signature:O0.string().optional()})}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-available"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.unknown(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),resultProviderMetadata:B8.optional(),preliminary:O0.boolean().optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!0),reason:O0.string().optional(),signature:O0.string().optional()}).optional()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-error"),input:O0.unknown().optional(),rawInput:O0.unknown().optional(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.string(),callProviderMetadata:B8.optional(),resultProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!0),reason:O0.string().optional(),signature:O0.string().optional()}).optional()}),O0.object({type:O0.literal("dynamic-tool"),toolName:O0.string(),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-denied"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!1),reason:O0.string().optional(),signature:O0.string().optional()})}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("input-streaming"),providerExecuted:O0.boolean().optional(),callProviderMetadata:B8.optional(),input:O0.unknown().optional(),output:O0.never().optional(),errorText:O0.never().optional(),approval:O0.never().optional()}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("input-available"),providerExecuted:O0.boolean().optional(),input:O0.unknown(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.never().optional()}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("approval-requested"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.never().optional(),reason:O0.never().optional(),signature:O0.string().optional()})}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("approval-responded"),input:O0.unknown(),providerExecuted:O0.boolean().optional(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.boolean(),reason:O0.string().optional(),signature:O0.string().optional()})}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-available"),providerExecuted:O0.boolean().optional(),input:O0.unknown(),output:O0.unknown(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),resultProviderMetadata:B8.optional(),preliminary:O0.boolean().optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!0),reason:O0.string().optional(),signature:O0.string().optional()}).optional()}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-error"),providerExecuted:O0.boolean().optional(),input:O0.unknown().optional(),rawInput:O0.unknown().optional(),output:O0.never().optional(),errorText:O0.string(),callProviderMetadata:B8.optional(),resultProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!0),reason:O0.string().optional(),signature:O0.string().optional()}).optional()}),O0.object({type:O0.string().startsWith("tool-"),toolCallId:O0.string(),toolMetadata:sQ.optional(),state:O0.literal("output-denied"),providerExecuted:O0.boolean().optional(),input:O0.unknown(),output:O0.never().optional(),errorText:O0.never().optional(),callProviderMetadata:B8.optional(),approval:O0.object({id:O0.string(),approved:O0.literal(!1),reason:O0.string().optional(),signature:O0.string().optional()})})])).nonempty("Message must contain at least one part")})).nonempty("Messages array must not be empty")));lR4=T30,dR4={type:"no-schema",jsonSchema:async()=>{return},async validatePartialResult({value:$,textDelta:Z}){return{success:!0,value:{partial:$,textDelta:Z}}},async validateFinalResult($,Z){return $===void 0?{success:!1,error:new $Y({message:"No object generated: response did not match schema.",text:Z.text,response:Z.response,usage:Z.usage,finishReason:Z.finishReason})}:{success:!0,value:$}},createElementStream(){throw new x4({functionality:"element streams in no-schema mode"})}};pR4=bJ({prefix:"aiobj",size:24});sR4=bJ({prefix:"aiobj",size:24});Z24=class extends aB{constructor({data:$,mediaType:Z}){super({data:$,mediaType:Z});let X="mp3";if(Z){let Q=Z.split("/");if(Q.length===2){if(Z!=="audio/mpeg")X=Q[1]}}if(!X)throw Error("Audio format must be provided or determinable from media type");this.format=X}};Y24={word:/\S+\s+/m,line:/\n+/m};J24=K61();I24=Jz8,Wz8=`vercel.ai.error.${Kz8}`,R24=Symbol.for(Wz8),Nz8=class extends v5{constructor({modelId:$,modelType:Z,providerId:X,availableProviders:Q,message:Y=`No such provider: ${X} (available providers: ${Q.join()})`}){super({errorName:Kz8,modelId:$,modelType:Z,message:Y});this[Hz8]=!0,this.providerId=X,this.availableProviders=Q}static isInstance($){return L1.hasMarker($,Wz8)}};Hz8=R24;q24=Uz8;S24=K61();wz8=class extends N61{constructor($={}){super($)}processResponseStream($){return iN({stream:$,schema:Z61}).pipeThrough(new TransformStream({async transform(Z,X){if(!Z.success)throw Z.error;X.enqueue(Z.value)}}))}};u24=class extends N61{constructor($={}){super($)}processResponseStream($){return h24({stream:$.pipeThrough(new TextDecoderStream)})}}});function Bz8($){return{type:"data-title-result",data:{title:$},transient:!0}}function F61($){return $.type==="data-title-input"}function w61($){return $.type==="data-title-result"}async function*Oz8($,Z){let X=Z.persistTitle??((Y,G)=>Z.ctx.storage.threads.update(Y,{title:G}).then(()=>{})),Q=!1;for await(let Y of $){if(F61(Y)){console.warn("[title-interceptor] harness emitted deprecated data-title-input chunk; ignoring");continue}if(w61(Y)){if(Q){console.warn("[title-interceptor] harness emitted multiple data-title-result chunks; ignoring extra");continue}if(Q=!0,Z.currentThreadTitle!==lN)continue;let G=Y.data.title;if(!G)continue;await X(Z.threadId,G).catch((J)=>{console.error("[title-interceptor] persist failed for thread",Z.threadId,J)});try{await Z.onTitleUpdated?.(G)}catch(J){console.error("[title-interceptor] onTitleUpdated callback failed",J)}if(!Z.isStreamFinished())try{Z.writer.write({type:"data-thread-title",data:{title:G},transient:!0})}catch(J){console.error("[title-interceptor] writer.write failed",J)}continue}yield Y}}function Lz8($,Z){let X=Z.persistTitle??((Y,G)=>Z.ctx.storage.threads.update(Y,{title:G}).then(()=>{})),Q=!1;return $.pipeThrough(new TransformStream({async transform(Y,G){if(F61(Y)){console.warn("[title-interceptor] harness emitted deprecated data-title-input chunk; ignoring");return}if(w61(Y)){if(Q){console.warn("[title-interceptor] harness emitted multiple data-title-result chunks; ignoring extra");return}if(Q=!0,Z.currentThreadTitle!==lN)return;let J=Y.data.title;if(!J)return;await X(Z.threadId,J).catch((K)=>{console.error("[title-interceptor] persist failed for thread",Z.threadId,K)});try{await Z.onTitleUpdated?.(J)}catch(K){console.error("[title-interceptor] onTitleUpdated callback failed",K)}if(!Z.isStreamFinished())try{Z.writer.write({type:"data-thread-title",data:{title:J},transient:!0})}catch(K){console.error("[title-interceptor] writer.write failed",K)}return}G.enqueue(Y)}}))}var Dz8=O(()=>{DB()});function c24($){let Z=$[Symbol.asyncIterator]();return new ReadableStream({async pull(X){try{let{value:Q,done:Y}=await Z.next();if(Y)X.close();else X.enqueue(Q)}catch(Q){X.error(Q)}},async cancel(X){await Z.return?.(X)}})}function l24($,Z){let X=$.getReader(),Q=!1,Y=()=>{if(Q)return;Q=!0,X.releaseLock()};return new ReadableStream({async pull(G){try{let{done:J,value:K}=await X.read();if(J)Y(),G.close();else G.enqueue(K)}catch(J){Z(),Y(),G.error(J)}},async cancel(G){await X.cancel(G),Y()}})}function d24($){let Z=$.metadata?.usage;if(!Z||typeof Z!=="object"||Array.isArray(Z))return null;let X=Z,Q=(Y)=>typeof Y==="number"?Y:0;return{...X,inputTokens:Q(X.inputTokens),outputTokens:Q(X.outputTokens),totalTokens:Q(X.totalTokens)}}function I30($){let Z=[],X=!1,Q=!1,Y=!1,G=!0,J=$.errorMessageId??crypto.randomUUID(),K,W=new Promise((z)=>{K=z});if(!$.chunks&&!$.chunkStream)throw Error("consumeHarnessStream requires chunks or chunkStream");let H=$.chunks?async function*(){try{yield*$.chunks}catch(z){throw Y=!0,z}}():null,N=$.chunkStream?l24($.chunkStream,()=>{Y=!0}):null,U=$.originalMessages?.at(-1),F=!$.generateMessageId&&U?.role==="assistant"?U.id:void 0,w=new Map,B=null,L=(z)=>{if($.generateMessageId){let j=w.get(z);if(j===void 0)j=$.generateMessageId(),w.set(z,j);return j}if(B===null)B=z;return F&&z===B?F:z},D=(z)=>({...z,id:L(z.id)});return{uiStream:G61({originalMessages:$.originalMessages,execute:({writer:z})=>{let j={ctx:null,isStreamFinished:()=>X,currentThreadTitle:$.title.currentThreadTitle,threadId:$.title.threadId,writer:z,onTitleUpdated:$.title.onTitleUpdated,persistTitle:$.title.persistTitle};if(N){z.merge(Lz8(N,j));return}let A=Oz8(H,j);z.merge(c24(A))},onStepFinish:({responseMessage:z})=>{let j=D(z);Z.push($.persistence.emitStepParts(j).catch((A)=>{G=!1,console.error("[consume-harness-stream] emitStepParts failed",A)})),Z.push(Promise.resolve($.hooks?.onStep?.(j)).catch((A)=>console.error("[consume-harness-stream] onStep hook failed",A)))},onFinish:async({responseMessage:z,finishReason:j})=>{X=!0,await Promise.allSettled(Z);let A=D(z);if(!Q){if(j)A.metadata={...A.metadata??{},finishReason:j};await $.persistence.emitFinal(A).catch((R)=>{G=!1,console.error("[consume-harness-stream] emitFinal failed",R)})}let P=d24(A);if(P)await Promise.resolve($.hooks?.onUsage?.(P)).catch((R)=>console.error("[consume-harness-stream] onUsage hook failed",R));if(!Y)await Promise.resolve($.hooks?.onFinish?.(A,j,{persistenceOk:G})).catch((R)=>console.error("[consume-harness-stream] onFinish hook failed",R));K()},onError:(z)=>{X=!0;let j=z instanceof Error?z.message:String(z);if(!Q)Q=!0,Z.push($.persistence.emitError(J,j).catch((A)=>{G=!1,console.error("[consume-harness-stream] emitError failed",A)})),Z.push(Promise.resolve($.hooks?.onError?.(z)).catch((A)=>console.error("[consume-harness-stream] onError hook failed",A)));return $.sanitizeErrorText?$.sanitizeErrorText(z):j}}),whenComplete:W,isStreamFinished:()=>X}}var B61=O(()=>{h4();Dz8()});function m24($){return{type:"data-user-message",data:$}}function Ez8($){if(!$||typeof $!=="object")return!1;return $.type==="data-user-message"}async function zz8($,Z,X){if(!$)return;try{await $.publishRawChunk(Z,m24(X))}catch{}}function jz8($){return ZO8($)||Ez8($)}async function i24($){let Z=$.getReader();try{while(!0){let{done:X}=await Z.read();if(X)break}}finally{Z.releaseLock()}}function n24($,Z){let X=$.getReader(),Q=!1,Y=()=>{if(Q)return;Q=!0,X.releaseLock()};return new ReadableStream({async pull(G){try{let{done:J,value:K}=await X.read();if(J)Y(),G.close();else G.enqueue(K)}catch(J){Z(J),Y(),G.error(J)}},async cancel(G){await X.cancel(G),Y()}})}async function Pz8($){if(!$.chunks&&!$.chunkStream)throw Error("projectChunks requires chunks or chunkStream");let Z=null,X=!1,Q=void 0,Y={inputTokens:0,outputTokens:0,totalTokens:0},G=[],J=null,K=(B)=>{if(J===null)J=B;throw B},W=$.chunks?async function*(){try{for await(let B of $.chunks){if(jz8(B))continue;yield B}}catch(B){throw Z=B,B}}():void 0,H=$.chunkStream?n24($.chunkStream,(B)=>{Z=B}).pipeThrough(new TransformStream({transform(B,L){if(!jz8(B))L.enqueue(B)}})):void 0,N={emitStepParts:(B)=>$.persistence.emitStepParts(B).catch(K),emitFinal:(B)=>$.persistence.emitFinal(B).catch(K),emitError:(B,L)=>$.persistence.emitError(B,L).catch(K)},{uiStream:U,whenComplete:F}=I30({chunks:W,chunkStream:H,originalMessages:$.originalMessages??[],title:$.title?{currentThreadTitle:$.title.currentThreadTitle,threadId:$.title.threadId,persistTitle:$.title.persistTitle}:{currentThreadTitle:void 0,threadId:"projector",persistTitle:async()=>{}},persistence:N,sanitizeErrorText:$.sanitizeErrorText,errorMessageId:$.errorMessageId,generateMessageId:$.generateMessageId,hooks:{onUsage:(B)=>{Y={inputTokens:B.inputTokens,outputTokens:B.outputTokens,totalTokens:B.totalTokens}},onError:()=>{X=!0},onFinish:(B,L)=>{Q=L,G=Array.isArray(B.parts)?B.parts.filter((D)=>D!=null&&typeof D==="object"&&("type"in D)):[]}}});if(await i24(U).catch(()=>{}),await F,J!==null)throw J;if(Z!==null)throw Z;return{failed:X&&Q===void 0,finishReason:Q,usage:Y,finalParts:G}}var Az8=O(()=>{B61();Gh()});var Wr=786432;function t24($){if(/[.*>\s]/.test($))throw Error("Invalid NATS subject token")}function QO($){return t24($),`${R30}.${$}`}function Tz8($){let Z=`${$.runId}:${$.fenceToken}:${$.seq}`;return $.fragmentIndex===void 0?Z:`${Z}:frag:${$.fragmentIndex}`}function o24($){return`${$.runId}:${$.fenceToken}:done:${$.finalSeq}`}function Iz8($){if(!$)return null;let Z=Number($);return Number.isInteger(Z)&&Z>0?Z:null}function r24($){if(!$)return null;let Z=Number($);return Number.isInteger(Z)&&Z>=0?Z:null}function a24($){if(!$)return null;let Z=$.split(":"),[X,Q,Y,G,J]=Z;if(!X||!Q||!Y)return null;if(Y==="done"){let W=Iz8(G);return Z.length===4&&W!==null?{kind:"done",runId:X,fenceToken:Q,finalSeq:W}:null}if(Y==="ckpt")return null;let K=Iz8(Y);if(K===null)return null;if(Z.length===3)return{kind:"chunk",runId:X,fenceToken:Q,seq:K,fragmentIndex:null};if(Z.length===5&&G==="frag"){let W=r24(J);return W===null?null:{kind:"chunk",runId:X,fenceToken:Q,seq:K,fragmentIndex:W}}return null}function L61($,Z){let X=QO(Z.runId),Q=O61.encode(JSON.stringify({p:$}));if(Q.length>p24)return[];if(Q.length<=Wr)return[{subject:X,data:Q,msgId:Z.dedup?Tz8({runId:Z.runId,...Z.dedup}):void 0}];let Y=Math.ceil(Q.length/Wr),G=[];for(let J=0;J<Y;J++)G.push({subject:X,data:Q.slice(J*Wr,(J+1)*Wr),headers:{[Rz8]:String(J),[qz8]:String(Y)},msgId:Z.dedup?Tz8({runId:Z.runId,...Z.dedup,fragmentIndex:J}):void 0});return G}function Mz8($){return{subject:QO($.runId),data:O61.encode(JSON.stringify({done:!0,finalSeq:$.finalSeq})),msgId:o24($)}}function kz8($){return{subject:QO($),data:O61.encode(JSON.stringify({done:!0}))}}function s24($){let Z=$.reduce((Y,G)=>Y+(G?.length??0),0),X=new Uint8Array(Z),Q=0;for(let Y of $){if(!Y)continue;X.set(Y,Q),Q+=Y.length}return X}function q30(){let $=null;return new TransformStream({transform(Z,X){let Q=Z.headers?.get(qz8);if(!Q){X.enqueue(Z);return}let Y=Number(Q),G=Number(Z.headers?.get(Rz8)??"0");if(G===0)$={total:Y,received:0,parts:Array(Y)};else if(!$||$.total!==Y)return;if(!$.parts[G])$.received++;if($.parts[G]=Z.data,$.received<$.total)return;let J=s24($.parts);$=null,X.enqueue({subject:Z.subject,data:J,headers:Z.headers})}})}function e24($){return typeof $==="number"&&Number.isInteger($)&&$>0}function Zq4($){let Z=a24($.headers?.get("Nats-Msg-Id")||void 0),X;try{X=JSON.parse($q4.decode($.data))}catch{return null}if(!X||typeof X!=="object")return null;let Q=X;if(Q.done===!0)return{kind:"done",runId:Z?.kind==="done"?Z.runId:null,fenceToken:Z?.kind==="done"?Z.fenceToken:null,envelopeFinalSeq:e24(Q.finalSeq)?Q.finalSeq:null,msgIdFinalSeq:Z?.kind==="done"?Z.finalSeq:null};if("p"in Q)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:Q.p};return null}function M30(){return new TransformStream({transform($,Z){let X=Zq4($);if(X)Z.enqueue(X)}})}var R30="decopilot.stream",Rz8="Dp-Frag-Idx",qz8="Dp-Frag-Total",p24=33554432,O61,$q4;var Sz8=O(()=>{O61=new TextEncoder;$q4=new TextDecoder});var k30=O(()=>{Sz8()});var wU="DECOPILOT_STREAMS";var D61=O(()=>{k30()});function Vz8($,Z){return new TransformStream({transform(X,Q){if(X.runId!==$||X.fenceToken!==Z)return;Q.enqueue(X)}})}function Cz8(){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 Hr($,Z.seq));return}$++,X.enqueue(Z)}})}function _z8($){let Z=$.getReader(),X=!1,Q=0,Y=()=>{if(X)return;X=!0,Z.releaseLock()};return new ReadableStream({async pull(G){for(;;){let{done:J,value:K}=await Z.read();if(J){await Z.cancel(),Y(),G.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!==Q){await Z.cancel(),Y(),G.error(new Hr(Q+1,null));return}await Z.cancel(),Y(),G.close();return}Q=W.seq??Q,G.enqueue(W.chunk);return}},async cancel(G){await Z.cancel(G),Y()}})}function Xq4($){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 V30($){let Z=Xq4($.messages),X=$.idleTimeoutMs,Q=!1,Y=(G)=>{if(Q)return;Q=!0,Z.return?.(G).catch(()=>{}),$.onCancel?.()};return new ReadableStream({async pull(G){if(X===void 0){let{done:N,value:U}=await Z.next();if(N){G.close();return}G.enqueue(U);return}let J=new AbortController,K=Z.next().then((N)=>{return J.abort(),N}),W=Z6(X,{signal:J.signal}).then(()=>"idle").catch(()=>"cancelled"),H=await Promise.race([K,W]);if(H==="idle"){G.error(new S30(X));return}if(H==="cancelled")return;if(H.done){G.close();return}G.enqueue(H.value)},async cancel(G){Y(G)}})}var S30,Hr;var C30=O(()=>{D5();S30=class S30 extends Error{idleTimeoutMs;constructor($){super("producer produced no output before timeout");this.idleTimeoutMs=$;this.name="StreamIdleTimeoutError"}};Hr=class Hr 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 Qq4($){let X=V30({messages:$.messages,idleTimeoutMs:$.idleTimeoutMs,onCancel:$.onDone}).pipeThrough(q30()).pipeThrough(M30()).pipeThrough(Vz8($.runId,$.fenceToken)).pipeThrough(Cz8());return _z8(X)}async function vz8($){let X=await(await $.js.consumers.get(wU,{filter_subjects:QO($.runId),deliver_policy:xz8.DeliverPolicy.All})).consume();async function*Q(){try{for await(let Y of X)yield{subject:Y.subject,data:Y.data,headers:Y.headers}}finally{X.stop()}}return Qq4({messages:Q(),runId:$.runId,fenceToken:$.fenceToken,idleTimeoutMs:$.idleTimeoutMs,onDone:()=>X.stop()})}var xz8;var fz8=O(()=>{D61();C30();k30();xz8=k(_D(),1)});function z61($){let Z=$.type;if(typeof Z!=="string")return!1;if(Z==="text"||Z==="reasoning")return $.state!=="streaming";if(Z==="step-start")return!1;if(Z.startsWith("tool-")||Z==="dynamic-tool")return $.state==="approval-requested"||Z==="tool-user_ask"&&$.state==="input-available"||$.state==="output-available"||$.state==="output-error"||$.state==="output-denied";return!0}function E61($){let Z=$.type??"";if(Z==="reasoning")return"reasoning";if(Z==="file")return"file";if(Z.startsWith("tool-")||Z==="dynamic-tool")return $.state==="output-available"||$.state==="output-error"||$.state==="output-denied"?"tool_result":"tool_call";return"text"}class j61{ctx;base;seqByPart=new Map;emitted=new Set;finished=new Set;partKeyByRowId=new Map;finishMessageIdByRowId=new Map;nextSeq=0;constructor($){this.ctx=$;this.base=$.baseTimeMs??Date.now()}hasEmittedContentFor($){let Z=`${$}#`;for(let X of this.emitted)if(X.startsWith(Z))return!0;return!1}seqFor($){let Z=this.seqByPart.get($);if(Z!==void 0)return Z;let X=this.nextSeq++;return this.seqByPart.set($,X),X}row($,Z,X,Q,Y,G=null){return{id:`${this.ctx.runId}:${$}:${X}`,seq:X,org_id:this.ctx.orgId,thread_id:this.ctx.threadId,run_id:this.ctx.runId,message_id:$,role:Z,kind:Q,payload:Y,payload_ref:null,metadata:G,created_at:new Date(this.base+X).toISOString()}}emitMessageParts($){let Z=$.parts??[],X=[];for(let Q=0;Q<Z.length;Q++){let Y=Z[Q];if(!z61(Y))continue;let G=`${$.id}#${Q}`;if(this.emitted.has(G))continue;let J=this.seqFor(G),K=this.row($.id,$.role,J,E61(Y),Y);this.partKeyByRowId.set(K.id,G),X.push(K)}return X}emitRequestMessageParts($){let Z=$.parts??[],X=[];for(let Q=0;Q<Z.length;Q++){let Y=Z[Q],G=`${$.id}#${Q}`,J=this.seqFor(G),K=this.row($.id,$.role,J,E61(Y),Y);this.partKeyByRowId.set(K.id,G),X.push(K)}return X}markFinished($,Z,X=null){if(this.finished.has($))return[];let Q=this.seqFor(`${$}#finish`),Y=this.row($,Z,Q,"finish",{},X);return this.finishMessageIdByRowId.set(Y.id,$),[Y]}markRequestFinished($,Z,X=null){let Q=this.seqFor(`${$}#finish`),Y=this.row($,Z,Q,"finish",{},X);return this.finishMessageIdByRowId.set(Y.id,$),[Y]}acknowledge($){for(let Z of $){let X=this.partKeyByRowId.get(Z.id);if(X!==void 0)this.emitted.add(X);let Q=this.finishMessageIdByRowId.get(Z.id);if(Q!==void 0)this.finished.add(Q)}}emitUserMessage($){return[...this.emitMessageParts($),...this.markFinished($.id,$.role,$.metadata??null)]}emitRequestMessage($){return[...this.emitRequestMessageParts($),...this.markRequestFinished($.id,$.role,$.metadata??null)]}emitStepParts($){return this.emitMessageParts($)}emitFinal($){let Z=this.emitMessageParts($);if(Z.length===0&&!this.hasEmittedContentFor($.id))return Z;return[...Z,...this.markFinished($.id,$.role,$.metadata??null)]}emitFinalSnapshot($){let Z=$.parts??[],X=[];for(let G=0;G<Z.length;G++){let J=Z[G];if(!z61(J))continue;let K=`${$.id}#${G}`,W=this.seqFor(K),H=this.row($.id,$.role,W,E61(J),J);this.partKeyByRowId.set(H.id,K),X.push(H)}if(X.length===0&&!this.hasEmittedContentFor($.id))return X;let Q=this.seqFor(`${$.id}#finish`),Y=this.row($.id,$.role,Q,"finish",{},$.metadata??null);return this.finishMessageIdByRowId.set(Y.id,$.id),[...X,Y]}emitError($,Z){let X=`${$}#error`,Q=[];if(!this.emitted.has(X)){let Y=this.seqFor(X),G=this.row($,"assistant",Y,"error",{type:"text",text:`Error: ${Z}`});this.partKeyByRowId.set(G.id,X),Q.push(G)}return[...Q,...this.markFinished($,"assistant")]}}class LX{ctx;builder;constructor($){this.ctx=$;this.builder=new j61($)}async appendBuiltRows($){await this.ctx.storage.appendParts($),this.builder.acknowledge($)}async emitUserMessage($){await this.appendBuiltRows(this.builder.emitUserMessage($))}async emitRequestMessage($){let Z=this.builder.emitRequestMessage($);await this.ctx.storage.replaceMessageParts(this.ctx.threadId,$.id,Z),this.builder.acknowledge(Z)}async emitStepParts($){await this.appendBuiltRows(this.builder.emitStepParts($))}async emitFinal($){await this.appendBuiltRows(this.builder.emitFinal($))}async replaceFinal($){let Z=this.builder.emitFinalSnapshot($);await this.ctx.storage.replaceMessageParts(this.ctx.threadId,$.id,Z),this.builder.acknowledge(Z)}async emitError($,Z){await this.appendBuiltRows(this.builder.emitError($,Z))}}var YO=()=>{};async function Yq4($){let X=($.requestMessageId?await $.messageParts.maxCreatedAtMsForMessage($.runId,$.requestMessageId):null)??await $.messageParts.maxCreatedAtMsForRun($.runId);return new LX({storage:$.messageParts,orgId:$.orgId,threadId:$.runId,runId:$.runId,baseTimeMs:(X??Date.now())+1})}async function bz8($){let Z=await Yq4($),X=$.replaceFinal?(Q)=>Z.replaceFinal(Q):(Q)=>Z.emitFinal(Q);return{emitStepParts:(Q)=>Z.emitStepParts(Q),emitFinal:X,emitError:(Q,Y)=>Z.emitError(Q,Y)}}var yz8=O(()=>{YO()});function _30($,Z){Gq4.add(1,{"org.id":Z??"unknown"})}var Gq4;var gz8=O(()=>{j5();Gq4=L6.createCounter("decopilot.projector.poison_runs",{description:"Number of decopilot runs that exhausted retries and were sent to the DLQ",unit:"{runs}"})});class P61{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 hz8($,Z,X,Q){return $.pipeThrough(new TransformStream({transform(Y,G){if(X.shouldBump(Z))Q();G.enqueue(Y)},flush(){X.clear(Z)}}))}function x30($,Z=[]){if($==="stop")return"completed";if($==="tool-calls"){let X=Z.some((Y)=>Y.type==="tool-user_ask"&&Y.state==="input-available"),Q=Z.some((Y)=>Y.state==="approval-requested");return X||Q?"requires_action":"completed"}return"failed"}function GO($,Z){return`error-${$}:${Z}`}function v30($){return{id:$.id,role:$.role,parts:$.parts,metadata:$.metadata??void 0}}var A61=()=>{};function Jq4($){return`liveness: no stream events for ${Math.round($/60000)}m`}function I61($){return $.runFenceToken!==null&&$.runFenceToken!==$.fenceToken}function cz8($){T61=$}function lz8(){if(!T61)throw Error("[projector-workflow] runtime not initialized \u2014 setProjectorWorkflowRuntime() must run before workflows fire");return T61}function dz8(){return lz8()}async function mz8($,Z,X){let Q=lz8(),Y=Q.getJetStream();if(!Y)throw Error("JetStream unavailable");let G=(await Q.messageParts.loadWindow($.runId,{limit:500})).messages.map(v30);return{chunkCount:0,attempts:1,outcome:await Pz8({chunkStream:hz8(await vz8({js:Y,runId:$.runId,fenceToken:$.fenceToken,idleTimeoutMs:$.idleTimeoutMs}),$.runId,Kq4,()=>{Q.bumpProgress({runId:$.runId,orgId:Z}).catch(()=>{})}),persistence:await bz8({messageParts:Q.messageParts,orgId:Z,runId:$.runId,requestMessageId:$.messageId,replaceFinal:!0}),originalMessages:G,errorMessageId:GO($.runId,$.fenceToken),title:{threadId:$.runId,currentThreadTitle:X,persistTitle:async(K,W)=>{await Q.persistTitle($.runId,Z,W),await Q.onTitleUpdated({runId:$.runId,orgId:Z,title:W})}}})}}async function uz8($,Z,X){let Q=await $.resolveRun(Z).catch(()=>null);return Q!==null&&Q.runFenceToken===X&&["completed","failed","requires_action"].includes(Q.status)}async function iz8($,Z,X){let Q=await Wq4($,Z);if("skip"in Q)return;let Y=Q.row.orgId,G=Q.row.createdBy??$.runId,J=Q.row.title;try{let{outcome:K}=await X($,Y,J),W=K?.failed?"failed":K?.finishReason==null?"completed":x30(K.finishReason,K.finalParts);if(W==="failed"){let H=K?.finishReason?`harness reported an error: ${K.finishReason}`:"harness reported an error";if(_30($.runId,Y),await Z.markRunFailed($.runId,Y,H,"harness"))await Z.recordFailed({runId:$.runId,orgId:Y,distinctId:G,reason:H,kind:"harness"})}else if(W==="requires_action")await Z.markRunRequiresAction($.runId,Y),await Z.clearSynthesizedError($.runId,$.fenceToken);else{if(await Z.completeRunIfNotCompleted($.runId,Y))await Z.recordCompleted({runId:$.runId,orgId:Y,distinctId:G,usage:K?.usage??{inputTokens:0,outputTokens:0,totalTokens:0}});await Z.clearSynthesizedError($.runId,$.fenceToken)}await Z.purgeRun($.runId,$.fenceToken)}catch(K){if(K instanceof Hr){if(await uz8(Z,$.runId,$.fenceToken)){await Z.clearSynthesizedError($.runId,$.fenceToken),await Z.purgeRun($.runId,$.fenceToken);return}let F=`stream truncated before projection could replay it: ${K.message}`;if(_30($.runId,Y),await Z.markRunFailed($.runId,Y,F,"projection"))await Z.recordFailed({runId:$.runId,orgId:Y,distinctId:G,reason:F,kind:"projection"});await Z.purgeRun($.runId,$.fenceToken);return}let W=K instanceof S30;if(W&&await uz8(Z,$.runId,$.fenceToken)){await Z.purgeRun($.runId,$.fenceToken);return}let H=W?Jq4(K.idleTimeoutMs):K instanceof Error?K.message:String(K),N=W?"liveness":"projection";if(_30($.runId,Y),await Z.markRunFailed($.runId,Y,H,N))await Z.recordFailed({runId:$.runId,orgId:Y,distinctId:G,reason:H,kind:N});if(W)await Z.clearSynthesizedError($.runId,$.fenceToken);throw K}}async function Wq4($,Z){let X=await Z.resolveRun($.runId);if(!X)return{skip:"missing"};if(I61({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 T61=null,Kq4;var R61=O(()=>{Az8();fz8();C30();yz8();gz8();A61();Kq4=new P61});function nz8($,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 pz8($,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 tz8($,Z,X,Q){let{storage:Y,sseHub:G}=Q,J=await Y.get($,Z);G.emit(Z,aK($,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})),G.emit(Z,V90($,X))}async function Nq4($,Z){let{storage:X,sseHub:Q}=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 Y=await X.get($.taskId,$.orgId);Q.emit($.orgId,aK($.taskId,"in_progress",{virtualMcpId:Y?.virtual_mcp_id??void 0,createdBy:Y?.created_by,triggerId:Y?.trigger_id,title:Y?.title,branch:Y?.branch??null,createdAt:Y?.created_at,updatedAt:Y?.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 Y=await X.get($.taskId,$.orgId);Q.emit($.orgId,aK($.taskId,"in_progress",{virtualMcpId:Y?.virtual_mcp_id??void 0,createdBy:Y?.created_by,triggerId:Y?.trigger_id,title:Y?.title,branch:Y?.branch??null,createdAt:Y?.created_at,updatedAt:Y?.updated_at}));return}case"STEP_COMPLETED":Q.emit($.orgId,Em0($.taskId,$.stepCount));return;case"RUN_COMPLETED":await tz8($.taskId,$.orgId,"completed",Z);return;case"RUN_REQUIRES_ACTION":await tz8($.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 await X.update($.taskId,$.orgId,{status:"failed",run_config:null,run_started_at:null,...$.reason==="reaped"?{failure_reason:Hq4,failure_kind:"stall"}:{}});let Y=await X.get($.taskId,$.orgId);Q.emit($.orgId,aK($.taskId,"failed",{virtualMcpId:Y?.virtual_mcp_id??void 0,createdBy:Y?.created_by,triggerId:Y?.trigger_id,title:Y?.title,branch:Y?.branch??null,createdAt:Y?.created_at,updatedAt:Y?.updated_at})),Q.emit($.orgId,V90($.taskId,"failed"));return}case"PREVIOUS_RUN_ABORTED":return}}async function oz8($,Z){for(let{event:X}of $)await Nq4(X,Z)}var Hq4="Run stalled \u2014 no progress within the idle timeout window";var rz8=O(()=>{T6()});function az8($){return $.now-$.lastProgressAt>$.idleTimeoutMs}function sz8($){return Math.max($.persistedLastProgressAt??Number.NEGATIVE_INFINITY,$.currentRunStartedAt)}class M61{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)})},Uq4)}async execute($){let Z=this.dispatch($);return await this.react(Z),Z}dispatch($){let Z=this.states.get($.taskId),X=nz8($,Z),Q=[];for(let Y of X){let G=this.states.get(Y.taskId);if(Y.type==="PREVIOUS_RUN_ABORTED"||Y.type==="RUN_FAILED"){if(G?.status.tag==="running")G.status.abortController.abort()}let J=pz8(G,Y,this.clock());if(J===void 0)this.states.delete(Y.taskId);else this.states.set(Y.taskId,J);if(Q.push({event:Y,state:J}),Fq4.has(Y.type))ez8().add(1,{"org.id":Y.orgId});else if(wq4.has(Y.type)&&G?.status.tag==="running")ez8().add(-1,{"org.id":Y.orgId})}return Q}react($){return oz8($,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,Q]of Z){if(this.states.get(X)?.status.tag!=="running")continue;let G;try{let K=await this.deps.storage.getProgress(X,Q.orgId);G=sz8({persistedLastProgressAt:K?.lastProgressAt??null,currentRunStartedAt:Q.status.startedAt.getTime()})}catch(K){console.warn(`[RunRegistry] Reaper progress read failed for ${X}; skipping`,K);continue}if(!az8({lastProgressAt:G,now:$,idleTimeoutMs:f30}))continue;let J=await this.deps.storage.get(X,Q.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 > ${f30/60000}m) ...`),Bq4().add(1,{"org.id":Q.orgId,reason:"idle_timeout"}),await this.execute({type:"FORCE_FAIL",taskId:X,reason:"reaped"}).catch((K)=>{console.error("[RunRegistry] Reaper execute failed",K)})}}}var Uq4=300000,q61,f30,Fq4,wq4,$j8=($)=>{let Z;return()=>Z??=$()},ez8,Bq4;var k61=O(()=>{rz8();j5();q61=Number(process.env.RUN_IDLE_TIMEOUT_MS),f30=Number.isFinite(q61)&&q61>0?q61:600000,Fq4=new Set(["RUN_STARTED","RUN_RESUMED"]),wq4=new Set(["RUN_COMPLETED","RUN_FAILED","RUN_REQUIRES_ACTION","PREVIOUS_RUN_ABORTED"]),ez8=$j8(()=>L6.createUpDownCounter("decopilot.stream.inflight",{description:"Number of in-flight decopilot stream requests",unit:"{requests}"})),Bq4=$j8(()=>L6.createCounter("decopilot.run.reaped",{description:"Number of decopilot runs force-failed by the progress-based reaper",unit:"{runs}"}))});async function Zj8($){let{runId:Z}=$,X=dz8(),Q=await X.resolveRun(Z),Y=$.fenceToken??Q?.runFenceToken;if(!Q||Q.version!==2||Y==null)return;if(I61({status:Q.status,runFenceToken:Q.runFenceToken,fenceToken:Y}))return;if(!X.getJetStream())throw Error("JetStream unavailable for consume step");await iz8({runId:Z,fenceToken:Y,messageId:$.messageId,idleTimeoutMs:$.idleTimeoutMs??f30},X,mz8)}var Xj8=O(()=>{R61();k61()});class Nr{intervalMs;emitFn;sleepFn;controller=null;stopped=!1;constructor($){this.intervalMs=$.intervalMs??Oq4,this.emitFn=$.emit,this.sleepFn=$.sleepFn??Z6}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 Qj8($=Date.now){return{type:"data-liveness",data:{t:$()},transient:!0}}var Oq4=30000;var S61=O(()=>{D5()});function V61($){let Z=Number.isFinite($)?Math.max(1,$):1,X=0,Q=[];return{async acquire(){if(X<Z)X++;else await new Promise((G)=>Q.push(G));let Y=!1;return()=>{if(Y)return;Y=!0;let G=Q.shift();if(G)G();else X--}},get active(){return X},get pending(){return Q.length}}}var Lq4,Yj8=()=>Lq4.acquire();var C61=O(()=>{v8();Lq4=V61(Y1().decopilotMaxConcurrentSubagents)});var b30,JO,Gj8=()=>({active:JO.active,pending:JO.pending,max:b30}),Jj8=($)=>{if(JO.active>=b30)console.log("[hostedHarness] run parked at concurrency cap",{active:JO.active,pending:JO.pending,max:b30}),$?.();return JO.acquire()};var _61=O(()=>{C61();v8();j5();b30=Y1().decopilotMaxConcurrentHostedRuns,JO=V61(b30);L6.createObservableGauge("hosted_runs.active",{description:"Hosted agent-loop runs executing on this pod",unit:"{runs}"}).addCallback(($)=>$.observe(JO.active));L6.createObservableGauge("hosted_runs.pending",{description:"Hosted agent-loop runs parked waiting for a slot on this pod",unit:"{runs}"}).addCallback(($)=>$.observe(JO.pending))});function Kj8($){let Z=$[1],X=$[2],Q=Number($[3]);return{owner:Z,repo:X,number:Q,url:`https://github.com/${Z}/${X}/pull/${Q}`}}function y30($){let Z=$.length>200000?$.slice(0,200000):$,X=Dq4.exec(Z);if(X&&Number(X[3])>0)return Kj8(X);let Q=Eq4.exec(Z);if(Q&&Number(Q[3])>0)return Kj8(Q);return null}function Wj8($){if($==null)return null;if(typeof $==="string")return y30($);let Z;try{Z=JSON.stringify($)}catch{return null}return Z?y30(Z):null}var Dq4,Eq4;var x61=O(()=>{Dq4=/https?:\/\/github\.com\/([^/\s"']+)\/([^/\s"']+)\/pull\/(\d+)/,Eq4=/https?:\/\/api\.github\.com\/repos\/([^/\s"']+)\/([^/\s"']+)\/pulls\/(\d+)/});class Uj8{listeners=new Map;totalCount=0;strategy=null;started=!1;async start($){if(this.started){if(!$)return;await this.stop()}this.strategy=$,await this.strategy.start((Z,X)=>this.localEmit(Z,X)),this.started=!0}async stop(){if(!this.started||!this.strategy)return;await this.strategy.stop(),this.started=!1}add($){if(this.totalCount>=Nj8)return console.warn(`[SSEHub] Total connection limit reached (${Nj8})`),null;let Z=this.listeners.get($.organizationId);if(!Z)Z=new Map,this.listeners.set($.organizationId,Z);if(Z.size>=Hj8)return console.warn(`[SSEHub] Per-org connection limit reached for ${$.organizationId} (${Hj8})`),null;return Z.set($.id,$),this.totalCount++,$.id}remove($,Z){let X=this.listeners.get($);if(!X)return;if(X.delete(Z)){if(this.totalCount--,X.size===0)this.listeners.delete($)}}emit($,Z){if(this.strategy)this.strategy.broadcast($,Z);else this.localEmit($,Z)}countForOrg($){return this.listeners.get($)?.size??0}get count(){return this.totalCount}localEmit($,Z){let X=this.listeners.get($);if(!X||X.size===0)return;for(let Q of X.values()){if(Q.typePatterns&&!zq4(Z.type,Q.typePatterns))continue;try{Q.push(Z)}catch{this.remove($,Q.id)}}}}function zq4($,Z){for(let X of Z){if(X===$)return!0;if(X.endsWith(".*")){let Q=X.slice(0,-1);if($.startsWith(Q))return!0}}return!1}var Hj8=50,Nj8=500,W9;var g30=O(()=>{j5();W9=new Uj8;L6.createObservableGauge("sse_hub.connections",{description:"Active SSE listeners held by this pod",unit:"{connections}"}).addCallback(($)=>$.observe(W9.count))});function c9($,Z){W9.emit($,{id:crypto.randomUUID(),type:oB8,source:"task-board",subject:Z.id,data:Z,time:new Date().toISOString()})}function wj8($,Z){W9.emit($,{id:crypto.randomUUID(),type:rB8,source:"task-board",subject:Z,data:{id:Z},time:new Date().toISOString()})}function jq4($,Z){return $?[$]:Z}async function Bj8($,Z,X){let Q=$.metadata?.runMetadata?.taskBoardItemId,Y=!Q&&X?await $.storage.taskBoard.linkedTaskIds(X,Z):[];return jq4(Q,Y)}async function Bh($,Z,X){let Q=$.organization?.id;if(!Q)return;try{for(let Y of await Bj8($,Q,X)){let G=await $.storage.taskBoard.getById(Y,Q);if(!G||Fj8[Z]<=Fj8[G.status])continue;let J=await $.storage.taskBoard.update(Y,Q,{status:Z},$.auth?.user?.id??G.updatedBy);await $.storage.taskBoard.recordActivity({taskBoardItemId:Y,action:"status_changed",actorId:null,data:{from:G.status,to:Z}}).catch((K)=>console.error("[task-board] activity log write failed",K)),c9(Q,J)}}catch(Y){console.error("[task-board] run transition failed",Y)}}async function h30($,Z,X,Q){let Y=$.organization?.id;if(!Y)return;try{let G=Wj8(Z);if(!G)return;let J=await Bj8($,Y,Q);for(let K of J)await $.storage.taskBoard.linkPr({taskBoardItemId:K,organizationId:Y,url:G.url,prNumber:G.number,repoOwner:G.owner,repoName:G.repo,connectionId:X??null})}catch(G){console.error("[task-board] PR capture failed",G)}}async function Ur($,Z,X){try{let Q=await $.advanceLinkedTasksToReviewOnThreadFinish(Z,X);for(let Y of Q)c9(X,Y)}catch(Q){console.error("[task-board] thread-finish transition failed",Q)}}async function Oj8($,Z){let X=$.organization?.id;if(!X)return;try{let Q=await $.storage.taskBoard.reopenLinkedTasksOnThreadRun(Z,X);for(let Y of Q)c9(X,Y)}catch(Q){console.error("[task-board] thread-run reopen failed",Q)}}function Lj8($){return $.includes("create_pull_request")||$.includes("createPullRequest")}function Dj8($){if(Pq4.test($))return!0;return Aq4.test($)&&Tq4.test($)}var Fj8,Pq4,Aq4,Tq4;var ZY=O(()=>{x61();g30();HU();Fj8={triage:0,todo:1,in_progress:2,in_review:3,done:4};Pq4=/\bgh\s+pr\s+create\b/,Aq4=/api\.github\.com\/repos\/[^\s"']+\/pulls\b/,Tq4=/(?:-X|--request)\s+POST/});import{DBOS as gz}from"@dbos-inc/dbos-sdk";function b61($){v61=$}function zj8(){if(!v61)throw Error("[hostedHarness] runtime not initialized \u2014 setHostedHarnessRuntime() must run before workflows fire");return v61}async function Iq4($,Z){let X=zj8(),{request:Q}=$,Y=Z??await X.studioContextFactory(Q.organizationId,Q.userId);if(!Y)throw Error("user membership lost mid-dispatch");if(Q.runMetadata)Y.metadata.runMetadata=Q.runMetadata;let G=new AbortController,J=!1,K=new Nr({emit:()=>Ej8(X,$)}),W=await Jj8(()=>{J=!0,Ej8(X,$),K.arm()}).finally(()=>K.stop());try{if(J&&await Rq4($))throw Error("run cancelled while queued for a free runner");if(Bh(Y,"in_progress",$.threadId),!Q.runMetadata?.taskBoardItemId)Oj8(Y,$.threadId);await X.dispatchRunFn({...Q,abortSignal:G.signal},Y,X.deps)}finally{W()}}async function Rq4($){try{return(await gz.getWorkflowStatus(y61($.runId,$.fenceToken)))?.status==="CANCELLED"}catch(Z){return console.error(`[hostedHarness] could not read child status for run=${$.runId} fence=${$.fenceToken}`,Z),!1}}function qq4($,Z,X,Q=1){let Y=X instanceof Error?X.message:String(X);return{messageId:GO($,Z),errorChunk:{type:"error",errorText:Y},seq:Q,finalSeq:Q}}function Mq4($){if(!($ instanceof Error))return;let Z=$.lastAckSeq;return typeof Z==="number"?Z+1:void 0}async function kq4($,Z){let X=zj8(),{streamBuffer:Q}=X.deps,{messageId:Y,errorChunk:G,seq:J,finalSeq:K}=qq4($.runId,$.fenceToken,Z,Mq4(Z));if(!Q){console.error(`[hostedHarness] no streamBuffer configured; dropping terminal error for run=${$.runId} fence=${$.fenceToken} messageId=${Y}`);return}if(!await Q.publishRawChunk($.runId,G,{fenceToken:$.fenceToken,seq:J})){console.error(`[hostedHarness] failed to publish terminal error chunk for run=${$.runId} fence=${$.fenceToken} messageId=${Y}`);return}await Q.publishDone($.runId,$.fenceToken,K)}async function Sq4($){try{await gz.runStep(()=>Iq4($),{name:"runHostedHarness",retriesAllowed:!1})}catch(Z){await gz.runStep(()=>kq4($,Z),{name:"publishHostedHarnessFailure",retriesAllowed:!0}).catch((X)=>{console.error(`[hostedHarness] could not publish terminal error for run=${$.runId} fence=${$.fenceToken}`,X)})}}function y61($,Z){return`decopilot-hosted:${$}:${Z}`}async function jj8($){return{workflowID:(await gz.startWorkflow(Vq4,{workflowID:y61($.runId,$.fenceToken),queueName:GN,enqueueOptions:{queuePartitionKey:$.threadId}})($)).workflowID}}async function g61($,Z){await gz.cancelWorkflow(y61($,Z))}var f61=1,v61=null,Ej8=($,Z)=>aJ($.deps.streamBuffer,Z.runId,"waiting-capacity"),Vq4;var h61=O(()=>{S61();Gh();_61();ZY();Vq4=gz.registerWorkflow(Sq4,{name:"hostedHarnessWorkflow",maxRecoveryAttempts:1000})});import{DBOS as Oh}from"@dbos-inc/dbos-sdk";function l61($){if($!=="decopilot")throw Error(`hosted dispatch requires an explicit Decopilot harness; got ${JSON.stringify($)}`)}function d61($){u61=$}function Cq4(){if(!u61)throw Error("[threadGate] runtime not initialized \u2014 setThreadGateRuntime() must run before workflows fire");return u61}function _q4($,Z=$30){let X=$.runFenceToken;if(X)return{runFenceToken:X,claimedRequest:$,shouldPersistFence:!1};let Q=Z();return{runFenceToken:Q,claimedRequest:{...$,runFenceToken:Q},shouldPersistFence:!0}}async function xq4($){let Z=Cq4(),{request:X}=$,Q=X.taskId??$.threadId;if($O8({harnessId:X.harnessId}))await aJ(Z.deps.streamBuffer,Q,"starting-run");let Y=await Z.studioContextFactory(X.organizationId,X.userId);if(!Y)throw Error("user membership lost mid-dispatch");l61(X.harnessId);let G=X.taskId??$.threadId,{runFenceToken:J,claimedRequest:K,shouldPersistFence:W}=_q4(X);if(W)await Y.storage.threads.setRunFence(G,J);return{runFenceToken:J,hostedEnqueue:{runId:Q,fenceToken:J,threadId:$.threadId,request:K}}}async function vq4($){if($.source!=="user-message")return;let{request:Z}=$;d1.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 fq4($,Z){if($.source!=="user-message")return;let{request:X}=$;d1.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 u30($){l61($.request.harnessId),await Oh.runStep(()=>vq4($),{name:"trackMessageStarted"});let Z;try{Z=await Oh.runStep(()=>xq4($),{name:"dispatchRunAndWait",retriesAllowed:!0}),await jj8(Z.hostedEnqueue)}catch(Y){let G=Y instanceof Error?Y.message:String(Y);throw await Oh.runStep(()=>fq4($,G),{name:"trackMessageFailed"}),Y}let X=$.request.taskId??$.threadId,Q="messages"in $.request?void 0:$.request.messageId;return await Oh.runStep(()=>Zj8({runId:X,fenceToken:Z.runFenceToken,messageId:Q}),{name:"consumeRunProjection"}),{taskId:$.request.taskId??$.threadId}}async function bq4($){return u30($)}async function BU($,Z){return l61($.request.harnessId),{workflowID:(await Oh.startWorkflow(yq4,{queueName:$J,enqueueOptions:{queuePartitionKey:$.threadId},workflowID:Z?.workflowID})($)).workflowID}}var c61=1,u61=null,yq4;var Pj8=O(()=>{k$();Gh();Xj8();h61();yq4=Oh.registerWorkflow(bq4,{name:"threadGateWorkflow",maxRecoveryAttempts:1000})});var hz=O(()=>{Pj8();h61()});async function c30($,Z,X){let Q=Z.organizationId,Y=Z.assignedBy??Z.createdBy,G=await wX($,"smart"),J=yD(Q),K=await $.storage.threads.create({organization_id:Q,title:X.title,status:"in_progress",virtual_mcp_id:J,message_storage_version:2,harness_id:"decopilot",sandbox_provider_kind:"agent-sandbox",created_by:Y});await $.storage.taskBoard.linkThread(Z.id,K.id,Q);let W={id:crypto.randomUUID(),role:"user",parts:[{type:"text",text:X.prompt}]};return await new LX({storage:$.storage.threads.messageParts(),orgId:Q,threadId:K.id,runId:K.id}).emitRequestMessage(W),await BU({threadId:K.id,source:"background-tool",request:{messages:[W],models:{credentialId:G.credentialId,thinking:{id:G.modelId,title:G.modelMeta.title}},agent:{id:J},temperature:X.temperature,toolApprovalLevel:"auto",mode:"default",organizationId:Q,userId:Y,harnessId:"decopilot",sandboxProviderKind:"agent-sandbox",taskId:K.id,runMetadata:{taskBoardItemId:Z.id}}}),{threadId:K.id}}var m61=O(()=>{oB();hz();YO();T6()});async function Lh($,Z){if(Z.assigneeId!==z7)return;await i61($,Z).catch((X)=>{console.error("[task-board] Super Agent enqueue failed",X)})}async function i61($,Z,X){let Q=["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: ${Z.title}`,Z.description?`
|
|
2392
2391
|
Description:
|
|
2393
2392
|
${Z.description}
|
|
2394
2393
|
`:"",X?.feedback?[X.pr?`A reviewer requested changes on the existing pull request #${X.pr.number} (${X.pr.url}):`:"A reviewer requested changes on your previous work:",X.feedback,X.pr?`Load the repo, then CHECK OUT that PR's branch (e.g. \`gh pr checkout ${X.pr.number}\`) before editing, address the feedback, commit, and push to update the SAME pull request \u2014 do NOT open a new one or start a new branch.`:"Address this feedback.",""].join(`
|