@rudderhq/server 0.4.6-canary.9 → 0.5.0
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/agent-runtimes/http/execute.d.ts.map +1 -1
- package/dist/agent-runtimes/http/execute.js +8 -2
- package/dist/agent-runtimes/http/execute.js.map +1 -1
- package/dist/agent-runtimes/process/execute.d.ts.map +1 -1
- package/dist/agent-runtimes/process/execute.js +3 -1
- package/dist/agent-runtimes/process/execute.js.map +1 -1
- package/dist/agent-runtimes/utils.d.ts +6 -1
- package/dist/agent-runtimes/utils.d.ts.map +1 -1
- package/dist/agent-runtimes/utils.js +1 -1
- package/dist/agent-runtimes/utils.js.map +1 -1
- package/dist/app.d.ts +3 -3
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +17 -8
- package/dist/app.js.map +1 -1
- package/dist/bootstrap/create-http-app.d.ts +6 -1
- package/dist/bootstrap/create-http-app.d.ts.map +1 -1
- package/dist/bootstrap/create-http-app.js +122 -46
- package/dist/bootstrap/create-http-app.js.map +1 -1
- package/dist/bootstrap/plugin-host-runtime.d.ts.map +1 -1
- package/dist/bootstrap/plugin-host-runtime.js +89 -31
- package/dist/bootstrap/plugin-host-runtime.js.map +1 -1
- package/dist/bootstrap/register-api-routes.d.ts +3 -1
- package/dist/bootstrap/register-api-routes.d.ts.map +1 -1
- package/dist/bootstrap/register-api-routes.js +3 -3
- package/dist/bootstrap/register-api-routes.js.map +1 -1
- package/dist/bootstrap/types.d.ts +1 -0
- package/dist/bootstrap/types.d.ts.map +1 -1
- package/dist/bundled-plugins/plugin-linear/dist/worker.js +348 -172
- package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +3 -3
- package/dist/config.d.ts +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +23 -0
- package/dist/config.js.map +1 -1
- package/dist/home-paths.d.ts.map +1 -1
- package/dist/home-paths.js +79 -7
- package/dist/home-paths.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -54
- package/dist/index.js.map +1 -1
- package/dist/routes/access-onboarding.helpers.js +3 -3
- package/dist/routes/access-onboarding.helpers.js.map +1 -1
- package/dist/routes/access.helpers.d.ts.map +1 -1
- package/dist/routes/access.helpers.js +3 -2
- package/dist/routes/access.helpers.js.map +1 -1
- package/dist/routes/access.js +1 -1
- package/dist/routes/access.js.map +1 -1
- package/dist/routes/activity.d.ts.map +1 -1
- package/dist/routes/activity.js +5 -1
- package/dist/routes/activity.js.map +1 -1
- package/dist/routes/agents.management-routes.d.ts.map +1 -1
- package/dist/routes/agents.management-routes.js +13 -13
- package/dist/routes/agents.management-routes.js.map +1 -1
- package/dist/routes/assets.d.ts.map +1 -1
- package/dist/routes/assets.js +9 -2
- package/dist/routes/assets.js.map +1 -1
- package/dist/routes/chat-background-runtime.d.ts +19 -0
- package/dist/routes/chat-background-runtime.d.ts.map +1 -0
- package/dist/routes/chat-background-runtime.js +129 -0
- package/dist/routes/chat-background-runtime.js.map +1 -0
- package/dist/routes/chats.d.ts +2 -1
- package/dist/routes/chats.d.ts.map +1 -1
- package/dist/routes/chats.js +944 -24
- package/dist/routes/chats.js.map +1 -1
- package/dist/routes/chats.stream-routes.d.ts.map +1 -1
- package/dist/routes/chats.stream-routes.js +552 -76
- package/dist/routes/chats.stream-routes.js.map +1 -1
- package/dist/routes/issues.comments-attachments.d.ts.map +1 -1
- package/dist/routes/issues.comments-attachments.js +14 -31
- package/dist/routes/issues.comments-attachments.js.map +1 -1
- package/dist/routes/onboarding.js +1 -1
- package/dist/routes/onboarding.js.map +1 -1
- package/dist/routes/orgs.d.ts +2 -1
- package/dist/routes/orgs.d.ts.map +1 -1
- package/dist/routes/orgs.js +31 -2
- package/dist/routes/orgs.js.map +1 -1
- package/dist/routes/run-intelligence.d.ts.map +1 -1
- package/dist/routes/run-intelligence.js +76 -16
- package/dist/routes/run-intelligence.js.map +1 -1
- package/dist/services/activity-log.d.ts +4 -1
- package/dist/services/activity-log.d.ts.map +1 -1
- package/dist/services/activity-log.js +12 -4
- package/dist/services/activity-log.js.map +1 -1
- package/dist/services/activity.d.ts +11 -394
- package/dist/services/activity.d.ts.map +1 -1
- package/dist/services/activity.js +24 -18
- package/dist/services/activity.js.map +1 -1
- package/dist/services/agents.d.ts +741 -118
- package/dist/services/agents.d.ts.map +1 -1
- package/dist/services/approvals.d.ts +3 -3
- package/dist/services/automation-chat-output.d.ts.map +1 -1
- package/dist/services/automation-chat-output.js +115 -94
- package/dist/services/automation-chat-output.js.map +1 -1
- package/dist/services/budgets.d.ts.map +1 -1
- package/dist/services/budgets.js +38 -36
- package/dist/services/budgets.js.map +1 -1
- package/dist/services/chat-agent-runs.d.ts +3 -1
- package/dist/services/chat-agent-runs.d.ts.map +1 -1
- package/dist/services/chat-agent-runs.js +95 -34
- package/dist/services/chat-agent-runs.js.map +1 -1
- package/dist/services/chat-assistant.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.d.ts +27 -4
- package/dist/services/chat-assistant.helpers.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.js +66 -2
- package/dist/services/chat-assistant.helpers.js.map +1 -1
- package/dist/services/chat-assistant.inline-visuals.test.d.ts +2 -0
- package/dist/services/chat-assistant.inline-visuals.test.d.ts.map +1 -0
- package/dist/services/chat-assistant.inline-visuals.test.js +86 -0
- package/dist/services/chat-assistant.inline-visuals.test.js.map +1 -0
- package/dist/services/chat-assistant.js +115 -22
- package/dist/services/chat-assistant.js.map +1 -1
- package/dist/services/chat-generation-locks.d.ts +85 -0
- package/dist/services/chat-generation-locks.d.ts.map +1 -1
- package/dist/services/chat-generation-locks.js +371 -9
- package/dist/services/chat-generation-locks.js.map +1 -1
- package/dist/services/chat-generation-locks.test.d.ts +2 -0
- package/dist/services/chat-generation-locks.test.d.ts.map +1 -0
- package/dist/services/chat-generation-locks.test.js +324 -0
- package/dist/services/chat-generation-locks.test.js.map +1 -0
- package/dist/services/chat-generation-protocol.d.ts +674 -0
- package/dist/services/chat-generation-protocol.d.ts.map +1 -0
- package/dist/services/chat-generation-protocol.js +1571 -0
- package/dist/services/chat-generation-protocol.js.map +1 -0
- package/dist/services/chat-generation-protocol.test.d.ts +2 -0
- package/dist/services/chat-generation-protocol.test.d.ts.map +1 -0
- package/dist/services/chat-generation-protocol.test.js +1156 -0
- package/dist/services/chat-generation-protocol.test.js.map +1 -0
- package/dist/services/chat-title-generation.d.ts +0 -3
- package/dist/services/chat-title-generation.d.ts.map +1 -1
- package/dist/services/chat-title-generation.js +2 -32
- package/dist/services/chat-title-generation.js.map +1 -1
- package/dist/services/chat-work-manifest.d.ts.map +1 -1
- package/dist/services/chat-work-manifest.js +5 -1
- package/dist/services/chat-work-manifest.js.map +1 -1
- package/dist/services/chats.d.ts +1451 -272
- package/dist/services/chats.d.ts.map +1 -1
- package/dist/services/chats.js +1372 -35
- package/dist/services/chats.js.map +1 -1
- package/dist/services/costs.d.ts +34 -7
- package/dist/services/costs.d.ts.map +1 -1
- package/dist/services/costs.js +129 -61
- package/dist/services/costs.js.map +1 -1
- package/dist/services/finance.d.ts +3 -3
- package/dist/services/goals.d.ts +2 -2
- package/dist/services/heartbeat.d.ts +1 -1
- package/dist/services/heartbeat.d.ts.map +1 -1
- package/dist/services/heartbeat.js +1 -1
- package/dist/services/heartbeat.js.map +1 -1
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/integrations/agent-integrations.d.ts +1 -1
- package/dist/services/integrations/custom-integrations.d.ts +1 -1
- package/dist/services/integrations/feishu/runtime.d.ts.map +1 -1
- package/dist/services/integrations/feishu/runtime.js +16 -0
- package/dist/services/integrations/feishu/runtime.js.map +1 -1
- package/dist/services/issues.comments-attachments.d.ts +111 -0
- package/dist/services/issues.comments-attachments.d.ts.map +1 -1
- package/dist/services/issues.comments-attachments.js +138 -66
- package/dist/services/issues.comments-attachments.js.map +1 -1
- package/dist/services/issues.d.ts +56 -0
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.helpers.d.ts.map +1 -1
- package/dist/services/issues.helpers.js +2 -2
- package/dist/services/issues.helpers.js.map +1 -1
- package/dist/services/issues.js +5 -2
- package/dist/services/issues.js.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.catalog.d.ts.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.catalog.js +7 -1
- package/dist/services/knowledge-portability/organization-skills.catalog.js.map +1 -1
- package/dist/services/messenger.d.ts.map +1 -1
- package/dist/services/messenger.js +11 -9
- package/dist/services/messenger.js.map +1 -1
- package/dist/services/organization-workspace-browser.d.ts.map +1 -1
- package/dist/services/organization-workspace-browser.js +19 -3
- package/dist/services/organization-workspace-browser.js.map +1 -1
- package/dist/services/orgs.d.ts.map +1 -1
- package/dist/services/orgs.js +36 -12
- package/dist/services/orgs.js.map +1 -1
- package/dist/services/plugin-dev-watcher.d.ts +19 -2
- package/dist/services/plugin-dev-watcher.d.ts.map +1 -1
- package/dist/services/plugin-dev-watcher.js +45 -11
- package/dist/services/plugin-dev-watcher.js.map +1 -1
- package/dist/services/plugin-registry.d.ts +28 -28
- package/dist/services/projects.d.ts +1 -1
- package/dist/services/run-events.d.ts +20 -0
- package/dist/services/run-events.d.ts.map +1 -0
- package/dist/services/run-events.js +34 -0
- package/dist/services/run-events.js.map +1 -0
- package/dist/services/run-intelligence.d.ts +16 -4
- package/dist/services/run-intelligence.d.ts.map +1 -1
- package/dist/services/run-intelligence.js +90 -15
- package/dist/services/run-intelligence.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.core.d.ts +23 -0
- package/dist/services/runtime-kernel/heartbeat.core.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.core.js +1 -0
- package/dist/services/runtime-kernel/heartbeat.core.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.d.ts +95 -37
- package/dist/services/runtime-kernel/heartbeat.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.execute.d.ts +3 -1
- package/dist/services/runtime-kernel/heartbeat.execute.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.execute.js +389 -219
- package/dist/services/runtime-kernel/heartbeat.execute.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.js +594 -204
- package/dist/services/runtime-kernel/heartbeat.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.misc.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.misc.js +34 -24
- package/dist/services/runtime-kernel/heartbeat.misc.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.recovery.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.recovery.js +56 -6
- package/dist/services/runtime-kernel/heartbeat.recovery.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.release.d.ts +3 -1
- package/dist/services/runtime-kernel/heartbeat.release.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.release.js +276 -44
- package/dist/services/runtime-kernel/heartbeat.release.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.sessions.d.ts +42 -1
- package/dist/services/runtime-kernel/heartbeat.sessions.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.sessions.js +110 -8
- package/dist/services/runtime-kernel/heartbeat.sessions.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.d.ts +575 -0
- package/dist/services/runtime-kernel/heartbeat.terminal.d.ts.map +1 -0
- package/dist/services/runtime-kernel/heartbeat.terminal.js +589 -0
- package/dist/services/runtime-kernel/heartbeat.terminal.js.map +1 -0
- package/dist/services/runtime-kernel/heartbeat.wakeup.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.wakeup.js +238 -92
- package/dist/services/runtime-kernel/heartbeat.wakeup.js.map +1 -1
- package/dist/services/runtime-kernel/model-fallback.d.ts.map +1 -1
- package/dist/services/runtime-kernel/model-fallback.js +11 -0
- package/dist/services/runtime-kernel/model-fallback.js.map +1 -1
- package/dist/services/side-chats.d.ts +212 -0
- package/dist/services/side-chats.d.ts.map +1 -0
- package/dist/services/side-chats.js +379 -0
- package/dist/services/side-chats.js.map +1 -0
- package/dist/services/workspace-runtime.services.d.ts +1 -1
- package/dist/services/workspace-web-preview.d.ts +36 -0
- package/dist/services/workspace-web-preview.d.ts.map +1 -0
- package/dist/services/workspace-web-preview.js +566 -0
- package/dist/services/workspace-web-preview.js.map +1 -0
- package/package.json +13 -13
- package/resources/bundled-skills/rudder-docs/SKILL.md +161 -0
- package/resources/bundled-skills/rudder-docs/evals/trigger-evals.json +82 -0
- package/{skills/rudder → resources/bundled-skills/rudder-docs}/references/api-reference.md +17 -1
- package/{skills/rudder → resources/bundled-skills/rudder-docs}/references/cli-reference.md +49 -94
- package/resources/bundled-skills/rudder-docs/references/control-plane-practices.md +231 -0
- package/{skills/rudder → resources/bundled-skills/rudder-docs}/references/organization-skills.md +15 -1
- package/resources/bundled-skills/rudder-docs/references/source-map.md +138 -0
- package/resources/bundled-skills/visualize/SKILL.md +132 -0
- package/resources/bundled-skills/visualize/agents/openai.yaml +7 -0
- package/resources/bundled-skills/visualize/assets/example-chart.html +89 -0
- package/resources/bundled-skills/visualize/references/runtime-contract.md +114 -0
- package/skills/rudder-docs/SKILL.md +161 -0
- package/skills/rudder-docs/evals/trigger-evals.json +82 -0
- package/{resources/bundled-skills/rudder → skills/rudder-docs}/references/api-reference.md +17 -1
- package/{resources/bundled-skills/rudder → skills/rudder-docs}/references/cli-reference.md +49 -94
- package/skills/rudder-docs/references/control-plane-practices.md +231 -0
- package/{resources/bundled-skills/rudder → skills/rudder-docs}/references/organization-skills.md +15 -1
- package/skills/rudder-docs/references/source-map.md +138 -0
- package/skills/visualize/SKILL.md +132 -0
- package/skills/visualize/agents/openai.yaml +7 -0
- package/skills/visualize/assets/example-chart.html +89 -0
- package/skills/visualize/references/runtime-contract.md +114 -0
- package/ui-dist/assets/{abnfDiagram-VRR7QNED-CKLAbEpH.js → abnfDiagram-VRR7QNED-Dpnx79fp.js} +1 -1
- package/ui-dist/assets/{arc-CS20WjB1.js → arc-Cpvh_rCf.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-ZJ3FMSHR-BY4lounK.js → architectureDiagram-ZJ3FMSHR-sDD_mBAI.js} +1 -1
- package/ui-dist/assets/{blockDiagram-677ZJIJ3-BHtHl-hm.js → blockDiagram-677ZJIJ3-4O4wWti1.js} +1 -1
- package/ui-dist/assets/{c4Diagram-LMCZKHZV-DgOJp7yn.js → c4Diagram-LMCZKHZV-BkGODE4P.js} +1 -1
- package/ui-dist/assets/channel-CM4Myg_6.js +1 -0
- package/ui-dist/assets/{chunk-2Q5K7J3B-Uin6HTPH.js → chunk-2Q5K7J3B-DsDQQpID.js} +1 -1
- package/ui-dist/assets/{chunk-32BRIVSS-BxAI7yMx.js → chunk-32BRIVSS-Bzx_VnIw.js} +1 -1
- package/ui-dist/assets/{chunk-5VM5RSS4-Ce6AR6Sg.js → chunk-5VM5RSS4-D4LoPCni.js} +1 -1
- package/ui-dist/assets/{chunk-EX3LRPZG-DgxPO59e.js → chunk-EX3LRPZG-BO0R-mS4.js} +3 -3
- package/ui-dist/assets/{chunk-JWPE2WC7-Bn3BYmxA.js → chunk-JWPE2WC7-B4Nr8KRL.js} +1 -1
- package/ui-dist/assets/{chunk-MOJQB5TN-BlTdGU58.js → chunk-MOJQB5TN--uaDDrYM.js} +1 -1
- package/ui-dist/assets/{chunk-RYQCIY6F-C0V6evNH.js → chunk-RYQCIY6F-CyBY2w_j.js} +1 -1
- package/ui-dist/assets/{chunk-V7JOEXUC-DjvZ40fp.js → chunk-V7JOEXUC-BMid_x8S.js} +3 -3
- package/ui-dist/assets/{chunk-VR4S4FIN-CejmQVxi.js → chunk-VR4S4FIN-DVqdPKuG.js} +1 -1
- package/ui-dist/assets/{chunk-XXDRQBXY-tj-vHLHN.js → chunk-XXDRQBXY-vy03lLSS.js} +1 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-CtlIEzTt.js +1 -0
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-CtlIEzTt.js +1 -0
- package/ui-dist/assets/{cose-bilkent-JH36ORCC-Ci7DAkTj.js → cose-bilkent-JH36ORCC-jQDZmrG3.js} +1 -1
- package/ui-dist/assets/{cynefin-VYW2F7L2-CHU2plsQ.js → cynefin-VYW2F7L2-BxBj6aea.js} +1 -1
- package/ui-dist/assets/{cynefinDiagram-TSTJHNR4-pqqNoczb.js → cynefinDiagram-TSTJHNR4-BuUubF5I.js} +1 -1
- package/ui-dist/assets/{dagre-VKFMJZFB-Bk8Y_kGf.js → dagre-VKFMJZFB-B8HipJ3a.js} +1 -1
- package/ui-dist/assets/{diagram-FQU43EPY-CiSxIS2M.js → diagram-FQU43EPY-r7gkbKSt.js} +2 -2
- package/ui-dist/assets/{diagram-G47NLZAW-qpVsOLnz.js → diagram-G47NLZAW-CxClRsxD.js} +1 -1
- package/ui-dist/assets/{diagram-NH7WQ7WH-Cda5JA3K.js → diagram-NH7WQ7WH-C8HYTLlq.js} +1 -1
- package/ui-dist/assets/{diagram-OA4YK3LP-Dh_DdE2d.js → diagram-OA4YK3LP-CjwqqLKz.js} +1 -1
- package/ui-dist/assets/{diagram-WEI45ONY-r5ouUhNZ.js → diagram-WEI45ONY-2IWfCqZb.js} +1 -1
- package/ui-dist/assets/{ebnfDiagram-CCIWWBDH-C6lDAmmi.js → ebnfDiagram-CCIWWBDH-DVGZkgjy.js} +1 -1
- package/ui-dist/assets/{erDiagram-Q63AITRT-BznPfnRu.js → erDiagram-Q63AITRT-C_-u3Gmw.js} +1 -1
- package/ui-dist/assets/{flowDiagram-23GEKE2U-bCaogpDj.js → flowDiagram-23GEKE2U-BvGg0NCq.js} +4 -4
- package/ui-dist/assets/{ganttDiagram-NO4QXBWP-Bn-e5kP6.js → ganttDiagram-NO4QXBWP-U3CZUUUR.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-IHSO6WYX-D7E-RLhl.js → gitGraphDiagram-IHSO6WYX-CIWuEBIo.js} +1 -1
- package/ui-dist/assets/{graph-3haZvvEy.js → graph-D3P5q-7m.js} +1 -1
- package/ui-dist/assets/index-B1rLBtZ1.js +1875 -0
- package/ui-dist/assets/{index-BUneV0z1.js → index-BAMXpiI5.js} +1 -1
- package/ui-dist/assets/{index-CheuLaX8.js → index-BAgtKYR1.js} +1 -1
- package/ui-dist/assets/{index-BDji4WI2.js → index-CBOr9F6w.js} +1 -1
- package/ui-dist/assets/{index-DlcNrNku.js → index-CbHqnWUe.js} +1 -1
- package/ui-dist/assets/{index-C1NcizE3.js → index-CjztBLJi.js} +1 -1
- package/ui-dist/assets/{index-JqztCnnf.js → index-Cu1iMhjl.js} +1 -1
- package/ui-dist/assets/{index-BFnwTV9t.js → index-D7ycf1qU.js} +1 -1
- package/ui-dist/assets/{index-JLGi6sfB.js → index-DAYlwxsg.js} +1 -1
- package/ui-dist/assets/{index-Bje1DqHh.js → index-DCFf9dps.js} +4 -4
- package/ui-dist/assets/{index-zyCQr__a.js → index-DOPIV8vd.js} +1 -1
- package/ui-dist/assets/{index-JEy5ZJbE.js → index-DRxLJD40.js} +1 -1
- package/ui-dist/assets/{index-Doc88zxN.js → index-DYMtCDKT.js} +1 -1
- package/ui-dist/assets/index-DekHKOsL.css +1 -0
- package/ui-dist/assets/{index-BN3GMGqN.js → index-DidCCw78.js} +1 -1
- package/ui-dist/assets/{index-DKRH0hjR.js → index-Ds_qma4-.js} +1 -1
- package/ui-dist/assets/{index-B2bHoMTu.js → index-HkQRx1D6.js} +1 -1
- package/ui-dist/assets/{index-DLxzQvPB.js → index-ikpL--zj.js} +1 -1
- package/ui-dist/assets/{index-mE0kmjy0.js → index-mnl55Stn.js} +1 -1
- package/ui-dist/assets/{infoDiagram-FWYZ7A6U-NSQ6saR1.js → infoDiagram-FWYZ7A6U-Cx8Fa-I4.js} +1 -1
- package/ui-dist/assets/{ishikawaDiagram-FXEZZL3T-XhGk3DMM.js → ishikawaDiagram-FXEZZL3T-Cmuz1QUN.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-5HDEW3XC-CUyh1IKu.js → journeyDiagram-5HDEW3XC-CJgkiVXG.js} +1 -1
- package/ui-dist/assets/{kanban-definition-HUTT4EX6-P_0zllUc.js → kanban-definition-HUTT4EX6-RAWpefOB.js} +1 -1
- package/ui-dist/assets/layout-DyWQv0Rr.js +1 -0
- package/ui-dist/assets/{linear-DWu-hp7y.js → linear-D5pdgIf9.js} +1 -1
- package/ui-dist/assets/{map-B2IiHu-a.js → map-bVSzNLl2.js} +1 -1
- package/ui-dist/assets/mermaid.core-CeaXGD6B.js +312 -0
- package/ui-dist/assets/{mindmap-definition-LN4V7U3C-DpKo7DKc.js → mindmap-definition-LN4V7U3C-B8B8AX5C.js} +1 -1
- package/ui-dist/assets/{pegDiagram-2B236MQR-DzDDMRRX.js → pegDiagram-2B236MQR-C4Sv-ua6.js} +1 -1
- package/ui-dist/assets/{pieDiagram-ENE6RG2P-Dr7ZCi_a.js → pieDiagram-ENE6RG2P-CLARlOHx.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-ABIIQ3AL-BB_gv9s9.js → quadrantDiagram-ABIIQ3AL-DPCXQmeT.js} +1 -1
- package/ui-dist/assets/{railroadDiagram-RFXS5EU6-C2ji_jMN.js → railroadDiagram-RFXS5EU6-BpqRuKUQ.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-TGXJPOKE-BJg8vYwc.js → requirementDiagram-TGXJPOKE-Dd-h62HZ.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-HTMAVEWB-msvrlvO_.js → sankeyDiagram-HTMAVEWB-DylT_pqq.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-DBY2YBRQ-B_B68qK5.js → sequenceDiagram-DBY2YBRQ-RiCF1REj.js} +1 -1
- package/ui-dist/assets/{sizeCapture-X5ZJPWSS-D0VdKiQi.js → sizeCapture-X5ZJPWSS-DXW4JQz2.js} +1 -1
- package/ui-dist/assets/{stateDiagram-2N3HPSRC-B4V-owEQ.js → stateDiagram-2N3HPSRC-6U3ESIGT.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-KQTrcZvp.js +1 -0
- package/ui-dist/assets/{swimlanes-5IMT3BWC-B1JTwGb7.js → swimlanes-5IMT3BWC-CeNHVNCi.js} +2 -2
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-CcxS1c6r.js +8 -0
- package/ui-dist/assets/{timeline-definition-FHXFAJF6-C-8YlQA9.js → timeline-definition-FHXFAJF6-Vlwoe_1b.js} +1 -1
- package/ui-dist/assets/{vennDiagram-L72KCM5P-DP13xuPX.js → vennDiagram-L72KCM5P-DBP7D3HE.js} +6 -6
- package/ui-dist/assets/{wardleyDiagram-EHGQE667-D6BNPJwb.js → wardleyDiagram-EHGQE667-DG-wzqpy.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-FW5EYKEG-my7CwP2H.js → xychartDiagram-FW5EYKEG-BAq3mbha.js} +1 -1
- package/ui-dist/index.html +2 -2
- package/resources/bundled-skills/rudder/SKILL.md +0 -314
- package/skills/rudder/SKILL.md +0 -314
- package/ui-dist/assets/channel-D-nDuwao.js +0 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-Ds2nJ2Kt.js +0 -1
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-Ds2nJ2Kt.js +0 -1
- package/ui-dist/assets/index-BA7XbHmf.css +0 -1
- package/ui-dist/assets/index-hE0ZX3Ud.js +0 -1820
- package/ui-dist/assets/layout-C-tMX-j8.js +0 -1
- package/ui-dist/assets/mermaid.core-WA5rvr0F.js +0 -314
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-DAB9Vdyb.js +0 -1
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-DRt36f68.js +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/agent-runtimes/http/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAG7F,wBAAsB,OAAO,CAAC,GAAG,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC,
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/agent-runtimes/http/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAG7F,wBAAsB,OAAO,CAAC,GAAG,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CA0CrG"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { asNumber, asString, parseObject } from "../utils.js";
|
|
2
2
|
export async function execute(ctx) {
|
|
3
|
-
const { config, runId, agent, context } = ctx;
|
|
3
|
+
const { config, runId, agent, context, abortSignal } = ctx;
|
|
4
4
|
const url = asString(config.url, "");
|
|
5
5
|
if (!url)
|
|
6
6
|
throw new Error("HTTP adapter missing url");
|
|
@@ -11,6 +11,11 @@ export async function execute(ctx) {
|
|
|
11
11
|
const body = { ...payloadTemplate, agentId: agent.id, runId, context };
|
|
12
12
|
const controller = new AbortController();
|
|
13
13
|
const timer = timeoutMs > 0 ? setTimeout(() => controller.abort(), timeoutMs) : null;
|
|
14
|
+
const abortFromContext = () => controller.abort();
|
|
15
|
+
if (abortSignal?.aborted)
|
|
16
|
+
controller.abort();
|
|
17
|
+
else
|
|
18
|
+
abortSignal?.addEventListener("abort", abortFromContext, { once: true });
|
|
14
19
|
try {
|
|
15
20
|
const res = await fetch(url, {
|
|
16
21
|
method,
|
|
@@ -19,7 +24,7 @@ export async function execute(ctx) {
|
|
|
19
24
|
...headers,
|
|
20
25
|
},
|
|
21
26
|
body: JSON.stringify(body),
|
|
22
|
-
...(timer ? { signal: controller.signal } : {}),
|
|
27
|
+
...((timer || abortSignal) ? { signal: controller.signal } : {}),
|
|
23
28
|
});
|
|
24
29
|
if (!res.ok) {
|
|
25
30
|
throw new Error(`HTTP invoke failed with status ${res.status}`);
|
|
@@ -34,6 +39,7 @@ export async function execute(ctx) {
|
|
|
34
39
|
finally {
|
|
35
40
|
if (timer)
|
|
36
41
|
clearTimeout(timer);
|
|
42
|
+
abortSignal?.removeEventListener("abort", abortFromContext);
|
|
37
43
|
}
|
|
38
44
|
}
|
|
39
45
|
//# sourceMappingURL=execute.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/agent-runtimes/http/execute.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE9D,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAiC;IAC7D,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/agent-runtimes/http/execute.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE9D,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAiC;IAC7D,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IAC3D,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAEtD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAA2B,CAAC;IACtE,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,EAAE,GAAG,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAEvE,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrF,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAClD,IAAI,WAAW,EAAE,OAAO;QAAE,UAAU,CAAC,KAAK,EAAE,CAAC;;QACxC,WAAW,EAAE,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9E,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM;YACN,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,GAAG,OAAO;aACX;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,GAAG,CAAC,CAAC,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,QAAQ,MAAM,IAAI,GAAG,EAAE;SACjC,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QAC/B,WAAW,EAAE,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/agent-runtimes/process/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAW7F,wBAAsB,OAAO,CAAC,GAAG,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC,
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/agent-runtimes/process/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAW7F,wBAAsB,OAAO,CAAC,GAAG,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAmErG"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { asNumber, asString, asStringArray, buildRudderEnv, parseObject, redactEnvForLogs, runChildProcess, } from "../utils.js";
|
|
2
2
|
export async function execute(ctx) {
|
|
3
|
-
const { runId, agent, config, onLog, onMeta } = ctx;
|
|
3
|
+
const { runId, agent, config, onLog, onMeta, onSpawn, abortSignal } = ctx;
|
|
4
4
|
const command = asString(config.command, "");
|
|
5
5
|
if (!command)
|
|
6
6
|
throw new Error("Process adapter missing command");
|
|
@@ -29,6 +29,8 @@ export async function execute(ctx) {
|
|
|
29
29
|
timeoutSec,
|
|
30
30
|
graceSec,
|
|
31
31
|
onLog,
|
|
32
|
+
onSpawn,
|
|
33
|
+
abortSignal,
|
|
32
34
|
});
|
|
33
35
|
if (proc.timedOut) {
|
|
34
36
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/agent-runtimes/process/execute.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAiC;IAC7D,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/agent-runtimes/process/execute.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAiC;IAC7D,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IAC1E,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAEjE,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,GAAG,GAA2B,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;IACjE,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/C,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAE/C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,MAAM,CAAC;YACX,gBAAgB,EAAE,SAAS;YAC3B,OAAO;YACP,GAAG;YACH,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE;QACvD,GAAG;QACH,GAAG;QACH,UAAU;QACV,QAAQ;QACR,KAAK;QACL,OAAO;QACP,WAAW;KACZ,CAAC,CAAC;IAEH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,mBAAmB,UAAU,GAAG;SAC/C,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,4BAA4B,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,EAAE;YAC/D,UAAU,EAAE;gBACV,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,KAAK;QACf,UAAU,EAAE;YACV,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { appendWithCap, asBoolean, asNumber, asString, asStringArray, buildRudderEnv, defaultPathForPlatform, ensureAbsoluteDirectory, ensureCommandResolvable, ensurePathInEnv, MAX_CAPTURE_BYTES, MAX_EXCERPT_BYTES, parseJson, parseObject, redactEnvForLogs, renderTemplate, resolvePathValue, runningProcesses, type RunProcessResult } from "@rudderhq/agent-runtime-utils/server-utils";
|
|
1
|
+
export { appendWithCap, asBoolean, asNumber, asString, asStringArray, buildRudderEnv, defaultPathForPlatform, ensureAbsoluteDirectory, ensureCommandResolvable, ensurePathInEnv, killChildProcessTree, MAX_CAPTURE_BYTES, MAX_EXCERPT_BYTES, parseJson, parseObject, redactEnvForLogs, renderTemplate, resolvePathValue, runningProcesses, type RunProcessResult } from "@rudderhq/agent-runtime-utils/server-utils";
|
|
2
2
|
import type { RunProcessResult } from "@rudderhq/agent-runtime-utils/server-utils";
|
|
3
3
|
export declare function runChildProcess(runId: string, command: string, args: string[], opts: {
|
|
4
4
|
cwd: string;
|
|
@@ -6,5 +6,10 @@ export declare function runChildProcess(runId: string, command: string, args: st
|
|
|
6
6
|
timeoutSec: number;
|
|
7
7
|
graceSec: number;
|
|
8
8
|
onLog: (stream: "stdout" | "stderr", chunk: string) => Promise<void>;
|
|
9
|
+
onSpawn?: (meta: {
|
|
10
|
+
pid: number;
|
|
11
|
+
startedAt: string;
|
|
12
|
+
}) => Promise<void>;
|
|
13
|
+
abortSignal?: AbortSignal;
|
|
9
14
|
}): Promise<RunProcessResult>;
|
|
10
15
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/agent-runtimes/utils.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAC3E,sBAAsB,EAAE,uBAAuB,EAC/C,uBAAuB,EAAE,eAAe,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/agent-runtimes/utils.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAC3E,sBAAsB,EAAE,uBAAuB,EAC/C,uBAAuB,EAAE,eAAe,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAC1N,MAAM,4CAA4C,CAAC;AAGpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAGnF,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE;IACJ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GACA,OAAO,CAAC,gBAAgB,CAAC,CAK3B"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// This file is kept as a convenience shim so existing in-tree
|
|
3
3
|
// imports (process/, http/, heartbeat.ts) don't need rewriting.
|
|
4
4
|
import { logger } from "../middleware/logger.js";
|
|
5
|
-
export { appendWithCap, asBoolean, asNumber, asString, asStringArray, buildRudderEnv, defaultPathForPlatform, ensureAbsoluteDirectory, ensureCommandResolvable, ensurePathInEnv, MAX_CAPTURE_BYTES, MAX_EXCERPT_BYTES, parseJson, parseObject, redactEnvForLogs, renderTemplate, resolvePathValue, runningProcesses } from "@rudderhq/agent-runtime-utils/server-utils";
|
|
5
|
+
export { appendWithCap, asBoolean, asNumber, asString, asStringArray, buildRudderEnv, defaultPathForPlatform, ensureAbsoluteDirectory, ensureCommandResolvable, ensurePathInEnv, killChildProcessTree, MAX_CAPTURE_BYTES, MAX_EXCERPT_BYTES, parseJson, parseObject, redactEnvForLogs, renderTemplate, resolvePathValue, runningProcesses } from "@rudderhq/agent-runtime-utils/server-utils";
|
|
6
6
|
import { runChildProcess as _runChildProcess } from "@rudderhq/agent-runtime-utils/server-utils";
|
|
7
7
|
export async function runChildProcess(runId, command, args, opts) {
|
|
8
8
|
return _runChildProcess(runId, command, args, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/agent-runtimes/utils.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,8DAA8D;AAC9D,gEAAgE;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EACL,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAC3E,sBAAsB,EAAE,uBAAuB,EAC/C,uBAAuB,EAAE,eAAe,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/agent-runtimes/utils.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,8DAA8D;AAC9D,gEAAgE;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EACL,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAC3E,sBAAsB,EAAE,uBAAuB,EAC/C,uBAAuB,EAAE,eAAe,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EACnM,MAAM,4CAA4C,CAAC;AAIpD,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAEjG,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAa,EACb,OAAe,EACf,IAAc,EACd,IAQC;IAED,OAAO,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE;QAC5C,GAAG,IAAI;QACP,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;KACnE,CAAC,CAAC;AACL,CAAC"}
|
package/dist/app.d.ts
CHANGED
|
@@ -7,8 +7,8 @@ export interface RudderAppHandle {
|
|
|
7
7
|
close(): Promise<void>;
|
|
8
8
|
}
|
|
9
9
|
export declare function createRudderApp(db: Db, opts: RudderAppOptions): Promise<{
|
|
10
|
-
app:
|
|
11
|
-
close()
|
|
10
|
+
app: express.Express;
|
|
11
|
+
close: () => Promise<void>;
|
|
12
12
|
}>;
|
|
13
|
-
export declare function createApp(db: Db, opts: Parameters<typeof createRudderApp>[1]): Promise<
|
|
13
|
+
export declare function createApp(db: Db, opts: Parameters<typeof createRudderApp>[1]): Promise<express.Express>;
|
|
14
14
|
//# sourceMappingURL=app.d.ts.map
|
package/dist/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC;IACrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,gBAAgB;;;GAuBvB;AAED,wBAAsB,SAAS,CAC7B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,4BAI5C"}
|
package/dist/app.js
CHANGED
|
@@ -1,18 +1,27 @@
|
|
|
1
1
|
import { createHttpApp } from "./bootstrap/create-http-app.js";
|
|
2
2
|
import { createPluginHostRuntime } from "./bootstrap/plugin-host-runtime.js";
|
|
3
|
+
import { logger } from "./middleware/logger.js";
|
|
4
|
+
import { RuntimeSupervisor, supervisedStart } from "./runtime/runtime-supervisor.js";
|
|
3
5
|
import { configureBrowserCapabilityDeployment } from "./services/browser-capability.js";
|
|
4
6
|
export { resolveViteHmrPort } from "./bootstrap/create-http-app.js";
|
|
5
7
|
export async function createRudderApp(db, opts) {
|
|
6
8
|
configureBrowserCapabilityDeployment(db, opts.deploymentMode);
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
return {
|
|
11
|
-
app,
|
|
12
|
-
async close() {
|
|
13
|
-
await pluginRuntime.close();
|
|
9
|
+
const supervisor = new RuntimeSupervisor({
|
|
10
|
+
onDisposeError: ({ name, error }) => {
|
|
11
|
+
logger.warn({ err: error, resource: name }, "Failed to close Rudder app resource");
|
|
14
12
|
},
|
|
15
|
-
};
|
|
13
|
+
});
|
|
14
|
+
return supervisedStart(supervisor, async () => {
|
|
15
|
+
const pluginRuntime = createPluginHostRuntime(db, opts);
|
|
16
|
+
supervisor.own("plugin-host-runtime", () => pluginRuntime.close());
|
|
17
|
+
const httpApp = await createHttpApp(db, opts, pluginRuntime);
|
|
18
|
+
supervisor.own("http-app", () => httpApp.close());
|
|
19
|
+
await pluginRuntime.start();
|
|
20
|
+
return {
|
|
21
|
+
app: httpApp.app,
|
|
22
|
+
close: () => supervisor.dispose(),
|
|
23
|
+
};
|
|
24
|
+
});
|
|
16
25
|
}
|
|
17
26
|
export async function createApp(db, opts) {
|
|
18
27
|
const handle = await createRudderApp(db, opts);
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAOpE,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAM,EACN,IAAsB;IAEtB,oCAAoC,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAOpE,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAM,EACN,IAAsB;IAEtB,oCAAoC,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC;QACvC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YAClC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,qCAAqC,CAAC,CAAC;QACrF,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,eAAe,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,aAAa,GAAG,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACxD,UAAU,CAAC,GAAG,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;QAEnE,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QAC7D,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAElD,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;QAE5B,OAAO;YACL,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE;SACR,CAAC;IAC9B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,EAAM,EACN,IAA2C;IAE3C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC,GAAG,CAAC;AACpB,CAAC"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import type { Db } from "@rudderhq/db";
|
|
2
|
+
import express from "express";
|
|
2
3
|
import type { PluginHostRuntime } from "./plugin-host-runtime.js";
|
|
3
4
|
import type { RudderAppOptions } from "./types.js";
|
|
5
|
+
export interface HttpAppHandle {
|
|
6
|
+
app: express.Express;
|
|
7
|
+
close(): Promise<void>;
|
|
8
|
+
}
|
|
4
9
|
export declare function resolveViteHmrPort(serverPort: number): number;
|
|
5
|
-
export declare function createHttpApp(db: Db, opts: RudderAppOptions, pluginRuntime: PluginHostRuntime): Promise<
|
|
10
|
+
export declare function createHttpApp(db: Db, opts: RudderAppOptions, pluginRuntime: PluginHostRuntime): Promise<HttpAppHandle>;
|
|
6
11
|
//# sourceMappingURL=create-http-app.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-http-app.d.ts","sourceRoot":"","sources":["../../src/bootstrap/create-http-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"create-http-app.d.ts","sourceRoot":"","sources":["../../src/bootstrap/create-http-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,OAAO,MAAM,SAAS,CAAC;AAc9B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC;IACrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAK7D;AAED,wBAAsB,aAAa,CACjC,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,gBAAgB,EACtB,aAAa,EAAE,iBAAiB,GAC/B,OAAO,CAAC,aAAa,CAAC,CAiLxB"}
|
|
@@ -4,10 +4,13 @@ import path from "node:path";
|
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
5
|
import { actorMiddleware } from "../middleware/auth.js";
|
|
6
6
|
import { errorHandler, httpLogger } from "../middleware/index.js";
|
|
7
|
+
import { logger } from "../middleware/logger.js";
|
|
7
8
|
import { privateHostnameGuard, resolvePrivateHostnameAllowSet } from "../middleware/private-hostname-guard.js";
|
|
9
|
+
import { createChatBackgroundRuntime } from "../routes/chat-background-runtime.js";
|
|
8
10
|
import { llmRoutes } from "../routes/llms.js";
|
|
9
11
|
import { pluginUiStaticRoutes } from "../routes/plugin-ui-static.js";
|
|
10
12
|
import { DEFAULT_LOCAL_PLUGIN_DIR } from "../services/plugin-loader.js";
|
|
13
|
+
import { workspaceWebPreviewRuntime } from "../services/workspace-web-preview.js";
|
|
11
14
|
import { applyUiBranding } from "../ui-branding.js";
|
|
12
15
|
import { registerApiRoutes } from "./register-api-routes.js";
|
|
13
16
|
export function resolveViteHmrPort(serverPort) {
|
|
@@ -18,11 +21,58 @@ export function resolveViteHmrPort(serverPort) {
|
|
|
18
21
|
}
|
|
19
22
|
export async function createHttpApp(db, opts, pluginRuntime) {
|
|
20
23
|
const app = express();
|
|
24
|
+
const previewOrigin = opts.workspacePreviewOrigin ?? `http://preview.localhost:${opts.serverPort}`;
|
|
25
|
+
const workspacePreview = workspaceWebPreviewRuntime(db, {
|
|
26
|
+
previewOrigin,
|
|
27
|
+
requireLoopbackParent: !opts.workspacePreviewOrigin,
|
|
28
|
+
});
|
|
29
|
+
const chatBackgroundRuntime = createChatBackgroundRuntime();
|
|
30
|
+
let closeVite = null;
|
|
31
|
+
let closeInFlight = null;
|
|
32
|
+
const close = () => {
|
|
33
|
+
if (closeInFlight)
|
|
34
|
+
return closeInFlight;
|
|
35
|
+
closeInFlight = Promise.resolve().then(async () => {
|
|
36
|
+
const disposeVite = closeVite;
|
|
37
|
+
closeVite = null;
|
|
38
|
+
const results = await Promise.allSettled([
|
|
39
|
+
Promise.resolve().then(() => chatBackgroundRuntime.close()),
|
|
40
|
+
Promise.resolve().then(() => disposeVite?.()),
|
|
41
|
+
]);
|
|
42
|
+
const failures = results
|
|
43
|
+
.filter((result) => result.status === "rejected")
|
|
44
|
+
.map((result) => result.reason);
|
|
45
|
+
if (failures.length === 1)
|
|
46
|
+
throw failures[0];
|
|
47
|
+
if (failures.length > 1)
|
|
48
|
+
throw new AggregateError(failures, "HTTP app cleanup failed");
|
|
49
|
+
});
|
|
50
|
+
return closeInFlight;
|
|
51
|
+
};
|
|
52
|
+
const rollbackStartup = async (startupError) => {
|
|
53
|
+
try {
|
|
54
|
+
await close();
|
|
55
|
+
}
|
|
56
|
+
catch (cleanupError) {
|
|
57
|
+
logger.error({ err: cleanupError, startupError }, "HTTP app startup rollback failed");
|
|
58
|
+
}
|
|
59
|
+
throw startupError;
|
|
60
|
+
};
|
|
21
61
|
const privateHostnameGateEnabled = opts.deploymentMode === "authenticated" && opts.deploymentExposure === "private";
|
|
22
62
|
const privateHostnameAllowSet = resolvePrivateHostnameAllowSet({
|
|
23
63
|
allowedHostnames: opts.allowedHostnames,
|
|
24
64
|
bindHost: opts.bindHost,
|
|
25
65
|
});
|
|
66
|
+
// Preview capabilities are bearer secrets, so this Host-only branch runs
|
|
67
|
+
// before the ordinary request logger and never mounts Rudder API/UI routes.
|
|
68
|
+
app.use(async (req, res, next) => {
|
|
69
|
+
if (await workspacePreview.handlePreviewHostRequest(req, res))
|
|
70
|
+
return;
|
|
71
|
+
next();
|
|
72
|
+
});
|
|
73
|
+
app.use("/workspace-preview", (_req, res) => {
|
|
74
|
+
res.status(404).type("text/plain").send("Not found");
|
|
75
|
+
});
|
|
26
76
|
app.use(express.json({
|
|
27
77
|
// Organization import/export payloads can inline full portable packages.
|
|
28
78
|
limit: "10mb",
|
|
@@ -61,62 +111,88 @@ export async function createHttpApp(db, opts, pluginRuntime) {
|
|
|
61
111
|
app.all("/api/auth/*authPath", opts.betterAuthHandler);
|
|
62
112
|
}
|
|
63
113
|
app.use(llmRoutes(db));
|
|
64
|
-
|
|
114
|
+
try {
|
|
115
|
+
app.use("/api", registerApiRoutes(db, opts, pluginRuntime, workspacePreview, chatBackgroundRuntime));
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
return rollbackStartup(error);
|
|
119
|
+
}
|
|
65
120
|
app.use("/api", (_req, res) => {
|
|
66
121
|
res.status(404).json({ error: "API route not found" });
|
|
67
122
|
});
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
123
|
+
try {
|
|
124
|
+
app.use(pluginUiStaticRoutes(db, {
|
|
125
|
+
localPluginDir: opts.localPluginDir ?? DEFAULT_LOCAL_PLUGIN_DIR,
|
|
126
|
+
}));
|
|
127
|
+
}
|
|
128
|
+
catch (error) {
|
|
129
|
+
return rollbackStartup(error);
|
|
130
|
+
}
|
|
71
131
|
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
72
132
|
if (opts.uiMode === "static") {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
133
|
+
try {
|
|
134
|
+
const candidates = [
|
|
135
|
+
path.resolve(__dirname, "../../ui-dist"),
|
|
136
|
+
path.resolve(__dirname, "../../../ui/dist"),
|
|
137
|
+
];
|
|
138
|
+
const uiDist = candidates.find((candidate) => fs.existsSync(path.join(candidate, "index.html")));
|
|
139
|
+
if (uiDist) {
|
|
140
|
+
const indexHtml = applyUiBranding(fs.readFileSync(path.join(uiDist, "index.html"), "utf-8"));
|
|
141
|
+
app.use(express.static(uiDist));
|
|
142
|
+
app.get(/.*/, (_req, res) => {
|
|
143
|
+
res.status(200).set("Content-Type", "text/html").end(indexHtml);
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
console.warn("[rudder] UI dist not found; running in API-only mode");
|
|
148
|
+
}
|
|
84
149
|
}
|
|
85
|
-
|
|
86
|
-
|
|
150
|
+
catch (error) {
|
|
151
|
+
return rollbackStartup(error);
|
|
87
152
|
}
|
|
88
153
|
}
|
|
89
154
|
if (opts.uiMode === "vite-dev") {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
155
|
+
try {
|
|
156
|
+
const uiRoot = path.resolve(__dirname, "../../../ui");
|
|
157
|
+
const hmrPort = resolveViteHmrPort(opts.serverPort);
|
|
158
|
+
const { createServer: createViteServer } = await import("vite");
|
|
159
|
+
const vite = await createViteServer({
|
|
160
|
+
root: uiRoot,
|
|
161
|
+
appType: "custom",
|
|
162
|
+
server: {
|
|
163
|
+
middlewareMode: true,
|
|
164
|
+
hmr: {
|
|
165
|
+
host: opts.bindHost,
|
|
166
|
+
port: hmrPort,
|
|
167
|
+
clientPort: hmrPort,
|
|
168
|
+
},
|
|
169
|
+
allowedHosts: privateHostnameGateEnabled ? Array.from(privateHostnameAllowSet) : undefined,
|
|
102
170
|
},
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
}
|
|
117
|
-
}
|
|
171
|
+
});
|
|
172
|
+
closeVite = () => vite.close();
|
|
173
|
+
app.use(vite.middlewares);
|
|
174
|
+
app.get(/.*/, async (req, res, next) => {
|
|
175
|
+
try {
|
|
176
|
+
const templatePath = path.resolve(uiRoot, "index.html");
|
|
177
|
+
const template = fs.readFileSync(templatePath, "utf-8");
|
|
178
|
+
const html = applyUiBranding(await vite.transformIndexHtml(req.originalUrl, template));
|
|
179
|
+
res.status(200).set({ "Content-Type": "text/html" }).end(html);
|
|
180
|
+
}
|
|
181
|
+
catch (err) {
|
|
182
|
+
next(err);
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
catch (error) {
|
|
187
|
+
return rollbackStartup(error);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
try {
|
|
191
|
+
app.use(errorHandler);
|
|
192
|
+
return { app, close };
|
|
193
|
+
}
|
|
194
|
+
catch (error) {
|
|
195
|
+
return rollbackStartup(error);
|
|
118
196
|
}
|
|
119
|
-
app.use(errorHandler);
|
|
120
|
-
return app;
|
|
121
197
|
}
|
|
122
198
|
//# sourceMappingURL=create-http-app.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-http-app.js","sourceRoot":"","sources":["../../src/bootstrap/create-http-app.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAC/G,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"create-http-app.js","sourceRoot":"","sources":["../../src/bootstrap/create-http-app.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-host-runtime.d.ts","sourceRoot":"","sources":["../../src/bootstrap/plugin-host-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAgBvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"plugin-host-runtime.d.ts","sourceRoot":"","sources":["../../src/bootstrap/plugin-host-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAgBvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkLrE;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -65,17 +65,49 @@ export function createPluginHostRuntime(db, opts) {
|
|
|
65
65
|
},
|
|
66
66
|
});
|
|
67
67
|
let devWatcher = null;
|
|
68
|
+
let started = false;
|
|
69
|
+
let startupWork = null;
|
|
70
|
+
let closeInFlight = null;
|
|
71
|
+
const reportDisposeFailure = (name, error) => {
|
|
72
|
+
logger.warn({ err: error, resource: name }, "Failed to close plugin host resource");
|
|
73
|
+
};
|
|
74
|
+
const disposeResource = async (name, dispose) => {
|
|
75
|
+
try {
|
|
76
|
+
await dispose();
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
reportDisposeFailure(name, error);
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
const disposeResourceSync = (name, dispose) => {
|
|
83
|
+
try {
|
|
84
|
+
dispose();
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
reportDisposeFailure(name, error);
|
|
88
|
+
}
|
|
89
|
+
};
|
|
68
90
|
const disposeHostRuntime = () => {
|
|
69
|
-
devWatcher?.close();
|
|
70
|
-
|
|
71
|
-
|
|
91
|
+
void devWatcher?.close().catch((error) => reportDisposeFailure("plugin-dev-watcher", error));
|
|
92
|
+
devWatcher = null;
|
|
93
|
+
disposeResourceSync("plugin-job-coordinator", () => jobCoordinator.stop());
|
|
94
|
+
disposeResourceSync("plugin-job-scheduler", () => scheduler.stop());
|
|
95
|
+
disposeResourceSync("plugin-tool-dispatcher", () => toolDispatcher.teardown());
|
|
96
|
+
disposeResourceSync("plugin-host-services", () => hostServiceCleanup.disposeAll());
|
|
97
|
+
disposeResourceSync("plugin-host-service-listeners", () => hostServiceCleanup.teardown());
|
|
72
98
|
};
|
|
73
|
-
|
|
99
|
+
const onProcessExit = () => {
|
|
74
100
|
disposeHostRuntime();
|
|
75
|
-
}
|
|
76
|
-
|
|
101
|
+
};
|
|
102
|
+
const onProcessBeforeExit = () => {
|
|
77
103
|
void flushPluginLogBuffer();
|
|
78
|
-
}
|
|
104
|
+
};
|
|
105
|
+
const removeProcessListeners = () => {
|
|
106
|
+
process.removeListener("exit", onProcessExit);
|
|
107
|
+
process.removeListener("beforeExit", onProcessBeforeExit);
|
|
108
|
+
};
|
|
109
|
+
process.once("exit", onProcessExit);
|
|
110
|
+
process.once("beforeExit", onProcessBeforeExit);
|
|
79
111
|
return {
|
|
80
112
|
loader,
|
|
81
113
|
scheduler,
|
|
@@ -83,38 +115,64 @@ export function createPluginHostRuntime(db, opts) {
|
|
|
83
115
|
workerManager,
|
|
84
116
|
toolDispatcher,
|
|
85
117
|
async start() {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
118
|
+
if (closeInFlight) {
|
|
119
|
+
throw new Error("Cannot start plugin host runtime after close has started");
|
|
120
|
+
}
|
|
121
|
+
if (started)
|
|
122
|
+
return;
|
|
123
|
+
started = true;
|
|
124
|
+
try {
|
|
125
|
+
jobCoordinator.start();
|
|
126
|
+
scheduler.start();
|
|
127
|
+
devWatcher = opts.uiMode === "vite-dev"
|
|
128
|
+
? createPluginDevWatcher(lifecycle, async (pluginId) => (await pluginRegistry.getById(pluginId))?.packagePath ?? null)
|
|
129
|
+
: null;
|
|
130
|
+
}
|
|
131
|
+
catch (error) {
|
|
132
|
+
started = false;
|
|
133
|
+
throw error;
|
|
134
|
+
}
|
|
135
|
+
startupWork = Promise.resolve().then(async () => {
|
|
136
|
+
const [dispatcherResult, loadResult] = await Promise.allSettled([
|
|
137
|
+
toolDispatcher.initialize(),
|
|
138
|
+
loader.loadAll(),
|
|
139
|
+
]);
|
|
140
|
+
if (dispatcherResult.status === "rejected") {
|
|
141
|
+
logger.error({ err: dispatcherResult.reason }, "Failed to initialize plugin tool dispatcher");
|
|
142
|
+
}
|
|
143
|
+
if (loadResult.status === "rejected") {
|
|
144
|
+
logger.error({ err: loadResult.reason }, "Failed to load ready plugins on startup");
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
if (!loadResult.value)
|
|
96
148
|
return;
|
|
97
|
-
for (const loaded of
|
|
149
|
+
for (const loaded of loadResult.value.results) {
|
|
98
150
|
if (devWatcher && loaded.success && loaded.plugin.packagePath) {
|
|
99
151
|
devWatcher.watch(loaded.plugin.id, loaded.plugin.packagePath);
|
|
100
152
|
}
|
|
101
153
|
}
|
|
102
154
|
}).catch((err) => {
|
|
103
|
-
logger.error({ err }, "Failed to
|
|
155
|
+
logger.error({ err }, "Failed to finish plugin host startup work");
|
|
104
156
|
});
|
|
105
157
|
},
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
158
|
+
close() {
|
|
159
|
+
if (closeInFlight)
|
|
160
|
+
return closeInFlight;
|
|
161
|
+
removeProcessListeners();
|
|
162
|
+
closeInFlight = Promise.resolve().then(async () => {
|
|
163
|
+
const watcher = devWatcher;
|
|
164
|
+
devWatcher = null;
|
|
165
|
+
await disposeResource("plugin-dev-watcher", () => watcher?.close() ?? Promise.resolve());
|
|
166
|
+
await disposeResource("plugin-job-coordinator", () => jobCoordinator.stop());
|
|
167
|
+
await disposeResource("plugin-job-scheduler", () => scheduler.stop());
|
|
168
|
+
await disposeResource("plugin-startup-work", () => startupWork ?? Promise.resolve());
|
|
169
|
+
await disposeResource("plugin-loader", () => loader.shutdownAll());
|
|
170
|
+
await disposeResource("plugin-tool-dispatcher", () => toolDispatcher.teardown());
|
|
171
|
+
await disposeResource("plugin-host-services", () => hostServiceCleanup.disposeAll());
|
|
172
|
+
await disposeResource("plugin-host-service-listeners", () => hostServiceCleanup.teardown());
|
|
173
|
+
await disposeResource("plugin-log-buffer", () => flushPluginLogBuffer());
|
|
174
|
+
});
|
|
175
|
+
return closeInFlight;
|
|
118
176
|
},
|
|
119
177
|
};
|
|
120
178
|
}
|