@mastra/factory 0.15.1-alpha.0 → 0.16.0-alpha.11
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/README.md +41 -3
- package/dist/auth.js +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/boards/index.d.ts +1 -1
- package/dist/boards/index.d.ts.map +1 -1
- package/dist/boards/index.js +2 -2
- package/dist/boards/index.js.map +1 -1
- package/dist/boards/review.d.ts.map +1 -1
- package/dist/boards/review.js +23 -9
- package/dist/boards/review.js.map +1 -1
- package/dist/boards/semantics.d.ts +7 -0
- package/dist/boards/semantics.d.ts.map +1 -1
- package/dist/boards/semantics.js +15 -1
- package/dist/boards/semantics.js.map +1 -1
- package/dist/boards/work.d.ts.map +1 -1
- package/dist/boards/work.js +68 -6
- package/dist/boards/work.js.map +1 -1
- package/dist/capabilities/intake.d.ts +8 -0
- package/dist/capabilities/intake.d.ts.map +1 -1
- package/dist/capabilities/version-control.d.ts +15 -0
- package/dist/capabilities/version-control.d.ts.map +1 -1
- package/dist/factory.d.ts +8 -5
- package/dist/factory.d.ts.map +1 -1
- package/dist/factory.js +136 -53
- package/dist/factory.js.map +1 -1
- package/dist/integrations/base.d.ts +5 -0
- package/dist/integrations/base.d.ts.map +1 -1
- package/dist/integrations/github/integration.d.ts.map +1 -1
- package/dist/integrations/github/integration.js +21 -0
- package/dist/integrations/github/integration.js.map +1 -1
- package/dist/integrations/github/routes.js +2 -1
- package/dist/integrations/github/routes.js.map +1 -1
- package/dist/integrations/github/sandbox.d.ts +41 -42
- package/dist/integrations/github/sandbox.d.ts.map +1 -1
- package/dist/integrations/github/sandbox.js +416 -227
- package/dist/integrations/github/sandbox.js.map +1 -1
- package/dist/integrations/github/webhook.d.ts +2 -5
- package/dist/integrations/github/webhook.d.ts.map +1 -1
- package/dist/integrations/github/webhook.js +8 -48
- package/dist/integrations/github/webhook.js.map +1 -1
- package/dist/integrations/gitlab/agent-tools.d.ts +14 -0
- package/dist/integrations/gitlab/agent-tools.d.ts.map +1 -0
- package/dist/integrations/gitlab/agent-tools.js +42 -0
- package/dist/integrations/gitlab/agent-tools.js.map +1 -0
- package/dist/integrations/gitlab/api.d.ts +222 -0
- package/dist/integrations/gitlab/api.d.ts.map +1 -0
- package/dist/integrations/gitlab/api.js +274 -0
- package/dist/integrations/gitlab/api.js.map +1 -0
- package/dist/integrations/gitlab/default-rules.d.ts +125 -0
- package/dist/integrations/gitlab/default-rules.d.ts.map +1 -0
- package/dist/integrations/gitlab/default-rules.js +172 -0
- package/dist/integrations/gitlab/default-rules.js.map +1 -0
- package/dist/integrations/gitlab/integration.d.ts +138 -0
- package/dist/integrations/gitlab/integration.d.ts.map +1 -0
- package/dist/integrations/gitlab/integration.js +705 -0
- package/dist/integrations/gitlab/integration.js.map +1 -0
- package/dist/integrations/gitlab/issue-reconciler.d.ts +6 -0
- package/dist/integrations/gitlab/issue-reconciler.d.ts.map +1 -0
- package/dist/integrations/gitlab/issue-reconciler.js +123 -0
- package/dist/integrations/gitlab/issue-reconciler.js.map +1 -0
- package/dist/integrations/gitlab/merge-request-reconciler.d.ts +6 -0
- package/dist/integrations/gitlab/merge-request-reconciler.d.ts.map +1 -0
- package/dist/integrations/gitlab/merge-request-reconciler.js +267 -0
- package/dist/integrations/gitlab/merge-request-reconciler.js.map +1 -0
- package/dist/integrations/gitlab/reconciler.d.ts +5 -0
- package/dist/integrations/gitlab/reconciler.d.ts.map +1 -0
- package/dist/integrations/gitlab/reconciler.js +31 -0
- package/dist/integrations/gitlab/reconciler.js.map +1 -0
- package/dist/integrations/gitlab/reconciliation-config.d.ts +3 -0
- package/dist/integrations/gitlab/reconciliation-config.d.ts.map +1 -0
- package/dist/integrations/gitlab/reconciliation-config.js +17 -0
- package/dist/integrations/gitlab/reconciliation-config.js.map +1 -0
- package/dist/integrations/gitlab/routes.d.ts +20 -0
- package/dist/integrations/gitlab/routes.d.ts.map +1 -0
- package/dist/integrations/gitlab/routes.js +473 -0
- package/dist/integrations/gitlab/routes.js.map +1 -0
- package/dist/integrations/gitlab/rules.d.ts +35 -0
- package/dist/integrations/gitlab/rules.d.ts.map +1 -0
- package/dist/integrations/gitlab/rules.js +391 -0
- package/dist/integrations/gitlab/rules.js.map +1 -0
- package/dist/integrations/gitlab/session-subscriptions.d.ts +32 -0
- package/dist/integrations/gitlab/session-subscriptions.d.ts.map +1 -0
- package/dist/integrations/gitlab/session-subscriptions.js +192 -0
- package/dist/integrations/gitlab/session-subscriptions.js.map +1 -0
- package/dist/integrations/gitlab/subscriptions.d.ts +70 -0
- package/dist/integrations/gitlab/subscriptions.d.ts.map +1 -0
- package/dist/integrations/gitlab/subscriptions.js +76 -0
- package/dist/integrations/gitlab/subscriptions.js.map +1 -0
- package/dist/integrations/gitlab/version-control.d.ts +16 -0
- package/dist/integrations/gitlab/version-control.d.ts.map +1 -0
- package/dist/integrations/gitlab/version-control.js +622 -0
- package/dist/integrations/gitlab/version-control.js.map +1 -0
- package/dist/integrations/gitlab/webhook-dispatch.d.ts +75 -0
- package/dist/integrations/gitlab/webhook-dispatch.d.ts.map +1 -0
- package/dist/integrations/gitlab/webhook-dispatch.js +235 -0
- package/dist/integrations/gitlab/webhook-dispatch.js.map +1 -0
- package/dist/integrations/gitlab/webhook.d.ts +72 -0
- package/dist/integrations/gitlab/webhook.d.ts.map +1 -0
- package/dist/integrations/gitlab/webhook.js +201 -0
- package/dist/integrations/gitlab/webhook.js.map +1 -0
- package/dist/integrations/incidentio/agent-tools.d.ts +49 -0
- package/dist/integrations/incidentio/agent-tools.d.ts.map +1 -0
- package/dist/integrations/incidentio/agent-tools.js +90 -0
- package/dist/integrations/incidentio/agent-tools.js.map +1 -0
- package/dist/integrations/incidentio/claim.d.ts +8 -0
- package/dist/integrations/incidentio/claim.d.ts.map +1 -0
- package/dist/integrations/incidentio/claim.js +14 -0
- package/dist/integrations/incidentio/claim.js.map +1 -0
- package/dist/integrations/incidentio/default-rules.d.ts +46 -0
- package/dist/integrations/incidentio/default-rules.d.ts.map +1 -0
- package/dist/integrations/incidentio/default-rules.js +66 -0
- package/dist/integrations/incidentio/default-rules.js.map +1 -0
- package/dist/integrations/incidentio/integration.d.ts +48 -2
- package/dist/integrations/incidentio/integration.d.ts.map +1 -1
- package/dist/integrations/incidentio/integration.js +89 -3
- package/dist/integrations/incidentio/integration.js.map +1 -1
- package/dist/integrations/incidentio/issue-reconciler.d.ts +2 -0
- package/dist/integrations/incidentio/issue-reconciler.d.ts.map +1 -1
- package/dist/integrations/incidentio/issue-reconciler.js +38 -2
- package/dist/integrations/incidentio/issue-reconciler.js.map +1 -1
- package/dist/integrations/incidentio/routes.d.ts +71 -0
- package/dist/integrations/incidentio/routes.d.ts.map +1 -0
- package/dist/integrations/incidentio/routes.js +245 -0
- package/dist/integrations/incidentio/routes.js.map +1 -0
- package/dist/integrations/incidentio/rules.d.ts +55 -0
- package/dist/integrations/incidentio/rules.d.ts.map +1 -0
- package/dist/integrations/incidentio/rules.js +175 -0
- package/dist/integrations/incidentio/rules.js.map +1 -0
- package/dist/integrations/issue-reconciler.d.ts +3 -3
- package/dist/integrations/issue-reconciler.d.ts.map +1 -1
- package/dist/integrations/issue-reconciler.js +22 -2
- package/dist/integrations/issue-reconciler.js.map +1 -1
- package/dist/integrations/jira/adf.d.ts +26 -0
- package/dist/integrations/jira/adf.d.ts.map +1 -0
- package/dist/integrations/jira/adf.js +73 -0
- package/dist/integrations/jira/adf.js.map +1 -0
- package/dist/integrations/jira/agent-tools.d.ts +45 -0
- package/dist/integrations/jira/agent-tools.d.ts.map +1 -0
- package/dist/integrations/jira/agent-tools.js +87 -0
- package/dist/integrations/jira/agent-tools.js.map +1 -0
- package/dist/integrations/jira/api.d.ts +157 -0
- package/dist/integrations/jira/api.d.ts.map +1 -0
- package/dist/integrations/jira/api.js +141 -0
- package/dist/integrations/jira/api.js.map +1 -0
- package/dist/integrations/jira/claim.d.ts +9 -0
- package/dist/integrations/jira/claim.d.ts.map +1 -0
- package/dist/integrations/jira/claim.js +15 -0
- package/dist/integrations/jira/claim.js.map +1 -0
- package/dist/integrations/jira/default-rules.d.ts +47 -0
- package/dist/integrations/jira/default-rules.d.ts.map +1 -0
- package/dist/integrations/jira/default-rules.js +67 -0
- package/dist/integrations/jira/default-rules.js.map +1 -0
- package/dist/integrations/jira/integration.d.ts +114 -0
- package/dist/integrations/jira/integration.d.ts.map +1 -0
- package/dist/integrations/jira/integration.js +401 -0
- package/dist/integrations/jira/integration.js.map +1 -0
- package/dist/integrations/jira/issue-reconciler.d.ts +10 -0
- package/dist/integrations/jira/issue-reconciler.d.ts.map +1 -0
- package/dist/integrations/jira/issue-reconciler.js +70 -0
- package/dist/integrations/jira/issue-reconciler.js.map +1 -0
- package/dist/integrations/jira/reconciliation-config.d.ts +3 -0
- package/dist/integrations/jira/reconciliation-config.d.ts.map +1 -0
- package/dist/integrations/jira/reconciliation-config.js +17 -0
- package/dist/integrations/jira/reconciliation-config.js.map +1 -0
- package/dist/integrations/jira/routes.d.ts +54 -0
- package/dist/integrations/jira/routes.d.ts.map +1 -0
- package/dist/integrations/jira/routes.js +260 -0
- package/dist/integrations/jira/routes.js.map +1 -0
- package/dist/integrations/jira/rules.d.ts +57 -0
- package/dist/integrations/jira/rules.d.ts.map +1 -0
- package/dist/integrations/jira/rules.js +175 -0
- package/dist/integrations/jira/rules.js.map +1 -0
- package/dist/integrations/linear/claim.d.ts +8 -0
- package/dist/integrations/linear/claim.d.ts.map +1 -0
- package/dist/integrations/linear/claim.js +14 -0
- package/dist/integrations/linear/claim.js.map +1 -0
- package/dist/integrations/linear/default-rules.d.ts +1 -0
- package/dist/integrations/linear/default-rules.d.ts.map +1 -1
- package/dist/integrations/linear/default-rules.js +2 -0
- package/dist/integrations/linear/default-rules.js.map +1 -1
- package/dist/integrations/linear/integration.d.ts +24 -6
- package/dist/integrations/linear/integration.d.ts.map +1 -1
- package/dist/integrations/linear/integration.js +257 -37
- package/dist/integrations/linear/integration.js.map +1 -1
- package/dist/integrations/linear/routes.d.ts +10 -0
- package/dist/integrations/linear/routes.d.ts.map +1 -1
- package/dist/integrations/linear/routes.js +74 -10
- package/dist/integrations/linear/routes.js.map +1 -1
- package/dist/integrations/linear/rules.d.ts +1 -1
- package/dist/integrations/linear/rules.d.ts.map +1 -1
- package/dist/integrations/linear/rules.js +27 -2
- package/dist/integrations/linear/rules.js.map +1 -1
- package/dist/integrations/platform/connect/routes.d.ts +39 -0
- package/dist/integrations/platform/connect/routes.d.ts.map +1 -0
- package/dist/integrations/platform/connect/routes.js +129 -0
- package/dist/integrations/platform/connect/routes.js.map +1 -0
- package/dist/integrations/platform/github/event-worker.js +1 -1
- package/dist/integrations/platform/github/integration.d.ts.map +1 -1
- package/dist/integrations/platform/github/integration.js +22 -1
- package/dist/integrations/platform/github/integration.js.map +1 -1
- package/dist/integrations/platform/gitlab/event-worker.d.ts +64 -0
- package/dist/integrations/platform/gitlab/event-worker.d.ts.map +1 -0
- package/dist/integrations/platform/gitlab/event-worker.js +306 -0
- package/dist/integrations/platform/gitlab/event-worker.js.map +1 -0
- package/dist/integrations/platform/gitlab/integration.d.ts +57 -0
- package/dist/integrations/platform/gitlab/integration.d.ts.map +1 -0
- package/dist/integrations/platform/gitlab/integration.js +125 -0
- package/dist/integrations/platform/gitlab/integration.js.map +1 -0
- package/dist/integrations/platform/incidentio/integration.d.ts +61 -4
- package/dist/integrations/platform/incidentio/integration.d.ts.map +1 -1
- package/dist/integrations/platform/incidentio/integration.js +372 -23
- package/dist/integrations/platform/incidentio/integration.js.map +1 -1
- package/dist/integrations/platform/jira/agent-tools.d.ts +36 -0
- package/dist/integrations/platform/jira/agent-tools.d.ts.map +1 -0
- package/dist/integrations/platform/jira/agent-tools.js +85 -0
- package/dist/integrations/platform/jira/agent-tools.js.map +1 -0
- package/dist/integrations/platform/jira/integration.d.ts +65 -0
- package/dist/integrations/platform/jira/integration.d.ts.map +1 -0
- package/dist/integrations/platform/jira/integration.js +540 -0
- package/dist/integrations/platform/jira/integration.js.map +1 -0
- package/dist/integrations/platform/jira/routes.d.ts +55 -0
- package/dist/integrations/platform/jira/routes.d.ts.map +1 -0
- package/dist/integrations/platform/jira/routes.js +274 -0
- package/dist/integrations/platform/jira/routes.js.map +1 -0
- package/dist/integrations/platform/linear/integration.d.ts +34 -1
- package/dist/integrations/platform/linear/integration.d.ts.map +1 -1
- package/dist/integrations/platform/linear/integration.js +271 -48
- package/dist/integrations/platform/linear/integration.js.map +1 -1
- package/dist/integrations/slack/integration.d.ts.map +1 -1
- package/dist/integrations/slack/integration.js +3 -3
- package/dist/integrations/slack/integration.js.map +1 -1
- package/dist/integrations/slack/slack.d.ts +2 -0
- package/dist/integrations/slack/slack.d.ts.map +1 -1
- package/dist/integrations/slack/slack.js +21 -7
- package/dist/integrations/slack/slack.js.map +1 -1
- package/dist/integrations/subscription-session.d.ts +37 -0
- package/dist/integrations/subscription-session.d.ts.map +1 -0
- package/dist/integrations/subscription-session.js +83 -0
- package/dist/integrations/subscription-session.js.map +1 -0
- package/dist/packages/_internals/workspace/dist/index.js +1 -11
- package/dist/packages/_internals/workspace/dist/index.js.map +1 -1
- package/dist/routes/intake.d.ts.map +1 -1
- package/dist/routes/intake.js +16 -4
- package/dist/routes/intake.js.map +1 -1
- package/dist/routes/oauth.js +3 -6
- package/dist/routes/oauth.js.map +1 -1
- package/dist/routes/projects.d.ts +1 -0
- package/dist/routes/projects.d.ts.map +1 -1
- package/dist/routes/projects.js +1 -0
- package/dist/routes/projects.js.map +1 -1
- package/dist/routes/source-control-sessions.d.ts +20 -0
- package/dist/routes/source-control-sessions.d.ts.map +1 -0
- package/dist/routes/source-control-sessions.js +319 -0
- package/dist/routes/source-control-sessions.js.map +1 -0
- package/dist/routes/source-control-settings.d.ts +10 -0
- package/dist/routes/source-control-settings.d.ts.map +1 -0
- package/dist/routes/source-control-settings.js +87 -0
- package/dist/routes/source-control-settings.js.map +1 -0
- package/dist/routes/surface.d.ts +3 -3
- package/dist/routes/surface.d.ts.map +1 -1
- package/dist/routes/surface.js +79 -17
- package/dist/routes/surface.js.map +1 -1
- package/dist/routes/tenant-credentials.d.ts +8 -0
- package/dist/routes/tenant-credentials.d.ts.map +1 -1
- package/dist/routes/tenant-credentials.js +20 -3
- package/dist/routes/tenant-credentials.js.map +1 -1
- package/dist/routes/work-items.d.ts.map +1 -1
- package/dist/routes/work-items.js +1 -1
- package/dist/routes/work-items.js.map +1 -1
- package/dist/rules/dispatch-errors.d.ts.map +1 -1
- package/dist/rules/dispatch-errors.js +8 -0
- package/dist/rules/dispatch-errors.js.map +1 -1
- package/dist/rules/dispatcher.d.ts +1 -0
- package/dist/rules/dispatcher.d.ts.map +1 -1
- package/dist/rules/dispatcher.js +186 -106
- package/dist/rules/dispatcher.js.map +1 -1
- package/dist/rules/index.d.ts +2 -2
- package/dist/rules/index.d.ts.map +1 -1
- package/dist/rules/index.js +2 -2
- package/dist/rules/start-coordinator.d.ts +1 -1
- package/dist/rules/start-coordinator.d.ts.map +1 -1
- package/dist/rules/start-coordinator.js +7 -3
- package/dist/rules/start-coordinator.js.map +1 -1
- package/dist/rules/terminal-cleanup.d.ts +14 -1
- package/dist/rules/terminal-cleanup.d.ts.map +1 -1
- package/dist/rules/terminal-cleanup.js +20 -0
- package/dist/rules/terminal-cleanup.js.map +1 -1
- package/dist/rules/tools.d.ts +2 -0
- package/dist/rules/tools.d.ts.map +1 -1
- package/dist/rules/tools.js +30 -2
- package/dist/rules/tools.js.map +1 -1
- package/dist/rules/transition-service.d.ts +3 -0
- package/dist/rules/transition-service.d.ts.map +1 -1
- package/dist/rules/transition-service.js +10 -5
- package/dist/rules/transition-service.js.map +1 -1
- package/dist/rules/types.d.ts +136 -3
- package/dist/rules/types.d.ts.map +1 -1
- package/dist/rules/types.js +31 -2
- package/dist/rules/types.js.map +1 -1
- package/dist/rules/validation.d.ts.map +1 -1
- package/dist/rules/validation.js +15 -2
- package/dist/rules/validation.js.map +1 -1
- package/dist/sandbox/git-ref.d.ts +7 -0
- package/dist/sandbox/git-ref.d.ts.map +1 -0
- package/dist/sandbox/git-ref.js +15 -0
- package/dist/sandbox/git-ref.js.map +1 -0
- package/dist/sandbox/session-retirement.js +1 -1
- package/dist/sandbox/workdir.d.ts.map +1 -1
- package/dist/sandbox/workdir.js +6 -6
- package/dist/sandbox/workdir.js.map +1 -1
- package/dist/session/factory-session.d.ts +31 -1
- package/dist/session/factory-session.d.ts.map +1 -1
- package/dist/session/factory-session.js +60 -1
- package/dist/session/factory-session.js.map +1 -1
- package/dist/session/run-audit.d.ts +9 -0
- package/dist/session/run-audit.d.ts.map +1 -1
- package/dist/session/run-audit.js +37 -6
- package/dist/session/run-audit.js.map +1 -1
- package/dist/session/source-control-tools.d.ts +16 -0
- package/dist/session/source-control-tools.d.ts.map +1 -0
- package/dist/session/source-control-tools.js +464 -0
- package/dist/session/source-control-tools.js.map +1 -0
- package/dist/skills/service.d.ts +12 -0
- package/dist/skills/service.d.ts.map +1 -1
- package/dist/skills/service.js +27 -1
- package/dist/skills/service.js.map +1 -1
- package/dist/storage/domains/intake/base.d.ts +18 -0
- package/dist/storage/domains/intake/base.d.ts.map +1 -1
- package/dist/storage/domains/intake/base.js +77 -0
- package/dist/storage/domains/intake/base.js.map +1 -1
- package/dist/storage/domains/work-items/base.d.ts +41 -2
- package/dist/storage/domains/work-items/base.d.ts.map +1 -1
- package/dist/storage/domains/work-items/base.js +159 -12
- package/dist/storage/domains/work-items/base.js.map +1 -1
- package/dist/supervisor/session-messaging.d.ts +23 -0
- package/dist/supervisor/session-messaging.d.ts.map +1 -0
- package/dist/supervisor/session-messaging.js +15 -0
- package/dist/supervisor/session-messaging.js.map +1 -0
- package/dist/supervisor/write-tools.d.ts +2 -1
- package/dist/supervisor/write-tools.d.ts.map +1 -1
- package/dist/supervisor/write-tools.js +11 -7
- package/dist/supervisor/write-tools.js.map +1 -1
- package/dist/work-item-branch.d.ts +3 -1
- package/dist/work-item-branch.d.ts.map +1 -1
- package/dist/work-item-branch.js +26 -6
- package/dist/work-item-branch.js.map +1 -1
- package/dist/workspace.d.ts +15 -1
- package/dist/workspace.d.ts.map +1 -1
- package/dist/workspace.js +57 -23
- package/dist/workspace.js.map +1 -1
- package/factory-skills/factory-gitlab-rereview/SKILL.md +19 -0
- package/factory-skills/factory-gitlab-review/SKILL.md +30 -0
- package/factory-skills/factory-rereview/SKILL.md +13 -6
- package/factory-skills/factory-review/SKILL.md +13 -6
- package/factory-skills/factory-review/references/archaeology.md +225 -0
- package/factory-skills/factory-review/references/categories/README.md +34 -0
- package/factory-skills/factory-review/references/categories/behavior-change.md +36 -0
- package/factory-skills/factory-review/references/categories/bug-fix.md +37 -0
- package/factory-skills/factory-review/references/categories/docs.md +32 -0
- package/factory-skills/factory-review/references/categories/experimental-flagged.md +34 -0
- package/factory-skills/factory-review/references/categories/infra-tooling.md +37 -0
- package/factory-skills/factory-review/references/categories/internal-capability.md +35 -0
- package/factory-skills/factory-review/references/categories/large-cross-cutting.md +35 -0
- package/factory-skills/factory-review/references/categories/mechanical.md +36 -0
- package/factory-skills/factory-review/references/categories/performance.md +33 -0
- package/factory-skills/factory-review/references/categories/public-api.md +38 -0
- package/factory-skills/factory-review/references/categories/refactor.md +35 -0
- package/factory-skills/factory-review/references/categories/revert.md +31 -0
- package/factory-skills/factory-review/references/categories/schema-storage.md +39 -0
- package/factory-skills/factory-review/references/categories/security.md +35 -0
- package/factory-skills/factory-review/references/categories/tests-only.md +38 -0
- package/package.json +12 -12
package/dist/factory.js
CHANGED
|
@@ -1,35 +1,39 @@
|
|
|
1
1
|
import { timedPhase } from "./timing.js";
|
|
2
2
|
import { buildAuthRoutes, createFactoryAuthGate, createFactoryRouteAuth, getFactoryAuthOrgId, getFactoryAuthUserFromContext, getFactoryAuthUserId } from "./auth.js";
|
|
3
3
|
import { assertFactoryConfigVersion } from "./rules/validation.js";
|
|
4
|
-
import {
|
|
4
|
+
import { isTerminalWorkItem } from "./boards/semantics.js";
|
|
5
5
|
import { createBoardRegistry } from "./boards/registry.js";
|
|
6
6
|
import "./boards/index.js";
|
|
7
7
|
import { touchFeed } from "./feed-events.js";
|
|
8
8
|
import { reconcileGithubAcceptanceLabels } from "./integrations/github/acceptance-labels.js";
|
|
9
9
|
import { recordFactoryPullRequestProvenance, resolveFactoryPullRequestParentWorkItemId } from "./integrations/github/provenance.js";
|
|
10
|
-
import {
|
|
10
|
+
import { PlatformApiClient, platformApiClientConfigFromEnv } from "./integrations/platform/api-client.js";
|
|
11
|
+
import { buildPlatformConnectRoutes } from "./integrations/platform/connect/routes.js";
|
|
11
12
|
import { WorkItemsStorage } from "./storage/domains/work-items/base.js";
|
|
12
13
|
import { IntakeStorage } from "./storage/domains/intake/base.js";
|
|
14
|
+
import { isValidGitRef } from "./sandbox/git-ref.js";
|
|
15
|
+
import { createPlaintextFactorySecretEncryption } from "./secret-encryption.js";
|
|
16
|
+
import { ModelCredentialsStorage } from "./storage/domains/credentials/base.js";
|
|
17
|
+
import { createTenantCredentialPrimer, primeTenantCredentials, registerTenantCredentialResolver } from "./routes/tenant-credentials.js";
|
|
13
18
|
import { PlatformGithubIntegration } from "./integrations/platform/github/integration.js";
|
|
19
|
+
import { PlatformGitLabIntegration } from "./integrations/platform/gitlab/integration.js";
|
|
14
20
|
import { PlatformIncidentioIntegration } from "./integrations/platform/incidentio/integration.js";
|
|
21
|
+
import { PlatformJiraIntegration } from "./integrations/platform/jira/integration.js";
|
|
15
22
|
import { PlatformLinearIntegration } from "./integrations/platform/linear/integration.js";
|
|
16
23
|
import { createCustomProvidersPrimer, registerCustomProvidersSource } from "./routes/custom-provider-source.js";
|
|
17
24
|
import { ProjectRoutes } from "./routes/projects.js";
|
|
18
25
|
import { MemorySettingsStorage } from "./storage/domains/memory-settings/base.js";
|
|
26
|
+
import { SourceControlStorage } from "./storage/domains/source-control/base.js";
|
|
19
27
|
import { hydrateSessionMemorySettings } from "./session/memory-settings-hydration.js";
|
|
20
|
-
import { refreshFactorySessionMemorySettings } from "./session/factory-session.js";
|
|
28
|
+
import { createSourceControlSessionLookup, refreshFactorySessionMemorySettings } from "./session/factory-session.js";
|
|
21
29
|
import { FactoryTransitionService } from "./rules/transition-service.js";
|
|
22
|
-
import { SourceControlStorage } from "./storage/domains/source-control/base.js";
|
|
23
30
|
import { AuditStorage } from "./storage/domains/audit/base.js";
|
|
24
31
|
import { AuditDomain } from "./storage/domains/audit/domain.js";
|
|
25
32
|
import { hydrateSessionModelPack } from "./session/model-pack-hydration.js";
|
|
26
33
|
import { observeSessionFirstExec } from "./session/first-exec-capture.js";
|
|
27
34
|
import { observeSessionFilesystem } from "./session/filesystem-capture.js";
|
|
28
|
-
import { createPlaintextFactorySecretEncryption } from "./secret-encryption.js";
|
|
29
|
-
import { ModelCredentialsStorage } from "./storage/domains/credentials/base.js";
|
|
30
35
|
import { hydrateSupervisorSession, parseSupervisorResourceId, resolveSupervisorScope } from "./supervisor/session.js";
|
|
31
36
|
import { FactoryWorkspaceRegistry, createWorkspaceFactory } from "./workspace.js";
|
|
32
|
-
import { createTenantCredentialPrimer, primeTenantCredentials, registerTenantCredentialResolver } from "./routes/tenant-credentials.js";
|
|
33
37
|
import { QueueHealthStorage } from "./storage/domains/queue-health/base.js";
|
|
34
38
|
import { assembleFactoryApiRoutes, buildIntegrationContext } from "./routes/surface.js";
|
|
35
39
|
import { TelemetryRoutes } from "./routes/telemetry.js";
|
|
@@ -43,6 +47,7 @@ import { SessionRetirementCoordinator } from "./sandbox/session-retirement.js";
|
|
|
43
47
|
import { handleServerError } from "./server-error.js";
|
|
44
48
|
import { observeSessionFirstMessage } from "./session/first-message-capture.js";
|
|
45
49
|
import { LiveSessions } from "./session/live-sessions.js";
|
|
50
|
+
import { createSourceControlTools } from "./session/source-control-tools.js";
|
|
46
51
|
import { observeSessionThreadTitle } from "./session/thread-title-mirror.js";
|
|
47
52
|
import { createSpaStaticMiddleware, resolveUiDistDir } from "./spa-static.js";
|
|
48
53
|
import { createStateSigner } from "./state-signing.js";
|
|
@@ -58,6 +63,7 @@ import { FactoryProjectsStorage } from "./storage/domains/projects/base.js";
|
|
|
58
63
|
import { FactorySupervisorHealthWorker } from "./supervisor/health-worker.js";
|
|
59
64
|
import { SUPERVISOR_INSTRUCTIONS } from "./supervisor/instructions.js";
|
|
60
65
|
import { createFactorySupervisorReadTools } from "./supervisor/read-tools.js";
|
|
66
|
+
import { messageWorkerSession } from "./supervisor/session-messaging.js";
|
|
61
67
|
import { createFactorySupervisorWriteTools } from "./supervisor/write-tools.js";
|
|
62
68
|
import { hasAuthInit, isUserProvider } from "@mastra/core/server";
|
|
63
69
|
import { MastraAuthStudio } from "@mastra/auth-studio";
|
|
@@ -70,9 +76,9 @@ import { EventEmitterPubSub } from "@mastra/core/events";
|
|
|
70
76
|
*
|
|
71
77
|
* The consumer's deploy entry constructs deployment-specific config instances
|
|
72
78
|
* (auth adapter, pubsub) and passes them here explicitly. The only provider
|
|
73
|
-
* defaults constructed here are Platform GitHub, incident.io, and
|
|
74
|
-
* integrations when Platform credentials exist and the caller did not
|
|
75
|
-
* those integrations.
|
|
79
|
+
* defaults constructed here are Platform GitHub, GitLab, Jira, incident.io, and
|
|
80
|
+
* Linear integrations when Platform credentials exist and the caller did not
|
|
81
|
+
* provide those integrations.
|
|
76
82
|
*
|
|
77
83
|
* `prepare()` resolves feature readiness, threads every dependency explicitly,
|
|
78
84
|
* assembles the web routes/middleware, and returns the constructor args for
|
|
@@ -191,7 +197,9 @@ var MastraFactory = class {
|
|
|
191
197
|
const integrations = [...this.#config.integrations ?? []];
|
|
192
198
|
if (hasPlatformCredentials()) {
|
|
193
199
|
if (!integrations.some((integration) => integration.id === "github")) integrations.push(new PlatformGithubIntegration({ slug: this.#config.platform?.githubAppSlug }));
|
|
194
|
-
if (
|
|
200
|
+
if (!integrations.some((integration) => integration.id === "incidentio")) integrations.push(new PlatformIncidentioIntegration());
|
|
201
|
+
if (!integrations.some((integration) => integration.id === "jira")) integrations.push(new PlatformJiraIntegration());
|
|
202
|
+
if (!integrations.some((integration) => integration.id === "gitlab")) integrations.push(new PlatformGitLabIntegration());
|
|
195
203
|
if (!integrations.some((integration) => integration.id === "linear")) integrations.push(new PlatformLinearIntegration());
|
|
196
204
|
}
|
|
197
205
|
const integrationIds = /* @__PURE__ */ new Set();
|
|
@@ -204,7 +212,7 @@ var MastraFactory = class {
|
|
|
204
212
|
const auditStorage = storage.registerDomain(new AuditStorage());
|
|
205
213
|
const workItemsStorage = storage.registerDomain(new WorkItemsStorage());
|
|
206
214
|
workItemsStorage.onAttentionChanged((scope) => touchFeed(eventBus, scope));
|
|
207
|
-
workItemsStorage.useTerminalPhasePredicate((item) =>
|
|
215
|
+
workItemsStorage.useTerminalPhasePredicate((item) => isTerminalWorkItem(this.#boards, item));
|
|
208
216
|
const modelCredentialsStorage = storage.registerDomain(new ModelCredentialsStorage(secretEncryption));
|
|
209
217
|
const modelPacksStorage = storage.registerDomain(new ModelPacksStorage());
|
|
210
218
|
const memorySettingsStorage = storage.registerDomain(new MemorySettingsStorage());
|
|
@@ -273,13 +281,17 @@ var MastraFactory = class {
|
|
|
273
281
|
authEnabled: Boolean(auth)
|
|
274
282
|
});
|
|
275
283
|
for (const integration of integrations) {
|
|
284
|
+
const integrationSourceControl = integration.versionControl ? sourceControlStorage.forIntegration(integration.id) : void 0;
|
|
276
285
|
integration.initialize?.({
|
|
277
286
|
storage: integrationStorage.forIntegration(integration.id),
|
|
278
287
|
projects: factoryProjectsStorage,
|
|
279
|
-
auth: routeAuth
|
|
288
|
+
auth: routeAuth,
|
|
289
|
+
intake: intakeStorage,
|
|
290
|
+
...integrationSourceControl ? { sourceControl: integrationSourceControl } : {}
|
|
280
291
|
});
|
|
281
|
-
if (integration.versionControl) integration.versionControl.initialize({ storage:
|
|
292
|
+
if (integration.versionControl && integrationSourceControl) integration.versionControl.initialize({ storage: integrationSourceControl });
|
|
282
293
|
}
|
|
294
|
+
const sourceControlSessions = createSourceControlSessionLookup([.../* @__PURE__ */ new Set(["github", ...integrations.filter((integration) => integration.versionControl).map(({ id }) => id)])].map((id) => sourceControlStorage.forIntegration(id)));
|
|
283
295
|
const integrationRegistrations = integrations.map((integration) => {
|
|
284
296
|
const requiredDomains = [
|
|
285
297
|
"integrations",
|
|
@@ -298,20 +310,46 @@ var MastraFactory = class {
|
|
|
298
310
|
const factoryReady = storage.isDomainReady("projects") && storage.isDomainReady("work-items");
|
|
299
311
|
const knowledgeEnabled = process.env.MASTRACODE_EXPERIMENTAL_SUBCONSCIOUS === "1";
|
|
300
312
|
const githubIntegration = integrations.find((integration) => integration.id === "github");
|
|
313
|
+
const gitlabIntegration = integrations.find((integration) => integration.id === "gitlab" && integration.intake && integration.versionControl);
|
|
301
314
|
const workItemsReady = storage.isDomainReady("work-items");
|
|
302
315
|
const sessionRetirement = sandboxConfig && storage.isDomainReady("source-control") ? new SessionRetirementCoordinator({ invalidateSession: (sessionId) => workspaceRegistry.invalidateSession(sessionId) }) : void 0;
|
|
303
|
-
const retireTerminalSessions = sessionRetirement &&
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
316
|
+
const retireTerminalSessions = sessionRetirement && workItemsReady ? async ({ orgId, workItemId }) => {
|
|
317
|
+
const item = await workItemsStorage.get({
|
|
318
|
+
orgId,
|
|
319
|
+
id: workItemId
|
|
320
|
+
});
|
|
321
|
+
if (!item) return;
|
|
322
|
+
const sessionIds = [...new Set(Object.values(item.sessions).map((session) => session.sessionId))];
|
|
323
|
+
await Promise.all(sessionIds.map(async (sessionId) => {
|
|
324
|
+
const sourceControl = await sourceControlSessions.getSourceControlBySessionId(sessionId);
|
|
325
|
+
if (!sourceControl) return;
|
|
326
|
+
await sessionRetirement.retireSession({
|
|
327
|
+
sourceControl,
|
|
328
|
+
orgId,
|
|
329
|
+
sessionId,
|
|
330
|
+
deleteSession: false
|
|
331
|
+
});
|
|
332
|
+
}));
|
|
333
|
+
} : void 0;
|
|
334
|
+
const terminalCleanup = workItemsReady ? createTerminalStageCleanup({
|
|
310
335
|
workItems: workItemsStorage,
|
|
311
336
|
reconcileBinding: async (binding) => {
|
|
312
337
|
await factoryProcessor?.reconcileBinding(binding);
|
|
313
338
|
},
|
|
339
|
+
abortSession: async (binding) => {
|
|
340
|
+
const controller = this.#prepared?.base.controller;
|
|
341
|
+
if (!controller) return;
|
|
342
|
+
const session = await controller.getSessionByResource(binding.resourceId);
|
|
343
|
+
if (session?.stream.isActive()) session.abort();
|
|
344
|
+
},
|
|
314
345
|
...retireTerminalSessions ? { releaseSandboxes: retireTerminalSessions } : {}
|
|
346
|
+
}) : void 0;
|
|
347
|
+
const onTerminalStage = terminalCleanup ? (args) => terminalCleanup({
|
|
348
|
+
orgId: args.orgId,
|
|
349
|
+
factoryProjectId: args.factoryProjectId,
|
|
350
|
+
workItemId: args.workItemId,
|
|
351
|
+
revision: args.revision,
|
|
352
|
+
...args.actor.type === "agent" ? { initiatingBindingId: args.actor.bindingId } : {}
|
|
315
353
|
}) : retireTerminalSessions;
|
|
316
354
|
const transitionService = workItemsReady ? new FactoryTransitionService({
|
|
317
355
|
configVersion,
|
|
@@ -333,28 +371,51 @@ var MastraFactory = class {
|
|
|
333
371
|
projects: factoryProjectsStorage,
|
|
334
372
|
sourceControl: sourceControlStorage,
|
|
335
373
|
versionControlIntegrationIds: integrations.filter((integration) => integration.versionControl).map((integration) => integration.id),
|
|
336
|
-
...githubIntegration ? { resolveRepository: async ({ integrationId, orgId, installationId, externalId, slug }) => {
|
|
337
|
-
if (integrationId
|
|
338
|
-
|
|
374
|
+
...githubIntegration || gitlabIntegration ? { resolveRepository: async ({ integrationId, orgId, userId, installationId, externalId, slug }) => {
|
|
375
|
+
if (githubIntegration && integrationId === githubIntegration.id) {
|
|
376
|
+
const installation = await githubIntegration.sourceControlStorage.installations.get({
|
|
377
|
+
orgId,
|
|
378
|
+
id: installationId
|
|
379
|
+
});
|
|
380
|
+
if (!installation) return null;
|
|
381
|
+
const selected = (await githubIntegration.listInstallationRepos(Number(installation.externalId))).find((repo) => repo.id.toString() === externalId && repo.fullName === slug);
|
|
382
|
+
if (!selected) return null;
|
|
383
|
+
return githubIntegration.sourceControlStorage.repositories.upsert({
|
|
384
|
+
orgId,
|
|
385
|
+
input: {
|
|
386
|
+
installationId,
|
|
387
|
+
externalId,
|
|
388
|
+
slug: selected.fullName,
|
|
389
|
+
defaultBranch: isValidGitRef(selected.defaultBranch) ? selected.defaultBranch : "main",
|
|
390
|
+
providerMetadata: {
|
|
391
|
+
private: selected.private,
|
|
392
|
+
owner: selected.owner
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
if (!gitlabIntegration?.intake || !gitlabIntegration.versionControl || integrationId !== gitlabIntegration.id) return null;
|
|
398
|
+
const installation = await sourceControlStorage.forIntegration(gitlabIntegration.id).installations.get({
|
|
339
399
|
orgId,
|
|
340
400
|
id: installationId
|
|
341
401
|
});
|
|
342
402
|
if (!installation) return null;
|
|
343
|
-
const selected = (await
|
|
403
|
+
const selected = (await gitlabIntegration.intake.listSources({
|
|
404
|
+
orgId,
|
|
405
|
+
userId
|
|
406
|
+
})).find((source) => source.name === slug && typeof source.metadata?.projectId === "string" && source.metadata.projectId === externalId && source.metadata.connectionId === installation.externalId);
|
|
344
407
|
if (!selected) return null;
|
|
345
|
-
|
|
408
|
+
const [repository] = await gitlabIntegration.versionControl.registerRepositories({
|
|
346
409
|
orgId,
|
|
347
|
-
|
|
348
|
-
|
|
410
|
+
installationId,
|
|
411
|
+
repositories: [{
|
|
349
412
|
externalId,
|
|
350
|
-
slug
|
|
351
|
-
defaultBranch: isValidGitRef(selected.defaultBranch) ? selected.defaultBranch : "main",
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
owner: selected.owner
|
|
355
|
-
}
|
|
356
|
-
}
|
|
413
|
+
slug,
|
|
414
|
+
defaultBranch: typeof selected.metadata?.defaultBranch === "string" && isValidGitRef(selected.metadata.defaultBranch) ? selected.metadata.defaultBranch : "main",
|
|
415
|
+
metadata: selected.metadata
|
|
416
|
+
}]
|
|
357
417
|
});
|
|
418
|
+
return repository ?? null;
|
|
358
419
|
} } : {},
|
|
359
420
|
...sessionRetirement ? { sessionRetirement } : {},
|
|
360
421
|
...workItemsReady ? { workItems: workItemsStorage } : {}
|
|
@@ -381,13 +442,23 @@ var MastraFactory = class {
|
|
|
381
442
|
}
|
|
382
443
|
})();
|
|
383
444
|
const toolIntegrations = integrationRegistrations.filter(({ integration }) => integration.agentTools || integration.sessionTools);
|
|
445
|
+
const sourceControlToolProviders = integrations.flatMap((integration) => integration.versionControl ? [{
|
|
446
|
+
id: integration.id,
|
|
447
|
+
versionControl: integration.versionControl,
|
|
448
|
+
storage: sourceControlStorage.forIntegration(integration.id)
|
|
449
|
+
}] : []);
|
|
384
450
|
const prepared = await timedPhase("prepare.controllerMount", () => prepareAgentControllerMount({
|
|
385
451
|
controllerId: CONTROLLER_ID,
|
|
386
452
|
coAuthor: { name: "mastra-platform[bot]" },
|
|
387
453
|
workspace: createWorkspaceFactory({
|
|
388
454
|
...sandboxConfig ? { sandbox: sandboxConfig } : {},
|
|
389
455
|
...this.#config.sandboxStart ? { sandboxStart: this.#config.sandboxStart } : {},
|
|
390
|
-
|
|
456
|
+
sourceControls: integrations.flatMap((integration) => integration.versionControl ? [{
|
|
457
|
+
id: integration.id,
|
|
458
|
+
versionControl: integration.versionControl,
|
|
459
|
+
storage: sourceControlStorage.forIntegration(integration.id),
|
|
460
|
+
...integration.id === "github" && githubIntegration ? { github: githubIntegration } : {}
|
|
461
|
+
}] : []),
|
|
391
462
|
...factoryProjectsStorage ? { projects: factoryProjectsStorage } : {},
|
|
392
463
|
...workItemsStorage ? { workItems: workItemsStorage } : {},
|
|
393
464
|
workspaceRegistry
|
|
@@ -408,7 +479,7 @@ var MastraFactory = class {
|
|
|
408
479
|
...mastraStorageBackend ? { storageBackend: mastraStorageBackend } : {},
|
|
409
480
|
...factoryProcessor ? { inputProcessors: [factoryProcessor] } : {},
|
|
410
481
|
...vector ? { vector } : {},
|
|
411
|
-
...toolIntegrations.length > 0 || workItemsStorage && transitionService ? { extraTools: async ({ requestContext }) => {
|
|
482
|
+
...toolIntegrations.length > 0 || sourceControlToolProviders.length > 0 || workItemsStorage && transitionService ? { extraTools: async ({ requestContext }) => {
|
|
412
483
|
const tools = {};
|
|
413
484
|
const toolOwners = /* @__PURE__ */ new Map();
|
|
414
485
|
const mergeTools = (ownerId, contributed) => {
|
|
@@ -419,12 +490,18 @@ var MastraFactory = class {
|
|
|
419
490
|
tools[name] = tool;
|
|
420
491
|
}
|
|
421
492
|
};
|
|
493
|
+
if (storage.isDomainReady("source-control")) mergeTools("source-control", createSourceControlTools({
|
|
494
|
+
requestContext,
|
|
495
|
+
providers: sourceControlToolProviders,
|
|
496
|
+
audit: auditDomain
|
|
497
|
+
}));
|
|
422
498
|
if (workItemsStorage && transitionService) {
|
|
423
499
|
mergeTools("factory", await createFactoryTransitionTools({
|
|
424
500
|
requestContext,
|
|
425
501
|
storage: workItemsStorage,
|
|
426
502
|
transitionService,
|
|
427
|
-
|
|
503
|
+
boards: this.#boards,
|
|
504
|
+
...storage.isDomainReady("source-control") ? { sessions: sourceControlSessions } : {}
|
|
428
505
|
}));
|
|
429
506
|
const supervisorScope = await resolveSupervisorScope({
|
|
430
507
|
requestContext,
|
|
@@ -453,14 +530,13 @@ var MastraFactory = class {
|
|
|
453
530
|
audit: auditDomain,
|
|
454
531
|
transitionService,
|
|
455
532
|
...githubIntegration ? { reconcileAcceptanceLabels: (args) => reconcileGithubAcceptanceLabels(githubIntegration, sourceControlStorage.forIntegration(githubIntegration.id), args) } : {},
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
}
|
|
533
|
+
messageSession: ({ sessionId, message, delivery }) => messageWorkerSession({
|
|
534
|
+
controller: prepared.base.controller,
|
|
535
|
+
sessionId,
|
|
536
|
+
message,
|
|
537
|
+
delivery,
|
|
538
|
+
...requestContext ? { requestContext } : {}
|
|
539
|
+
})
|
|
464
540
|
}));
|
|
465
541
|
}
|
|
466
542
|
}
|
|
@@ -584,7 +660,11 @@ var MastraFactory = class {
|
|
|
584
660
|
}),
|
|
585
661
|
...projectRoutes.routes(),
|
|
586
662
|
...auditDomain.routes(),
|
|
587
|
-
...commentsDomain.routes()
|
|
663
|
+
...commentsDomain.routes(),
|
|
664
|
+
...hasPlatformCredentials() ? buildPlatformConnectRoutes({
|
|
665
|
+
auth: routeAuth,
|
|
666
|
+
client: new PlatformApiClient(platformApiClientConfigFromEnv())
|
|
667
|
+
}) : []
|
|
588
668
|
],
|
|
589
669
|
buildServerConfig: () => {
|
|
590
670
|
const cors = allowedOrigins.length ? { cors: {
|
|
@@ -626,11 +706,11 @@ var MastraFactory = class {
|
|
|
626
706
|
prepared.base.controller.onSessionCreated((session) => {
|
|
627
707
|
observeSessionFilesystem(session, {
|
|
628
708
|
filesystem: filesystemStorage,
|
|
629
|
-
sourceControl:
|
|
709
|
+
sourceControl: { sessions: sourceControlSessions }
|
|
630
710
|
});
|
|
631
|
-
observeSessionFirstMessage(session, { sourceControl:
|
|
632
|
-
observeSessionFirstExec(session, { sourceControl:
|
|
633
|
-
observeSessionThreadTitle(session, { sourceControl:
|
|
711
|
+
observeSessionFirstMessage(session, { sourceControl: { sessions: sourceControlSessions } });
|
|
712
|
+
observeSessionFirstExec(session, { sourceControl: { sessions: sourceControlSessions } });
|
|
713
|
+
observeSessionThreadTitle(session, { sourceControl: { sessions: sourceControlSessions } });
|
|
634
714
|
observeSessionRunEnd(session, { audit: auditDomain });
|
|
635
715
|
});
|
|
636
716
|
prepared.base.controller.onSessionCreated((session) => hydrateSupervisorSession(session, {
|
|
@@ -640,12 +720,12 @@ var MastraFactory = class {
|
|
|
640
720
|
console.warn("[Factory Supervisor] Failed to hydrate supervisor session", { error: error instanceof Error ? error.message : String(error) });
|
|
641
721
|
}), { blocking: true });
|
|
642
722
|
prepared.base.controller.onSessionCreated((session) => hydrateSessionMemorySettings(session, {
|
|
643
|
-
sourceControl:
|
|
723
|
+
sourceControl: { sessions: sourceControlSessions },
|
|
644
724
|
projects: factoryProjectsStorage,
|
|
645
725
|
memorySettings: memorySettingsStorage
|
|
646
726
|
}), { blocking: true });
|
|
647
727
|
prepared.base.controller.onSessionCreated((session) => hydrateSessionModelPack(session, {
|
|
648
|
-
sourceControl:
|
|
728
|
+
sourceControl: { sessions: sourceControlSessions },
|
|
649
729
|
workItems: workItemsStorage,
|
|
650
730
|
modelPacks: modelPacksStorage
|
|
651
731
|
}), { blocking: true });
|
|
@@ -663,6 +743,7 @@ var MastraFactory = class {
|
|
|
663
743
|
factoryStorage: storage,
|
|
664
744
|
integrationStorage,
|
|
665
745
|
sourceControlStorage,
|
|
746
|
+
integrations: integrationRegistrations,
|
|
666
747
|
configVersion,
|
|
667
748
|
boardRegistry: this.#boards,
|
|
668
749
|
factoryReady,
|
|
@@ -682,6 +763,7 @@ var MastraFactory = class {
|
|
|
682
763
|
factoryStorage: storage,
|
|
683
764
|
integrationStorage,
|
|
684
765
|
sourceControlStorage,
|
|
766
|
+
integrations: integrationRegistrations,
|
|
685
767
|
configVersion,
|
|
686
768
|
boardRegistry: this.#boards,
|
|
687
769
|
factoryReady,
|
|
@@ -705,6 +787,7 @@ var MastraFactory = class {
|
|
|
705
787
|
factoryStorage: storage,
|
|
706
788
|
integrationStorage,
|
|
707
789
|
sourceControlStorage,
|
|
790
|
+
integrations: integrationRegistrations,
|
|
708
791
|
configVersion,
|
|
709
792
|
boardRegistry: this.#boards,
|
|
710
793
|
factoryReady,
|