@rudderhq/server 0.7.2 → 0.7.4
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/registry.d.ts.map +1 -1
- package/dist/agent-runtimes/registry.js +0 -2
- package/dist/agent-runtimes/registry.js.map +1 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +1 -5
- package/dist/app.js.map +1 -1
- package/dist/bootstrap/create-http-app.d.ts +1 -2
- package/dist/bootstrap/create-http-app.d.ts.map +1 -1
- package/dist/bootstrap/create-http-app.js +13 -12
- package/dist/bootstrap/create-http-app.js.map +1 -1
- package/dist/bootstrap/register-api-routes.d.ts +1 -2
- package/dist/bootstrap/register-api-routes.d.ts.map +1 -1
- package/dist/bootstrap/register-api-routes.js +22 -4
- package/dist/bootstrap/register-api-routes.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/middleware/logger.js +2 -2
- package/dist/middleware/logger.js.map +1 -1
- package/dist/middleware/logger.test.js +26 -10
- package/dist/middleware/logger.test.js.map +1 -1
- package/dist/redaction.d.ts +4 -0
- package/dist/redaction.d.ts.map +1 -1
- package/dist/redaction.js +15 -0
- package/dist/redaction.js.map +1 -1
- package/dist/routes/agent-issue-creation.d.ts +25 -0
- package/dist/routes/agent-issue-creation.d.ts.map +1 -0
- package/dist/routes/agent-issue-creation.js +201 -0
- package/dist/routes/agent-issue-creation.js.map +1 -0
- package/dist/routes/app-builder.d.ts +3 -1
- package/dist/routes/app-builder.d.ts.map +1 -1
- package/dist/routes/app-builder.js +30 -22
- package/dist/routes/app-builder.js.map +1 -1
- package/dist/routes/approvals.d.ts.map +1 -1
- package/dist/routes/approvals.js +36 -9
- package/dist/routes/approvals.js.map +1 -1
- package/dist/routes/chats.d.ts.map +1 -1
- package/dist/routes/chats.js +23 -4
- package/dist/routes/chats.js.map +1 -1
- package/dist/routes/chats.preflight.d.ts +2 -1
- package/dist/routes/chats.preflight.d.ts.map +1 -1
- package/dist/routes/chats.preflight.js +7 -0
- package/dist/routes/chats.preflight.js.map +1 -1
- package/dist/routes/chats.stream-routes.d.ts.map +1 -1
- package/dist/routes/chats.stream-routes.js +14 -3
- package/dist/routes/chats.stream-routes.js.map +1 -1
- package/dist/routes/chats.stream-support.d.ts.map +1 -1
- package/dist/routes/chats.stream-support.js +8 -0
- package/dist/routes/chats.stream-support.js.map +1 -1
- package/dist/routes/computer.d.ts +30 -0
- package/dist/routes/computer.d.ts.map +1 -0
- package/dist/routes/computer.js +231 -0
- package/dist/routes/computer.js.map +1 -0
- package/dist/routes/goals.d.ts.map +1 -1
- package/dist/routes/goals.js +176 -27
- package/dist/routes/goals.js.map +1 -1
- package/dist/routes/health.d.ts.map +1 -1
- package/dist/routes/health.js +2 -0
- package/dist/routes/health.js.map +1 -1
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +1 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/instance-settings.d.ts.map +1 -1
- package/dist/routes/instance-settings.js +3 -0
- package/dist/routes/instance-settings.js.map +1 -1
- package/dist/routes/issues.comments-attachments.d.ts.map +1 -1
- package/dist/routes/issues.comments-attachments.js +90 -8
- package/dist/routes/issues.comments-attachments.js.map +1 -1
- package/dist/routes/issues.d.ts.map +1 -1
- package/dist/routes/issues.js +14 -2
- package/dist/routes/issues.js.map +1 -1
- package/dist/routes/issues.mutations.d.ts.map +1 -1
- package/dist/routes/issues.mutations.js +206 -52
- package/dist/routes/issues.mutations.js.map +1 -1
- package/dist/routes/managed-mcp-runtime.d.ts.map +1 -1
- package/dist/routes/managed-mcp-runtime.js +109 -7
- package/dist/routes/managed-mcp-runtime.js.map +1 -1
- package/dist/routes/organization-skills.d.ts.map +1 -1
- package/dist/routes/organization-skills.js +23 -1
- package/dist/routes/organization-skills.js.map +1 -1
- package/dist/routes/requests.d.ts +3 -0
- package/dist/routes/requests.d.ts.map +1 -0
- package/dist/routes/requests.js +122 -0
- package/dist/routes/requests.js.map +1 -0
- package/dist/routes/rudder-plugins.d.ts +4 -0
- package/dist/routes/rudder-plugins.d.ts.map +1 -0
- package/dist/routes/rudder-plugins.js +203 -0
- package/dist/routes/rudder-plugins.js.map +1 -0
- package/dist/services/activity-log.d.ts +0 -3
- package/dist/services/activity-log.d.ts.map +1 -1
- package/dist/services/activity-log.js +19 -42
- package/dist/services/activity-log.js.map +1 -1
- package/dist/services/activity.d.ts +3 -3
- package/dist/services/agent-issue-creation.d.ts +344 -0
- package/dist/services/agent-issue-creation.d.ts.map +1 -0
- package/dist/services/agent-issue-creation.js +675 -0
- package/dist/services/agent-issue-creation.js.map +1 -0
- package/dist/services/agent-run-context.d.ts.map +1 -1
- package/dist/services/agent-run-context.js +10 -4
- package/dist/services/agent-run-context.js.map +1 -1
- package/dist/services/agents.d.ts +14 -14
- package/dist/services/agents.d.ts.map +1 -1
- package/dist/services/agents.js +2 -1
- package/dist/services/agents.js.map +1 -1
- package/dist/services/app-builder.d.ts.map +1 -1
- package/dist/services/app-builder.js +24 -3
- package/dist/services/app-builder.js.map +1 -1
- package/dist/services/chat-agent-runs.d.ts +1 -0
- package/dist/services/chat-agent-runs.d.ts.map +1 -1
- package/dist/services/chat-agent-runs.js +1 -0
- 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 +3 -1
- package/dist/services/chat-assistant.helpers.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.js +25 -0
- package/dist/services/chat-assistant.helpers.js.map +1 -1
- package/dist/services/chat-assistant.js +57 -11
- package/dist/services/chat-assistant.js.map +1 -1
- package/dist/services/chat-generation-protocol.test.js +2 -2
- package/dist/services/chat-generation-protocol.test.js.map +1 -1
- package/dist/services/chat-queued-message-materialization.d.ts +1 -1
- package/dist/services/chats.create.d.ts +2 -2
- package/dist/services/chats.create.d.ts.map +1 -1
- package/dist/services/chats.d.ts +15 -15
- package/dist/services/chats.d.ts.map +1 -1
- package/dist/services/chats.helpers.d.ts +2 -2
- package/dist/services/chats.helpers.d.ts.map +1 -1
- package/dist/services/chats.helpers.goal-context.test.d.ts +2 -0
- package/dist/services/chats.helpers.goal-context.test.d.ts.map +1 -0
- package/dist/services/chats.helpers.goal-context.test.js +40 -0
- package/dist/services/chats.helpers.goal-context.test.js.map +1 -0
- package/dist/services/chats.helpers.js +27 -2
- package/dist/services/chats.helpers.js.map +1 -1
- package/dist/services/chats.js.map +1 -1
- package/dist/services/computer-broker.d.ts +35 -0
- package/dist/services/computer-broker.d.ts.map +1 -0
- package/dist/services/computer-broker.js +211 -0
- package/dist/services/computer-broker.js.map +1 -0
- package/dist/services/computer-broker.test.d.ts +2 -0
- package/dist/services/computer-broker.test.d.ts.map +1 -0
- package/dist/services/computer-broker.test.js +70 -0
- package/dist/services/computer-broker.test.js.map +1 -0
- package/dist/services/computer-capability.d.ts +13 -0
- package/dist/services/computer-capability.d.ts.map +1 -0
- package/dist/services/computer-capability.js +11 -0
- package/dist/services/computer-capability.js.map +1 -0
- package/dist/services/computer-capability.test.d.ts +2 -0
- package/dist/services/computer-capability.test.d.ts.map +1 -0
- package/dist/services/computer-capability.test.js +27 -0
- package/dist/services/computer-capability.test.js.map +1 -0
- package/dist/services/finance.d.ts +2 -2
- package/dist/services/goals.d.ts +267 -244
- package/dist/services/goals.d.ts.map +1 -1
- package/dist/services/goals.js +1279 -297
- package/dist/services/goals.js.map +1 -1
- package/dist/services/index.d.ts +3 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +3 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/instance-settings.d.ts.map +1 -1
- package/dist/services/instance-settings.js +8 -3
- package/dist/services/instance-settings.js.map +1 -1
- package/dist/services/integrations/agent-integrations.d.ts +1 -1
- package/dist/services/issues.d.ts +86 -1
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.helpers.d.ts +4 -0
- package/dist/services/issues.helpers.d.ts.map +1 -1
- package/dist/services/issues.helpers.js +28 -6
- package/dist/services/issues.helpers.js.map +1 -1
- package/dist/services/issues.js +207 -127
- package/dist/services/issues.js.map +1 -1
- package/dist/services/knowledge-portability/organization-portability.files.d.ts +1 -1
- package/dist/services/knowledge-portability/organization-skills.catalog.d.ts +7 -1
- package/dist/services/knowledge-portability/organization-skills.catalog.d.ts.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.catalog.js +10 -0
- package/dist/services/knowledge-portability/organization-skills.catalog.js.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.d.ts +3 -1
- package/dist/services/knowledge-portability/organization-skills.d.ts.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.js +80 -12
- package/dist/services/knowledge-portability/organization-skills.js.map +1 -1
- package/dist/services/mcp/managed-bindings.d.ts.map +1 -1
- package/dist/services/mcp/managed-bindings.js +18 -2
- package/dist/services/mcp/managed-bindings.js.map +1 -1
- package/dist/services/mcp/managed-client.d.ts +15 -0
- package/dist/services/mcp/managed-client.d.ts.map +1 -1
- package/dist/services/mcp/managed-client.js +23 -1
- package/dist/services/mcp/managed-client.js.map +1 -1
- package/dist/services/mcp/managed-client.test.js +73 -9
- package/dist/services/mcp/managed-client.test.js.map +1 -1
- package/dist/services/messenger.d.ts +3 -3
- package/dist/services/messenger.d.ts.map +1 -1
- package/dist/services/messenger.js +201 -65
- package/dist/services/messenger.js.map +1 -1
- package/dist/services/orgs.d.ts.map +1 -1
- package/dist/services/orgs.js +3 -1
- package/dist/services/orgs.js.map +1 -1
- package/dist/services/product-analytics.d.ts +2 -2
- package/dist/services/requests.d.ts +919 -0
- package/dist/services/requests.d.ts.map +1 -0
- package/dist/services/requests.js +532 -0
- package/dist/services/requests.js.map +1 -0
- package/dist/services/rudder-plugins.d.ts +107 -0
- package/dist/services/rudder-plugins.d.ts.map +1 -0
- package/dist/services/rudder-plugins.js +1760 -0
- package/dist/services/rudder-plugins.js.map +1 -0
- package/dist/services/rudder-plugins.test.d.ts +2 -0
- package/dist/services/rudder-plugins.test.d.ts.map +1 -0
- package/dist/services/rudder-plugins.test.js +191 -0
- package/dist/services/rudder-plugins.test.js.map +1 -0
- package/dist/services/runtime-kernel/heartbeat.core.d.ts +1 -0
- package/dist/services/runtime-kernel/heartbeat.core.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.core.js +1 -1
- package/dist/services/runtime-kernel/heartbeat.core.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.d.ts +65 -0
- package/dist/services/runtime-kernel/heartbeat.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.execute.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.execute.js +21 -5
- package/dist/services/runtime-kernel/heartbeat.execute.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.js +320 -108
- package/dist/services/runtime-kernel/heartbeat.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.recovery.d.ts +1 -0
- package/dist/services/runtime-kernel/heartbeat.recovery.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.recovery.js +39 -4
- package/dist/services/runtime-kernel/heartbeat.recovery.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.sessions.js +1 -1
- package/dist/services/runtime-kernel/heartbeat.sessions.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.d.ts +14 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.js +46 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.wakeup.d.ts +1 -0
- package/dist/services/runtime-kernel/heartbeat.wakeup.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.wakeup.js +124 -6
- package/dist/services/runtime-kernel/heartbeat.wakeup.js.map +1 -1
- package/dist/services/workspace-runtime.services.d.ts +1 -1
- package/package.json +18 -18
- package/resources/bundled-skills/app-builder/SKILL.md +39 -9
- package/resources/bundled-skills/app-builder/assets/scaffold/app/globals.css +109 -16
- package/resources/bundled-skills/app-builder/assets/scaffold/components/contacts-workspace.tsx +176 -152
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/alert.tsx +12 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/badge.tsx +27 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/button.tsx +9 -7
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/card.tsx +15 -3
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/empty.tsx +18 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/field.tsx +23 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/input.tsx +1 -1
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/label.tsx +1 -1
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/separator.tsx +6 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/skeleton.tsx +6 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/components/ui/table.tsx +30 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/components.json +20 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/next-env.d.ts +1 -1
- package/resources/bundled-skills/app-builder/assets/scaffold/next.config.ts +19 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/package.json +2 -1
- package/resources/bundled-skills/app-builder/assets/scaffold/rudder.app.json +1 -1
- package/resources/bundled-skills/app-builder/assets/scaffold/rudder.ui.json +13 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/scripts/validate-rudder-ui.mjs +50 -0
- package/resources/bundled-skills/app-builder/assets/scaffold/tests/e2e/app.spec.ts +35 -1
- package/resources/bundled-skills/app-builder/evals/evals.json +2 -1
- package/resources/bundled-skills/app-builder/references/design-guidelines.md +19 -2
- package/resources/bundled-skills/app-builder/references/rudder-ui-preset.md +73 -0
- package/resources/bundled-skills/app-builder/references/scaffold-contract.md +12 -0
- package/resources/bundled-skills/app-builder/references/verification.md +6 -0
- package/resources/bundled-skills/app-builder/scripts/report-build-status.mjs +83 -0
- package/resources/bundled-skills/rudder-docs/SKILL.md +2 -2
- package/resources/bundled-skills/rudder-docs/evals/retrieval-authority-evals.json +40 -0
- package/resources/bundled-skills/rudder-docs/evals/trigger-evals.json +2 -2
- package/resources/bundled-skills/rudder-docs/references/api-reference.md +0 -2
- package/resources/bundled-skills/rudder-docs/references/cli-reference.md +7 -2
- package/resources/bundled-skills/rudder-docs/references/operating-practices.md +10 -6
- package/resources/bundled-skills/rudder-docs/references/plugin-authoring.md +38 -114
- package/resources/bundled-skills/rudder-docs/references/source-map.md +2 -0
- package/skills/app-builder/SKILL.md +39 -9
- package/skills/app-builder/assets/scaffold/app/globals.css +109 -16
- package/skills/app-builder/assets/scaffold/components/contacts-workspace.tsx +176 -152
- package/skills/app-builder/assets/scaffold/components/ui/alert.tsx +12 -0
- package/skills/app-builder/assets/scaffold/components/ui/badge.tsx +27 -0
- package/skills/app-builder/assets/scaffold/components/ui/button.tsx +9 -7
- package/skills/app-builder/assets/scaffold/components/ui/card.tsx +15 -3
- package/skills/app-builder/assets/scaffold/components/ui/empty.tsx +18 -0
- package/skills/app-builder/assets/scaffold/components/ui/field.tsx +23 -0
- package/skills/app-builder/assets/scaffold/components/ui/input.tsx +1 -1
- package/skills/app-builder/assets/scaffold/components/ui/label.tsx +1 -1
- package/skills/app-builder/assets/scaffold/components/ui/separator.tsx +6 -0
- package/skills/app-builder/assets/scaffold/components/ui/skeleton.tsx +6 -0
- package/skills/app-builder/assets/scaffold/components/ui/table.tsx +30 -0
- package/skills/app-builder/assets/scaffold/components.json +20 -0
- package/skills/app-builder/assets/scaffold/next-env.d.ts +1 -1
- package/skills/app-builder/assets/scaffold/next.config.ts +19 -0
- package/skills/app-builder/assets/scaffold/package.json +2 -1
- package/skills/app-builder/assets/scaffold/rudder.app.json +1 -1
- package/skills/app-builder/assets/scaffold/rudder.ui.json +13 -0
- package/skills/app-builder/assets/scaffold/scripts/validate-rudder-ui.mjs +50 -0
- package/skills/app-builder/assets/scaffold/tests/e2e/app.spec.ts +35 -1
- package/skills/app-builder/evals/evals.json +2 -1
- package/skills/app-builder/references/design-guidelines.md +19 -2
- package/skills/app-builder/references/rudder-ui-preset.md +73 -0
- package/skills/app-builder/references/scaffold-contract.md +12 -0
- package/skills/app-builder/references/verification.md +6 -0
- package/skills/app-builder/scripts/report-build-status.mjs +83 -0
- package/skills/rudder-docs/SKILL.md +2 -2
- package/skills/rudder-docs/evals/retrieval-authority-evals.json +40 -0
- package/skills/rudder-docs/evals/trigger-evals.json +2 -2
- package/skills/rudder-docs/references/api-reference.md +0 -2
- package/skills/rudder-docs/references/cli-reference.md +7 -2
- package/skills/rudder-docs/references/operating-practices.md +10 -6
- package/skills/rudder-docs/references/plugin-authoring.md +38 -114
- package/skills/rudder-docs/references/source-map.md +2 -0
- package/ui-dist/assets/{LibraryLiveSurface-cHCJmmsl.js → LibraryLiveSurface-D4uCo0l0.js} +1 -1
- package/ui-dist/assets/{abnfDiagram-VRR7QNED-BORJvkew.js → abnfDiagram-VRR7QNED-FF2qcR6A.js} +1 -1
- package/ui-dist/assets/addon-fit-4gL7JXzc.js +1 -0
- package/ui-dist/assets/{arc-DPUzhx87.js → arc-D5pLjh6B.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-ZJ3FMSHR-Bz_hY8LM.js → architectureDiagram-ZJ3FMSHR-BvqY-HXg.js} +1 -1
- package/ui-dist/assets/{blockDiagram-677ZJIJ3-Bq1X3YkP.js → blockDiagram-677ZJIJ3-BU6ZbJ0s.js} +1 -1
- package/ui-dist/assets/{c4Diagram-LMCZKHZV-BawEM9Pc.js → c4Diagram-LMCZKHZV-Cl5Gsovj.js} +1 -1
- package/ui-dist/assets/channel-HcmprA3I.js +1 -0
- package/ui-dist/assets/{chunk-2Q5K7J3B-D0D5ZOaA.js → chunk-2Q5K7J3B-4a2agt_p.js} +1 -1
- package/ui-dist/assets/{chunk-32BRIVSS-T90P7lug.js → chunk-32BRIVSS-CF0oOO2T.js} +1 -1
- package/ui-dist/assets/{chunk-5VM5RSS4-jcAERTgh.js → chunk-5VM5RSS4-CsSq2zX2.js} +1 -1
- package/ui-dist/assets/{chunk-EX3LRPZG-t9-JXwnR.js → chunk-EX3LRPZG-B6riETVZ.js} +1 -1
- package/ui-dist/assets/{chunk-JWPE2WC7-hqgD1saC.js → chunk-JWPE2WC7-S-p1xu0r.js} +1 -1
- package/ui-dist/assets/{chunk-MOJQB5TN-BsSUoYzd.js → chunk-MOJQB5TN-mVE4v_LV.js} +1 -1
- package/ui-dist/assets/{chunk-RYQCIY6F-YcdDh2Zn.js → chunk-RYQCIY6F-CElbgpgs.js} +1 -1
- package/ui-dist/assets/{chunk-V7JOEXUC-ChFyH9Su.js → chunk-V7JOEXUC-8XM3povP.js} +1 -1
- package/ui-dist/assets/{chunk-VR4S4FIN-BjVK8IyX.js → chunk-VR4S4FIN-LrThp3ht.js} +1 -1
- package/ui-dist/assets/{chunk-XXDRQBXY-D-TvO9vT.js → chunk-XXDRQBXY-D38vLb4t.js} +1 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-Dpe8LaLf.js +1 -0
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-Dpe8LaLf.js +1 -0
- package/ui-dist/assets/{cose-bilkent-JH36ORCC-DBwhASJG.js → cose-bilkent-JH36ORCC-CmpZMaDV.js} +1 -1
- package/ui-dist/assets/{cynefin-VYW2F7L2-SlCRmwl2.js → cynefin-VYW2F7L2-D3RnbBvI.js} +1 -1
- package/ui-dist/assets/{cynefinDiagram-TSTJHNR4-DImV6N_p.js → cynefinDiagram-TSTJHNR4-DZTcUojp.js} +1 -1
- package/ui-dist/assets/{dagre-VKFMJZFB-FH4Wv8Zn.js → dagre-VKFMJZFB-6jXSDi0S.js} +1 -1
- package/ui-dist/assets/{diagram-FQU43EPY-CrZvQjId.js → diagram-FQU43EPY-DIMm3mfS.js} +1 -1
- package/ui-dist/assets/{diagram-G47NLZAW-B7IGl_T3.js → diagram-G47NLZAW-Cyo22v0_.js} +1 -1
- package/ui-dist/assets/{diagram-NH7WQ7WH-CB4i7H1a.js → diagram-NH7WQ7WH-CHDV0nSL.js} +1 -1
- package/ui-dist/assets/{diagram-OA4YK3LP-DNyWPYY9.js → diagram-OA4YK3LP-Jijx9vQO.js} +1 -1
- package/ui-dist/assets/{diagram-WEI45ONY-BAhxbhpi.js → diagram-WEI45ONY-CcL19HLE.js} +1 -1
- package/ui-dist/assets/{ebnfDiagram-CCIWWBDH-ClXtQ9qt.js → ebnfDiagram-CCIWWBDH-D94h-RFQ.js} +1 -1
- package/ui-dist/assets/{erDiagram-Q63AITRT-DGXiMYfn.js → erDiagram-Q63AITRT-B3ypUGZX.js} +1 -1
- package/ui-dist/assets/{flowDiagram-23GEKE2U-CdZ-02zc.js → flowDiagram-23GEKE2U-DjCT6Y1o.js} +1 -1
- package/ui-dist/assets/{ganttDiagram-NO4QXBWP-TxhzNpta.js → ganttDiagram-NO4QXBWP-C3QVhTc9.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-IHSO6WYX-D6Q_w6wR.js → gitGraphDiagram-IHSO6WYX-D0trBzU5.js} +1 -1
- package/ui-dist/assets/{graph-CxNmbpl9.js → graph-D1zFmVUP.js} +1 -1
- package/ui-dist/assets/{index-Cx6oIZPm.js → index-B0GEsWui.js} +568 -593
- package/ui-dist/assets/{index-BA9tMBhO.js → index-B8bxQLfN.js} +1 -1
- package/ui-dist/assets/{index-C_nwI4Yj.js → index-BFktZ2tu.js} +1 -1
- package/ui-dist/assets/index-BT7dphT4.css +32 -0
- package/ui-dist/assets/{index-BoTz5S-X.js → index-Bk_yesiO.js} +1 -1
- package/ui-dist/assets/{index-CXnqg1Oq.js → index-BwutQLG1.js} +1 -1
- package/ui-dist/assets/{index-AkhgKOxC.js → index-CB4zr_Ku.js} +1 -1
- package/ui-dist/assets/{index-Rau2cGm0.js → index-CC89UPa-.js} +1 -1
- package/ui-dist/assets/{index-kbWUQ1um.js → index-CFWOO6yn.js} +1 -1
- package/ui-dist/assets/{index-DU2LI7f9.js → index-CK8u9b07.js} +1 -1
- package/ui-dist/assets/{index-C12QC1Ex.js → index-CRolpP90.js} +1 -1
- package/ui-dist/assets/{index-Bxz75ICF.js → index-CiCRRUVV.js} +1 -1
- package/ui-dist/assets/{index-Do78GymY.js → index-D8JG-IU9.js} +1 -1
- package/ui-dist/assets/{index-CW21qWFm.js → index-DKCiVvJo.js} +1 -1
- package/ui-dist/assets/{index-BujwWE3j.js → index-G2yfKEf_.js} +1 -1
- package/ui-dist/assets/{index-BQ87dGIq.js → index-or2C22bw.js} +1 -1
- package/ui-dist/assets/{infoDiagram-FWYZ7A6U-CnJd4-Jq.js → infoDiagram-FWYZ7A6U-Co0nkcV4.js} +1 -1
- package/ui-dist/assets/{ishikawaDiagram-FXEZZL3T-Bq-qc3pD.js → ishikawaDiagram-FXEZZL3T-CkIg1Jdu.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-5HDEW3XC-NSmpUGUA.js → journeyDiagram-5HDEW3XC-AYUT6JuJ.js} +1 -1
- package/ui-dist/assets/{kanban-definition-HUTT4EX6-D7pgWtfA.js → kanban-definition-HUTT4EX6-C3H2XW08.js} +1 -1
- package/ui-dist/assets/{layout-BRuo6LWe.js → layout-sZWyqNOu.js} +1 -1
- package/ui-dist/assets/{linear-CkaWI9Nd.js → linear-BLTYou8N.js} +1 -1
- package/ui-dist/assets/{map-CgA6tTpZ.js → map-zKBdHkX8.js} +1 -1
- package/ui-dist/assets/{mermaid.core-DrXOt-P6.js → mermaid.core-DbjdFip8.js} +4 -4
- package/ui-dist/assets/{mindmap-definition-LN4V7U3C-D9ImeWBe.js → mindmap-definition-LN4V7U3C-DcDNQ4GQ.js} +1 -1
- package/ui-dist/assets/{pegDiagram-2B236MQR-Cq-zZ_zz.js → pegDiagram-2B236MQR-BGq1PngU.js} +1 -1
- package/ui-dist/assets/{pieDiagram-ENE6RG2P-FgNgy726.js → pieDiagram-ENE6RG2P-BfXWRzNb.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-ABIIQ3AL-BxQbmGmi.js → quadrantDiagram-ABIIQ3AL-AYMVAbo1.js} +1 -1
- package/ui-dist/assets/{railroadDiagram-RFXS5EU6-CrpbkPH2.js → railroadDiagram-RFXS5EU6-B0PoG0Ih.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-TGXJPOKE-DQ-65ZW6.js → requirementDiagram-TGXJPOKE-Cuuu9wfw.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-HTMAVEWB-Bom0lMZm.js → sankeyDiagram-HTMAVEWB-BceAc42f.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-DBY2YBRQ-C1MSDLDj.js → sequenceDiagram-DBY2YBRQ-cqJ71-Rw.js} +1 -1
- package/ui-dist/assets/{sizeCapture-X5ZJPWSS-Bn1vxebD.js → sizeCapture-X5ZJPWSS-DQ6MibbA.js} +1 -1
- package/ui-dist/assets/{stateDiagram-2N3HPSRC-GRRQpmzI.js → stateDiagram-2N3HPSRC-Bdl-XY7t.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-Cjj7yPIO.js +1 -0
- package/ui-dist/assets/{swimlanes-5IMT3BWC-BcOOCZ4q.js → swimlanes-5IMT3BWC-Dpo2HDtE.js} +2 -2
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-CPmIkNCu.js +8 -0
- package/ui-dist/assets/{timeline-definition-FHXFAJF6-gi6amswh.js → timeline-definition-FHXFAJF6-BzmJ-xnC.js} +1 -1
- package/ui-dist/assets/{vennDiagram-L72KCM5P-B9uqeyQt.js → vennDiagram-L72KCM5P-BF2EI7vn.js} +1 -1
- package/ui-dist/assets/{wardleyDiagram-EHGQE667-BnqWAMiE.js → wardleyDiagram-EHGQE667-DM65x1i1.js} +1 -1
- package/ui-dist/assets/xterm-DZP7bLZ5.js +9 -0
- package/ui-dist/assets/{xychartDiagram-FW5EYKEG-BJXKltIN.js → xychartDiagram-FW5EYKEG-3Q2t9pdU.js} +1 -1
- package/ui-dist/index.html +2 -2
- package/dist/bootstrap/plugin-host-runtime.d.ts +0 -116
- package/dist/bootstrap/plugin-host-runtime.d.ts.map +0 -1
- package/dist/bootstrap/plugin-host-runtime.js +0 -179
- package/dist/bootstrap/plugin-host-runtime.js.map +0 -1
- package/dist/bundled-plugins/plugin-linear/README.md +0 -22
- package/dist/bundled-plugins/plugin-linear/dist/manifest.js +0 -183
- package/dist/bundled-plugins/plugin-linear/dist/manifest.js.map +0 -7
- package/dist/bundled-plugins/plugin-linear/dist/ui/index.js +0 -1285
- package/dist/bundled-plugins/plugin-linear/dist/ui/index.js.map +0 -7
- package/dist/bundled-plugins/plugin-linear/dist/worker.js +0 -10699
- package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +0 -7
- package/dist/bundled-plugins/plugin-linear/package.json +0 -42
- package/dist/routes/plugin-ui-static.d.ts +0 -70
- package/dist/routes/plugin-ui-static.d.ts.map +0 -1
- package/dist/routes/plugin-ui-static.js +0 -375
- package/dist/routes/plugin-ui-static.js.map +0 -1
- package/dist/routes/plugins.d.ts +0 -120
- package/dist/routes/plugins.d.ts.map +0 -1
- package/dist/routes/plugins.js +0 -1125
- package/dist/routes/plugins.js.map +0 -1
- package/dist/routes/plugins.operations-routes.d.ts +0 -28
- package/dist/routes/plugins.operations-routes.d.ts.map +0 -1
- package/dist/routes/plugins.operations-routes.js +0 -720
- package/dist/routes/plugins.operations-routes.js.map +0 -1
- package/dist/services/plugin-capability-validator.d.ts +0 -108
- package/dist/services/plugin-capability-validator.d.ts.map +0 -1
- package/dist/services/plugin-capability-validator.js +0 -268
- package/dist/services/plugin-capability-validator.js.map +0 -1
- package/dist/services/plugin-config-validator.d.ts +0 -26
- package/dist/services/plugin-config-validator.d.ts.map +0 -1
- package/dist/services/plugin-config-validator.js +0 -41
- package/dist/services/plugin-config-validator.js.map +0 -1
- package/dist/services/plugin-dev-watcher.d.ts +0 -47
- package/dist/services/plugin-dev-watcher.d.ts.map +0 -1
- package/dist/services/plugin-dev-watcher.js +0 -275
- package/dist/services/plugin-dev-watcher.js.map +0 -1
- package/dist/services/plugin-event-bus.d.ts +0 -149
- package/dist/services/plugin-event-bus.d.ts.map +0 -1
- package/dist/services/plugin-event-bus.js +0 -258
- package/dist/services/plugin-event-bus.js.map +0 -1
- package/dist/services/plugin-host-service-cleanup.d.ts +0 -14
- package/dist/services/plugin-host-service-cleanup.d.ts.map +0 -1
- package/dist/services/plugin-host-service-cleanup.js +0 -37
- package/dist/services/plugin-host-service-cleanup.js.map +0 -1
- package/dist/services/plugin-host-services.d.ts +0 -13
- package/dist/services/plugin-host-services.d.ts.map +0 -1
- package/dist/services/plugin-host-services.js +0 -933
- package/dist/services/plugin-host-services.js.map +0 -1
- package/dist/services/plugin-job-coordinator.d.ts +0 -81
- package/dist/services/plugin-job-coordinator.d.ts.map +0 -1
- package/dist/services/plugin-job-coordinator.js +0 -172
- package/dist/services/plugin-job-coordinator.js.map +0 -1
- package/dist/services/plugin-job-scheduler.d.ts +0 -163
- package/dist/services/plugin-job-scheduler.d.ts.map +0 -1
- package/dist/services/plugin-job-scheduler.js +0 -452
- package/dist/services/plugin-job-scheduler.js.map +0 -1
- package/dist/services/plugin-job-store.d.ts +0 -208
- package/dist/services/plugin-job-store.d.ts.map +0 -1
- package/dist/services/plugin-job-store.js +0 -350
- package/dist/services/plugin-job-store.js.map +0 -1
- package/dist/services/plugin-lifecycle.d.ts +0 -240
- package/dist/services/plugin-lifecycle.d.ts.map +0 -1
- package/dist/services/plugin-lifecycle.js +0 -439
- package/dist/services/plugin-lifecycle.js.map +0 -1
- package/dist/services/plugin-loader.core.d.ts +0 -40
- package/dist/services/plugin-loader.core.d.ts.map +0 -1
- package/dist/services/plugin-loader.core.js +0 -879
- package/dist/services/plugin-loader.core.js.map +0 -1
- package/dist/services/plugin-loader.d.ts +0 -30
- package/dist/services/plugin-loader.d.ts.map +0 -1
- package/dist/services/plugin-loader.helpers.d.ts +0 -495
- package/dist/services/plugin-loader.helpers.d.ts.map +0 -1
- package/dist/services/plugin-loader.helpers.js +0 -238
- package/dist/services/plugin-loader.helpers.js.map +0 -1
- package/dist/services/plugin-loader.js +0 -30
- package/dist/services/plugin-loader.js.map +0 -1
- package/dist/services/plugin-loader.worker-paths.d.ts +0 -37
- package/dist/services/plugin-loader.worker-paths.d.ts.map +0 -1
- package/dist/services/plugin-loader.worker-paths.js +0 -62
- package/dist/services/plugin-loader.worker-paths.js.map +0 -1
- package/dist/services/plugin-log-retention.d.ts +0 -20
- package/dist/services/plugin-log-retention.d.ts.map +0 -1
- package/dist/services/plugin-log-retention.js +0 -63
- package/dist/services/plugin-log-retention.js.map +0 -1
- package/dist/services/plugin-manifest-validator.d.ts +0 -90
- package/dist/services/plugin-manifest-validator.d.ts.map +0 -1
- package/dist/services/plugin-manifest-validator.js +0 -72
- package/dist/services/plugin-manifest-validator.js.map +0 -1
- package/dist/services/plugin-registry.d.ts +0 -2542
- package/dist/services/plugin-registry.d.ts.map +0 -1
- package/dist/services/plugin-registry.js +0 -536
- package/dist/services/plugin-registry.js.map +0 -1
- package/dist/services/plugin-runtime-sandbox.d.ts +0 -40
- package/dist/services/plugin-runtime-sandbox.d.ts.map +0 -1
- package/dist/services/plugin-runtime-sandbox.js +0 -154
- package/dist/services/plugin-runtime-sandbox.js.map +0 -1
- package/dist/services/plugin-secrets-handler.d.ts +0 -81
- package/dist/services/plugin-secrets-handler.d.ts.map +0 -1
- package/dist/services/plugin-secrets-handler.js +0 -275
- package/dist/services/plugin-secrets-handler.js.map +0 -1
- package/dist/services/plugin-state-store.d.ts +0 -92
- package/dist/services/plugin-state-store.d.ts.map +0 -1
- package/dist/services/plugin-state-store.js +0 -190
- package/dist/services/plugin-state-store.js.map +0 -1
- package/dist/services/plugin-stream-bus.d.ts +0 -29
- package/dist/services/plugin-stream-bus.d.ts.map +0 -1
- package/dist/services/plugin-stream-bus.js +0 -48
- package/dist/services/plugin-stream-bus.js.map +0 -1
- package/dist/services/plugin-tool-dispatcher.d.ts +0 -180
- package/dist/services/plugin-tool-dispatcher.d.ts.map +0 -1
- package/dist/services/plugin-tool-dispatcher.js +0 -224
- package/dist/services/plugin-tool-dispatcher.js.map +0 -1
- package/dist/services/plugin-tool-registry.d.ts +0 -192
- package/dist/services/plugin-tool-registry.d.ts.map +0 -1
- package/dist/services/plugin-tool-registry.js +0 -224
- package/dist/services/plugin-tool-registry.js.map +0 -1
- package/dist/services/plugin-worker-manager.d.ts +0 -260
- package/dist/services/plugin-worker-manager.d.ts.map +0 -1
- package/dist/services/plugin-worker-manager.js +0 -836
- package/dist/services/plugin-worker-manager.js.map +0 -1
- package/ui-dist/assets/channel-C08AyYJr.js +0 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-BIXq6fec.js +0 -1
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-BIXq6fec.js +0 -1
- package/ui-dist/assets/index-BmXb0yC1.css +0 -1
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-KvSJhiLM.js +0 -1
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-Cr92NnJ4.js +0 -8
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-host-services.js","sourceRoot":"","sources":["../../src/services/plugin-host-services.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PluginJobCoordinator — bridges the plugin lifecycle manager with the
|
|
3
|
-
* job scheduler and job store.
|
|
4
|
-
*
|
|
5
|
-
* This service listens to lifecycle events and performs the corresponding
|
|
6
|
-
* scheduler and job store operations:
|
|
7
|
-
*
|
|
8
|
-
* - **plugin.loaded** → sync job declarations from manifest, then register
|
|
9
|
-
* the plugin with the scheduler (computes `nextRunAt` for active jobs).
|
|
10
|
-
*
|
|
11
|
-
* - **plugin.disabled / plugin.unloaded** → unregister the plugin from the
|
|
12
|
-
* scheduler (cancels in-flight runs, clears tracking state).
|
|
13
|
-
*
|
|
14
|
-
* ## Why a separate coordinator?
|
|
15
|
-
*
|
|
16
|
-
* The lifecycle manager, scheduler, and job store are independent services
|
|
17
|
-
* with clean single-responsibility boundaries. The coordinator provides
|
|
18
|
-
* the "glue" between them without adding coupling. This pattern is used
|
|
19
|
-
* throughout Rudder (e.g. heartbeat service coordinates timers + runs).
|
|
20
|
-
*
|
|
21
|
-
* @see doc/engineering/PLUGIN_RUNTIME_CONTRACT.md — Scheduled Jobs
|
|
22
|
-
* @see ./plugin-job-scheduler.ts — Scheduler service
|
|
23
|
-
* @see ./plugin-job-store.ts — Persistence layer
|
|
24
|
-
* @see ./plugin-lifecycle.ts — Plugin state machine
|
|
25
|
-
*/
|
|
26
|
-
import type { Db } from "@rudderhq/db";
|
|
27
|
-
import type { PluginJobScheduler } from "./plugin-job-scheduler.js";
|
|
28
|
-
import type { PluginJobStore } from "./plugin-job-store.js";
|
|
29
|
-
import type { PluginLifecycleManager } from "./plugin-lifecycle.js";
|
|
30
|
-
/**
|
|
31
|
-
* Options for creating a PluginJobCoordinator.
|
|
32
|
-
*/
|
|
33
|
-
export interface PluginJobCoordinatorOptions {
|
|
34
|
-
/** Drizzle database instance. */
|
|
35
|
-
db: Db;
|
|
36
|
-
/** The plugin lifecycle manager to listen to. */
|
|
37
|
-
lifecycle: PluginLifecycleManager;
|
|
38
|
-
/** The job scheduler to register/unregister plugins with. */
|
|
39
|
-
scheduler: PluginJobScheduler;
|
|
40
|
-
/** The job store for syncing declarations. */
|
|
41
|
-
jobStore: PluginJobStore;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* The public interface of the job coordinator.
|
|
45
|
-
*/
|
|
46
|
-
export interface PluginJobCoordinator {
|
|
47
|
-
/**
|
|
48
|
-
* Start listening to lifecycle events.
|
|
49
|
-
*
|
|
50
|
-
* This wires up the `plugin.loaded`, `plugin.disabled`, and
|
|
51
|
-
* `plugin.unloaded` event handlers.
|
|
52
|
-
*/
|
|
53
|
-
start(): void;
|
|
54
|
-
/**
|
|
55
|
-
* Stop listening to lifecycle events.
|
|
56
|
-
*
|
|
57
|
-
* Removes all event subscriptions added by `start()`.
|
|
58
|
-
*/
|
|
59
|
-
stop(): void;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Create a PluginJobCoordinator.
|
|
63
|
-
*
|
|
64
|
-
* @example
|
|
65
|
-
* ```ts
|
|
66
|
-
* const coordinator = createPluginJobCoordinator({
|
|
67
|
-
* db,
|
|
68
|
-
* lifecycle,
|
|
69
|
-
* scheduler,
|
|
70
|
-
* jobStore,
|
|
71
|
-
* });
|
|
72
|
-
*
|
|
73
|
-
* // Start listening to lifecycle events
|
|
74
|
-
* coordinator.start();
|
|
75
|
-
*
|
|
76
|
-
* // On server shutdown
|
|
77
|
-
* coordinator.stop();
|
|
78
|
-
* ```
|
|
79
|
-
*/
|
|
80
|
-
export declare function createPluginJobCoordinator(options: PluginJobCoordinatorOptions): PluginJobCoordinator;
|
|
81
|
-
//# sourceMappingURL=plugin-job-coordinator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-job-coordinator.d.ts","sourceRoot":"","sources":["../../src/services/plugin-job-coordinator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAOpE;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,iCAAiC;IACjC,EAAE,EAAE,EAAE,CAAC;IACP,iDAAiD;IACjD,SAAS,EAAE,sBAAsB,CAAC;IAClC,6DAA6D;IAC7D,SAAS,EAAE,kBAAkB,CAAC;IAC9B,8CAA8C;IAC9C,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;;;OAIG;IACH,IAAI,IAAI,IAAI,CAAC;CACd;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,2BAA2B,GACnC,oBAAoB,CAmKtB"}
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PluginJobCoordinator — bridges the plugin lifecycle manager with the
|
|
3
|
-
* job scheduler and job store.
|
|
4
|
-
*
|
|
5
|
-
* This service listens to lifecycle events and performs the corresponding
|
|
6
|
-
* scheduler and job store operations:
|
|
7
|
-
*
|
|
8
|
-
* - **plugin.loaded** → sync job declarations from manifest, then register
|
|
9
|
-
* the plugin with the scheduler (computes `nextRunAt` for active jobs).
|
|
10
|
-
*
|
|
11
|
-
* - **plugin.disabled / plugin.unloaded** → unregister the plugin from the
|
|
12
|
-
* scheduler (cancels in-flight runs, clears tracking state).
|
|
13
|
-
*
|
|
14
|
-
* ## Why a separate coordinator?
|
|
15
|
-
*
|
|
16
|
-
* The lifecycle manager, scheduler, and job store are independent services
|
|
17
|
-
* with clean single-responsibility boundaries. The coordinator provides
|
|
18
|
-
* the "glue" between them without adding coupling. This pattern is used
|
|
19
|
-
* throughout Rudder (e.g. heartbeat service coordinates timers + runs).
|
|
20
|
-
*
|
|
21
|
-
* @see doc/engineering/PLUGIN_RUNTIME_CONTRACT.md — Scheduled Jobs
|
|
22
|
-
* @see ./plugin-job-scheduler.ts — Scheduler service
|
|
23
|
-
* @see ./plugin-job-store.ts — Persistence layer
|
|
24
|
-
* @see ./plugin-lifecycle.ts — Plugin state machine
|
|
25
|
-
*/
|
|
26
|
-
import { logger } from "../middleware/logger.js";
|
|
27
|
-
import { pluginRegistryService } from "./plugin-registry.js";
|
|
28
|
-
// ---------------------------------------------------------------------------
|
|
29
|
-
// Implementation
|
|
30
|
-
// ---------------------------------------------------------------------------
|
|
31
|
-
/**
|
|
32
|
-
* Create a PluginJobCoordinator.
|
|
33
|
-
*
|
|
34
|
-
* @example
|
|
35
|
-
* ```ts
|
|
36
|
-
* const coordinator = createPluginJobCoordinator({
|
|
37
|
-
* db,
|
|
38
|
-
* lifecycle,
|
|
39
|
-
* scheduler,
|
|
40
|
-
* jobStore,
|
|
41
|
-
* });
|
|
42
|
-
*
|
|
43
|
-
* // Start listening to lifecycle events
|
|
44
|
-
* coordinator.start();
|
|
45
|
-
*
|
|
46
|
-
* // On server shutdown
|
|
47
|
-
* coordinator.stop();
|
|
48
|
-
* ```
|
|
49
|
-
*/
|
|
50
|
-
export function createPluginJobCoordinator(options) {
|
|
51
|
-
const { db, lifecycle, scheduler, jobStore } = options;
|
|
52
|
-
const log = logger.child({ service: "plugin-job-coordinator" });
|
|
53
|
-
const registry = pluginRegistryService(db);
|
|
54
|
-
// -----------------------------------------------------------------------
|
|
55
|
-
// Event handlers
|
|
56
|
-
// -----------------------------------------------------------------------
|
|
57
|
-
/**
|
|
58
|
-
* When a plugin is loaded (transitions to `ready`):
|
|
59
|
-
* 1. Look up the manifest from the registry
|
|
60
|
-
* 2. Sync job declarations from the manifest into the DB
|
|
61
|
-
* 3. Register the plugin with the scheduler (computes nextRunAt)
|
|
62
|
-
*/
|
|
63
|
-
async function onPluginLoaded(payload) {
|
|
64
|
-
const { pluginId, pluginKey } = payload;
|
|
65
|
-
log.info({ pluginId, pluginKey }, "plugin loaded — syncing jobs and registering with scheduler");
|
|
66
|
-
try {
|
|
67
|
-
// Get the manifest from the registry
|
|
68
|
-
const plugin = await registry.getById(pluginId);
|
|
69
|
-
if (!plugin?.manifestJson) {
|
|
70
|
-
log.warn({ pluginId, pluginKey }, "plugin loaded but no manifest found — skipping job sync");
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
// Sync job declarations from the manifest
|
|
74
|
-
const manifest = plugin.manifestJson;
|
|
75
|
-
const jobDeclarations = manifest.jobs ?? [];
|
|
76
|
-
if (jobDeclarations.length > 0) {
|
|
77
|
-
log.info({ pluginId, pluginKey, jobCount: jobDeclarations.length }, "syncing job declarations from manifest");
|
|
78
|
-
await jobStore.syncJobDeclarations(pluginId, jobDeclarations);
|
|
79
|
-
}
|
|
80
|
-
// Register with the scheduler (computes nextRunAt for active jobs)
|
|
81
|
-
await scheduler.registerPlugin(pluginId);
|
|
82
|
-
}
|
|
83
|
-
catch (err) {
|
|
84
|
-
log.error({
|
|
85
|
-
pluginId,
|
|
86
|
-
pluginKey,
|
|
87
|
-
err: err instanceof Error ? err.message : String(err),
|
|
88
|
-
}, "failed to sync jobs or register plugin with scheduler");
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* When a plugin is disabled (transitions to `error` with "disabled by
|
|
93
|
-
* operator" or genuine error): unregister from the scheduler.
|
|
94
|
-
*/
|
|
95
|
-
async function onPluginDisabled(payload) {
|
|
96
|
-
const { pluginId, pluginKey, reason } = payload;
|
|
97
|
-
log.info({ pluginId, pluginKey, reason }, "plugin disabled — unregistering from scheduler");
|
|
98
|
-
try {
|
|
99
|
-
await scheduler.unregisterPlugin(pluginId);
|
|
100
|
-
}
|
|
101
|
-
catch (err) {
|
|
102
|
-
log.error({
|
|
103
|
-
pluginId,
|
|
104
|
-
pluginKey,
|
|
105
|
-
err: err instanceof Error ? err.message : String(err),
|
|
106
|
-
}, "failed to unregister plugin from scheduler");
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* When a plugin is unloaded (uninstalled): unregister from the scheduler.
|
|
111
|
-
*/
|
|
112
|
-
async function onPluginUnloaded(payload) {
|
|
113
|
-
const { pluginId, pluginKey, removeData } = payload;
|
|
114
|
-
log.info({ pluginId, pluginKey, removeData }, "plugin unloaded — unregistering from scheduler");
|
|
115
|
-
try {
|
|
116
|
-
await scheduler.unregisterPlugin(pluginId);
|
|
117
|
-
// If data is being purged, also delete all job definitions and runs
|
|
118
|
-
if (removeData) {
|
|
119
|
-
log.info({ pluginId, pluginKey }, "purging job data for uninstalled plugin");
|
|
120
|
-
await jobStore.deleteAllJobs(pluginId);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
catch (err) {
|
|
124
|
-
log.error({
|
|
125
|
-
pluginId,
|
|
126
|
-
pluginKey,
|
|
127
|
-
err: err instanceof Error ? err.message : String(err),
|
|
128
|
-
}, "failed to unregister plugin from scheduler during unload");
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
// -----------------------------------------------------------------------
|
|
132
|
-
// State
|
|
133
|
-
// -----------------------------------------------------------------------
|
|
134
|
-
let attached = false;
|
|
135
|
-
// We need stable references for on/off since the lifecycle manager
|
|
136
|
-
// uses them for matching. We wrap the async handlers in sync wrappers
|
|
137
|
-
// that fire-and-forget (swallowing unhandled rejections via the try/catch
|
|
138
|
-
// inside each handler).
|
|
139
|
-
const boundOnLoaded = (payload) => {
|
|
140
|
-
void onPluginLoaded(payload);
|
|
141
|
-
};
|
|
142
|
-
const boundOnDisabled = (payload) => {
|
|
143
|
-
void onPluginDisabled(payload);
|
|
144
|
-
};
|
|
145
|
-
const boundOnUnloaded = (payload) => {
|
|
146
|
-
void onPluginUnloaded(payload);
|
|
147
|
-
};
|
|
148
|
-
// -----------------------------------------------------------------------
|
|
149
|
-
// Public API
|
|
150
|
-
// -----------------------------------------------------------------------
|
|
151
|
-
return {
|
|
152
|
-
start() {
|
|
153
|
-
if (attached)
|
|
154
|
-
return;
|
|
155
|
-
attached = true;
|
|
156
|
-
lifecycle.on("plugin.loaded", boundOnLoaded);
|
|
157
|
-
lifecycle.on("plugin.disabled", boundOnDisabled);
|
|
158
|
-
lifecycle.on("plugin.unloaded", boundOnUnloaded);
|
|
159
|
-
log.info("plugin job coordinator started — listening to lifecycle events");
|
|
160
|
-
},
|
|
161
|
-
stop() {
|
|
162
|
-
if (!attached)
|
|
163
|
-
return;
|
|
164
|
-
attached = false;
|
|
165
|
-
lifecycle.off("plugin.loaded", boundOnLoaded);
|
|
166
|
-
lifecycle.off("plugin.disabled", boundOnDisabled);
|
|
167
|
-
lifecycle.off("plugin.unloaded", boundOnUnloaded);
|
|
168
|
-
log.info("plugin job coordinator stopped");
|
|
169
|
-
},
|
|
170
|
-
};
|
|
171
|
-
}
|
|
172
|
-
//# sourceMappingURL=plugin-job-coordinator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-job-coordinator.js","sourceRoot":"","sources":["../../src/services/plugin-job-coordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PluginJobScheduler — tick-based scheduler for plugin scheduled jobs.
|
|
3
|
-
*
|
|
4
|
-
* The scheduler is the central coordinator for all plugin cron jobs. It
|
|
5
|
-
* periodically ticks (default every 30 seconds), queries the `plugin_jobs`
|
|
6
|
-
* table for jobs whose `nextRunAt` has passed, dispatches `runJob` RPC calls
|
|
7
|
-
* to the appropriate worker processes, records each execution in the
|
|
8
|
-
* `plugin_job_runs` table, and advances the scheduling pointer.
|
|
9
|
-
*
|
|
10
|
-
* ## Responsibilities
|
|
11
|
-
*
|
|
12
|
-
* 1. **Tick loop** — A `setInterval`-based loop fires every `tickIntervalMs`
|
|
13
|
-
* (default 30s). Each tick scans for due jobs and dispatches them.
|
|
14
|
-
*
|
|
15
|
-
* 2. **Cron parsing & next-run calculation** — Uses the lightweight built-in
|
|
16
|
-
* cron parser ({@link parseCron}, {@link nextCronTick}) to compute the
|
|
17
|
-
* `nextRunAt` timestamp after each run or when a new job is registered.
|
|
18
|
-
*
|
|
19
|
-
* 3. **Overlap prevention** — Before dispatching a job, the scheduler checks
|
|
20
|
-
* for an existing `running` run for the same job. If one exists, the job
|
|
21
|
-
* is skipped for that tick.
|
|
22
|
-
*
|
|
23
|
-
* 4. **Job run recording** — Every execution creates a `plugin_job_runs` row:
|
|
24
|
-
* `queued` → `running` → `succeeded` | `failed`. Duration and error are
|
|
25
|
-
* captured.
|
|
26
|
-
*
|
|
27
|
-
* 5. **Lifecycle integration** — The scheduler exposes `registerPlugin()` and
|
|
28
|
-
* `unregisterPlugin()` so the host lifecycle manager can wire up job
|
|
29
|
-
* scheduling when plugins start/stop. On registration, the scheduler
|
|
30
|
-
* computes `nextRunAt` for all active jobs that don't already have one.
|
|
31
|
-
*
|
|
32
|
-
* @see doc/engineering/PLUGIN_RUNTIME_CONTRACT.md — Scheduled Jobs
|
|
33
|
-
* @see ./plugin-job-store.ts — Persistence layer
|
|
34
|
-
* @see ./cron.ts — Cron parsing utilities
|
|
35
|
-
*/
|
|
36
|
-
import type { Db } from "@rudderhq/db";
|
|
37
|
-
import type { PluginJobStore } from "./plugin-job-store.js";
|
|
38
|
-
import type { PluginWorkerManager } from "./plugin-worker-manager.js";
|
|
39
|
-
/**
|
|
40
|
-
* Options for creating a PluginJobScheduler.
|
|
41
|
-
*/
|
|
42
|
-
export interface PluginJobSchedulerOptions {
|
|
43
|
-
/** Drizzle database instance. */
|
|
44
|
-
db: Db;
|
|
45
|
-
/** Persistence layer for jobs and runs. */
|
|
46
|
-
jobStore: PluginJobStore;
|
|
47
|
-
/** Worker process manager for RPC calls. */
|
|
48
|
-
workerManager: PluginWorkerManager;
|
|
49
|
-
/** Interval between scheduler ticks in ms (default: 30s). */
|
|
50
|
-
tickIntervalMs?: number;
|
|
51
|
-
/** Timeout for individual job RPC calls in ms (default: 5min). */
|
|
52
|
-
jobTimeoutMs?: number;
|
|
53
|
-
/** Maximum number of concurrent job executions (default: 10). */
|
|
54
|
-
maxConcurrentJobs?: number;
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Result of a manual job trigger.
|
|
58
|
-
*/
|
|
59
|
-
export interface TriggerJobResult {
|
|
60
|
-
/** The created run ID. */
|
|
61
|
-
runId: string;
|
|
62
|
-
/** The job ID that was triggered. */
|
|
63
|
-
jobId: string;
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Diagnostic information about the scheduler.
|
|
67
|
-
*/
|
|
68
|
-
export interface SchedulerDiagnostics {
|
|
69
|
-
/** Whether the tick loop is running. */
|
|
70
|
-
running: boolean;
|
|
71
|
-
/** Number of jobs currently executing. */
|
|
72
|
-
activeJobCount: number;
|
|
73
|
-
/** Set of job IDs currently in-flight. */
|
|
74
|
-
activeJobIds: string[];
|
|
75
|
-
/** Total number of ticks executed since start. */
|
|
76
|
-
tickCount: number;
|
|
77
|
-
/** Timestamp of the last tick (ISO 8601). */
|
|
78
|
-
lastTickAt: string | null;
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* The public interface of the job scheduler.
|
|
82
|
-
*/
|
|
83
|
-
export interface PluginJobScheduler {
|
|
84
|
-
/**
|
|
85
|
-
* Start the scheduler tick loop.
|
|
86
|
-
*
|
|
87
|
-
* Safe to call multiple times — subsequent calls are no-ops.
|
|
88
|
-
*/
|
|
89
|
-
start(): void;
|
|
90
|
-
/**
|
|
91
|
-
* Stop the scheduler tick loop.
|
|
92
|
-
*
|
|
93
|
-
* In-flight job runs are NOT cancelled — they are allowed to finish
|
|
94
|
-
* naturally. The tick loop simply stops firing.
|
|
95
|
-
*/
|
|
96
|
-
stop(): void;
|
|
97
|
-
/**
|
|
98
|
-
* Register a plugin with the scheduler.
|
|
99
|
-
*
|
|
100
|
-
* Computes `nextRunAt` for all active jobs that are missing it. This is
|
|
101
|
-
* typically called after a plugin's worker process starts and
|
|
102
|
-
* `syncJobDeclarations()` has been called.
|
|
103
|
-
*
|
|
104
|
-
* @param pluginId - UUID of the plugin
|
|
105
|
-
*/
|
|
106
|
-
registerPlugin(pluginId: string): Promise<void>;
|
|
107
|
-
/**
|
|
108
|
-
* Unregister a plugin from the scheduler.
|
|
109
|
-
*
|
|
110
|
-
* Cancels any in-flight runs for the plugin and removes tracking state.
|
|
111
|
-
*
|
|
112
|
-
* @param pluginId - UUID of the plugin
|
|
113
|
-
*/
|
|
114
|
-
unregisterPlugin(pluginId: string): Promise<void>;
|
|
115
|
-
/**
|
|
116
|
-
* Manually trigger a specific job (outside of the cron schedule).
|
|
117
|
-
*
|
|
118
|
-
* Creates a run with `trigger: "manual"` and dispatches immediately,
|
|
119
|
-
* respecting the overlap prevention check.
|
|
120
|
-
*
|
|
121
|
-
* @param jobId - UUID of the job to trigger
|
|
122
|
-
* @param trigger - What triggered this run (default: "manual")
|
|
123
|
-
* @returns The created run info
|
|
124
|
-
* @throws {Error} if the job is not found, not active, or already running
|
|
125
|
-
*/
|
|
126
|
-
triggerJob(jobId: string, trigger?: "manual" | "retry"): Promise<TriggerJobResult>;
|
|
127
|
-
/**
|
|
128
|
-
* Run a single scheduler tick immediately (for testing).
|
|
129
|
-
*
|
|
130
|
-
* @internal
|
|
131
|
-
*/
|
|
132
|
-
tick(): Promise<void>;
|
|
133
|
-
/**
|
|
134
|
-
* Get diagnostic information about the scheduler state.
|
|
135
|
-
*/
|
|
136
|
-
diagnostics(): SchedulerDiagnostics;
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Create a new PluginJobScheduler.
|
|
140
|
-
*
|
|
141
|
-
* @example
|
|
142
|
-
* ```ts
|
|
143
|
-
* const scheduler = createPluginJobScheduler({
|
|
144
|
-
* db,
|
|
145
|
-
* jobStore,
|
|
146
|
-
* workerManager,
|
|
147
|
-
* });
|
|
148
|
-
*
|
|
149
|
-
* // Start the tick loop
|
|
150
|
-
* scheduler.start();
|
|
151
|
-
*
|
|
152
|
-
* // When a plugin comes online, register it
|
|
153
|
-
* await scheduler.registerPlugin(pluginId);
|
|
154
|
-
*
|
|
155
|
-
* // Manually trigger a job
|
|
156
|
-
* const { runId } = await scheduler.triggerJob(jobId);
|
|
157
|
-
*
|
|
158
|
-
* // On server shutdown
|
|
159
|
-
* scheduler.stop();
|
|
160
|
-
* ```
|
|
161
|
-
*/
|
|
162
|
-
export declare function createPluginJobScheduler(options: PluginJobSchedulerOptions): PluginJobScheduler;
|
|
163
|
-
//# sourceMappingURL=plugin-job-scheduler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-job-scheduler.d.ts","sourceRoot":"","sources":["../../src/services/plugin-job-scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAmBtE;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,iCAAiC;IACjC,EAAE,EAAE,EAAE,CAAC;IACP,2CAA2C;IAC3C,QAAQ,EAAE,cAAc,CAAC;IACzB,4CAA4C;IAC5C,aAAa,EAAE,mBAAmB,CAAC;IACnC,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,wCAAwC;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAMD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;;;;OAKG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;;;;;;;OAQG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD;;;;;;OAMG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD;;;;;;;;;;OAUG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAEnF;;;;OAIG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB;;OAEG;IACH,WAAW,IAAI,oBAAoB,CAAC;CACrC;AAMD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,yBAAyB,GACjC,kBAAkB,CAiiBpB"}
|