@mastra/factory 0.23.0-alpha.9 → 0.24.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/README.md +3 -3
  2. package/dist/factory.d.ts.map +1 -1
  3. package/dist/factory.js +15 -65
  4. package/dist/factory.js.map +1 -1
  5. package/dist/index.js +2 -2
  6. package/dist/integrations/github/session-subscriptions.js +1 -1
  7. package/dist/integrations/slack/slack.js +1 -1
  8. package/dist/routes/attention-providers.d.ts +0 -17
  9. package/dist/routes/attention-providers.d.ts.map +1 -1
  10. package/dist/routes/attention-providers.js +2 -128
  11. package/dist/routes/attention-providers.js.map +1 -1
  12. package/dist/routes/attention.d.ts.map +1 -1
  13. package/dist/routes/attention.js +1 -2
  14. package/dist/routes/attention.js.map +1 -1
  15. package/dist/routes/config.d.ts +0 -28
  16. package/dist/routes/config.d.ts.map +1 -1
  17. package/dist/routes/config.js +4 -78
  18. package/dist/routes/config.js.map +1 -1
  19. package/dist/routes/contracts.d.ts +19 -35
  20. package/dist/routes/contracts.d.ts.map +1 -1
  21. package/dist/routes/contracts.js +4 -24
  22. package/dist/routes/contracts.js.map +1 -1
  23. package/dist/routes/projects.d.ts.map +1 -1
  24. package/dist/routes/projects.js +3 -2
  25. package/dist/routes/projects.js.map +1 -1
  26. package/dist/routes/surface.d.ts +0 -2
  27. package/dist/routes/surface.d.ts.map +1 -1
  28. package/dist/routes/surface.js +4 -5
  29. package/dist/routes/surface.js.map +1 -1
  30. package/dist/routes/work-items.d.ts.map +1 -1
  31. package/dist/routes/work-items.js +1 -7
  32. package/dist/routes/work-items.js.map +1 -1
  33. package/dist/rules/processor.d.ts +3 -0
  34. package/dist/rules/processor.d.ts.map +1 -1
  35. package/dist/rules/processor.js +3 -3
  36. package/dist/rules/processor.js.map +1 -1
  37. package/dist/session/credential-policy.d.ts.map +1 -1
  38. package/dist/session/credential-policy.js +0 -15
  39. package/dist/session/credential-policy.js.map +1 -1
  40. package/dist/session/factory-session.js +2 -2
  41. package/dist/session/thinking-default.d.ts +18 -0
  42. package/dist/session/thinking-default.d.ts.map +1 -0
  43. package/dist/session/thinking-default.js +42 -0
  44. package/dist/session/thinking-default.js.map +1 -0
  45. package/dist/storage/domains/audit/domain.d.ts +1 -1
  46. package/dist/storage/domains/audit/domain.d.ts.map +1 -1
  47. package/dist/storage/domains/audit/domain.js.map +1 -1
  48. package/dist/storage/domains/projects/base.d.ts +5 -0
  49. package/dist/storage/domains/projects/base.d.ts.map +1 -1
  50. package/dist/storage/domains/projects/base.js +11 -3
  51. package/dist/storage/domains/projects/base.js.map +1 -1
  52. package/dist/storage/domains/work-items/base.d.ts +1 -36
  53. package/dist/storage/domains/work-items/base.d.ts.map +1 -1
  54. package/dist/storage/domains/work-items/base.js +2 -144
  55. package/dist/storage/domains/work-items/base.js.map +1 -1
  56. package/dist/telemetry-types.d.ts +1 -1
  57. package/dist/telemetry-types.d.ts.map +1 -1
  58. package/dist/telemetry-types.js +0 -1
  59. package/dist/telemetry-types.js.map +1 -1
  60. package/dist/workspace.d.ts +1 -1
  61. package/dist/workspace.d.ts.map +1 -1
  62. package/dist/workspace.js +1 -11
  63. package/dist/workspace.js.map +1 -1
  64. package/factory-skills/configure-factory-rules/SKILL.md +2 -2
  65. package/package.json +12 -12
  66. package/dist/routes/supervisor.d.ts +0 -25
  67. package/dist/routes/supervisor.d.ts.map +0 -1
  68. package/dist/routes/supervisor.js +0 -35
  69. package/dist/routes/supervisor.js.map +0 -1
  70. package/dist/supervisor/health-worker.d.ts +0 -19
  71. package/dist/supervisor/health-worker.d.ts.map +0 -1
  72. package/dist/supervisor/health-worker.js +0 -74
  73. package/dist/supervisor/health-worker.js.map +0 -1
  74. package/dist/supervisor/health.d.ts +0 -79
  75. package/dist/supervisor/health.d.ts.map +0 -1
  76. package/dist/supervisor/health.js +0 -228
  77. package/dist/supervisor/health.js.map +0 -1
  78. package/dist/supervisor/instructions.d.ts +0 -6
  79. package/dist/supervisor/instructions.d.ts.map +0 -1
  80. package/dist/supervisor/instructions.js +0 -66
  81. package/dist/supervisor/instructions.js.map +0 -1
  82. package/dist/supervisor/read-tools.d.ts +0 -43
  83. package/dist/supervisor/read-tools.d.ts.map +0 -1
  84. package/dist/supervisor/read-tools.js +0 -343
  85. package/dist/supervisor/read-tools.js.map +0 -1
  86. package/dist/supervisor/session-messaging.d.ts +0 -26
  87. package/dist/supervisor/session-messaging.d.ts.map +0 -1
  88. package/dist/supervisor/session-messaging.js +0 -21
  89. package/dist/supervisor/session-messaging.js.map +0 -1
  90. package/dist/supervisor/session.d.ts +0 -38
  91. package/dist/supervisor/session.d.ts.map +0 -1
  92. package/dist/supervisor/session.js +0 -79
  93. package/dist/supervisor/session.js.map +0 -1
  94. package/dist/supervisor/write-tools.d.ts +0 -30
  95. package/dist/supervisor/write-tools.d.ts.map +0 -1
  96. package/dist/supervisor/write-tools.js +0 -231
  97. package/dist/supervisor/write-tools.js.map +0 -1
package/README.md CHANGED
@@ -300,9 +300,9 @@ const releaseBoard = defineBoard({
300
300
 
301
301
  Work declares `intake` resting; `triage`, `planning`, `execute`, and `review` working with roles `triage`, `plan`, `work`, and `work`; `done` and `canceled` terminal. Review declares `intake` resting, `review` working with role `review`, and `done`/`canceled` terminal. The definition exposes the derived helpers `phaseKind`, `isWorking`, `isTerminal`, `roleForPhase`, and `phaseForRole`.
302
302
 
303
- Consent, the external-author guard, kickoff seating, run-start lanes, terminal cleanup, the closed-PR and issue sweeps, and supervisor findings all read the installed board's declarations; nothing name-matches phases. A board that reuses Work's phase names gets exactly what it declared. Persisted `board` is authoritative; rows without one are read as Review for pull requests and Work otherwise.
303
+ Consent, the external-author guard, kickoff seating, run-start lanes, terminal cleanup, and the closed-PR and issue sweeps all read the installed board's declarations; nothing name-matches phases. A board that reuses Work's phase names gets exactly what it declared. Persisted `board` is authoritative; rows without one are read as Review for pull requests and Work otherwise.
304
304
 
305
- Unknown semantics fail closed. When the board is not installed or the phase is not declared: external-event transitions ask for consent, no sweep or cleanup treats the card as finished, the supervisor neither revokes nor starts a seat for it, and a rule-started run from rest with no lane for its role is rejected.
305
+ Unknown semantics fail closed. When the board is not installed or the phase is not declared: external-event transitions ask for consent, no sweep or cleanup treats the card as finished, and a rule-started run from rest with no lane for its role is rejected.
306
306
 
307
307
  **Migration:** Existing `defineBoard()` calls must add `kind` to every phase and `role` to working phases.
308
308
 
@@ -316,7 +316,7 @@ phases: {
316
316
  }
317
317
  ```
318
318
 
319
- **Remaining limitations:** The `held-waiting` supervisor finding stays Work-specific. Throughput and lead-time metrics still count completions by Work's `done` phase. `factory-ui` still renders the built-in stage and role pipeline. Built-in board replacement and customization remain unsupported.
319
+ **Remaining limitations:** Throughput and lead-time metrics still count completions by Work's `done` phase. `factory-ui` still renders the built-in stage and role pipeline. Built-in board replacement and customization remain unsupported.
320
320
 
321
321
  ### Execute a custom board
322
322
 
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
package/dist/factory.js CHANGED
@@ -6,14 +6,6 @@ import { createBoardRegistry } from "./boards/registry.js";
6
6
  import "./boards/index.js";
7
7
  import { isValidGitRef } from "./sandbox/git-ref.js";
8
8
  import { FactoryEnvironmentStateProcessor } from "./session/environment-state-processor.js";
9
- import { createPlaintextFactorySecretEncryption } from "./secret-encryption.js";
10
- import { ModelCredentialsStorage } from "./storage/domains/credentials/base.js";
11
- import { createTenantCredentialPrimer, primeTenantCredentials, registerTenantCredentialResolver } from "./routes/tenant-credentials.js";
12
- import { FactoryProjectsStorage } from "./storage/domains/projects/base.js";
13
- import { SourceControlStorage } from "./storage/domains/source-control/base.js";
14
- import { environmentSlugs, resolveSessionRepositories } from "./session/environment-repositories.js";
15
- import { createSourceControlSessionLookup } from "./session/factory-session.js";
16
- import { hydrateSupervisorSession, parseSupervisorResourceId, resolveSupervisorScope } from "./supervisor/session.js";
17
9
  import { FactoryWorkspaceRegistry, createWorkspaceFactory } from "./workspace.js";
18
10
  import { ENVIRONMENT_BUILD_WORKFLOW_ID } from "./environment/build-workflow.js";
19
11
  import { EnvironmentBuildRunner } from "./environment/build-runner.js";
@@ -22,24 +14,31 @@ import { reconcileGithubAcceptanceLabels } from "./integrations/github/acceptanc
22
14
  import { WorkItemsStorage } from "./storage/domains/work-items/base.js";
23
15
  import { IntakeStorage } from "./storage/domains/intake/base.js";
24
16
  import { isFactoryGithubLogin, trustedCollaborator } from "./integrations/github/rules.js";
17
+ import { environmentSlugs, resolveSessionRepositories } from "./session/environment-repositories.js";
25
18
  import { recordFactoryPullRequestProvenance, resolveFactoryPullRequestParentWorkItemId } from "./integrations/github/provenance.js";
26
19
  import { dismissStaleFactoryReviews } from "./integrations/github/stale-reviews.js";
27
20
  import { PlatformApiClient, platformApiClientConfigFromEnv } from "./integrations/platform/api-client.js";
28
21
  import { buildPlatformConnectRoutes } from "./integrations/platform/connect/routes.js";
29
22
  import { observeSessionFirstExec } from "./session/first-exec-capture.js";
30
23
  import { observeSessionFilesystem } from "./session/filesystem-capture.js";
24
+ import { createPlaintextFactorySecretEncryption } from "./secret-encryption.js";
25
+ import { ModelCredentialsStorage } from "./storage/domains/credentials/base.js";
26
+ import { createTenantCredentialPrimer, primeTenantCredentials, registerTenantCredentialResolver } from "./routes/tenant-credentials.js";
31
27
  import { prepareSessionRunContext } from "./integrations/subscription-session.js";
32
28
  import { PlatformGithubIntegration } from "./integrations/platform/github/integration.js";
33
29
  import { PlatformGitLabIntegration } from "./integrations/platform/gitlab/integration.js";
34
30
  import { PlatformIncidentioIntegration } from "./integrations/platform/incidentio/integration.js";
35
31
  import { PlatformJiraIntegration } from "./integrations/platform/jira/integration.js";
36
32
  import { PlatformLinearIntegration } from "./integrations/platform/linear/integration.js";
33
+ import { FactoryProjectsStorage } from "./storage/domains/projects/base.js";
37
34
  import { resolveFactoryCredentialTenant } from "./session/credential-policy.js";
38
35
  import { hydrateSessionMemorySettings, layerPersonalMemorySettings } from "./session/memory-settings-hydration.js";
39
36
  import { MemorySettingsStorage, factoryMemorySettingsUserId } from "./storage/domains/memory-settings/base.js";
40
37
  import { resolveDeploymentModelProviders } from "./routes/config.js";
41
38
  import { createCustomProvidersPrimer, registerCustomProvidersSource } from "./routes/custom-provider-source.js";
42
39
  import { ProjectRoutes } from "./routes/projects.js";
40
+ import { SourceControlStorage } from "./storage/domains/source-control/base.js";
41
+ import { createSourceControlSessionLookup } from "./session/factory-session.js";
43
42
  import { FactoryTransitionService } from "./rules/transition-service.js";
44
43
  import { AuditStorage } from "./storage/domains/audit/base.js";
45
44
  import { AuditDomain } from "./storage/domains/audit/domain.js";
@@ -61,6 +60,7 @@ import { hydrateSessionDefaultModel } from "./session/default-model-hydration.js
61
60
  import { observeSessionFirstMessage } from "./session/first-message-capture.js";
62
61
  import { LiveSessions } from "./session/live-sessions.js";
63
62
  import { createSourceControlTools } from "./session/source-control-tools.js";
63
+ import { readFactoryThinkingLevel, resolveFactoryThinkingLevel } from "./session/thinking-default.js";
64
64
  import { observeSessionThreadTitle } from "./session/thread-title-mirror.js";
65
65
  import { createSpaStaticMiddleware, resolveUiDistDir } from "./spa-static.js";
66
66
  import { createStateSigner } from "./state-signing.js";
@@ -72,11 +72,6 @@ import { CustomProvidersStorage } from "./storage/domains/custom-providers/base.
72
72
  import { FilesystemStorage } from "./storage/domains/filesystem/base.js";
73
73
  import { IntegrationStorage } from "./storage/domains/integrations/base.js";
74
74
  import { ModelDefaultsStorage } from "./storage/domains/model-defaults/base.js";
75
- import { FactorySupervisorHealthWorker } from "./supervisor/health-worker.js";
76
- import { SUPERVISOR_INSTRUCTIONS } from "./supervisor/instructions.js";
77
- import { createFactorySupervisorReadTools } from "./supervisor/read-tools.js";
78
- import { messageWorkerSession } from "./supervisor/session-messaging.js";
79
- import { createFactorySupervisorWriteTools } from "./supervisor/write-tools.js";
80
75
  import { hasAuthInit, isUserProvider } from "@mastra/core/server";
81
76
  import { MastraAuthStudio } from "@mastra/auth-studio";
82
77
  import { prepareAgentControllerMount } from "@mastra/code-sdk";
@@ -377,7 +372,6 @@ var MastraFactory = class {
377
372
  const intakeReady = integrations.some((integration) => integration.intake !== void 0) && storage.isDomainReady("intake");
378
373
  const factoryReady = storage.isDomainReady("projects") && storage.isDomainReady("work-items");
379
374
  const knowledgeEnabled = this.#config.knowledge !== void 0 || process.env.MASTRACODE_EXPERIMENTAL_SUBCONSCIOUS === "1";
380
- const deploymentOrganizationId = process.env.MASTRACODE_DEPLOYMENT_ORGANIZATION_ID?.trim() || void 0;
381
375
  const githubIntegration = integrations.find((integration) => integration.id === "github");
382
376
  const gitlabIntegration = integrations.find((integration) => integration.id === "gitlab" && integration.intake && integration.versionControl);
383
377
  const workItemsReady = storage.isDomainReady("work-items");
@@ -546,6 +540,7 @@ var MastraFactory = class {
546
540
  storage: workItemsStorage,
547
541
  boards: this.#boards,
548
542
  loadMemorySettings,
543
+ factoryThinkingLevel: (factoryProjectId) => readFactoryThinkingLevel(factoryProjectsStorage, factoryProjectId),
549
544
  ...transitionService ? { transitionService } : {},
550
545
  ...githubIntegration ? { recordPullRequestProvenance: (input) => recordFactoryPullRequestProvenance(githubIntegration, sourceControlStorage.forIntegration("github"), integrationStorage.forIntegration("github"), workItemsStorage, input) } : {},
551
546
  messageReader: { listMessages: async (input) => {
@@ -574,6 +569,10 @@ var MastraFactory = class {
574
569
  coAuthor: { name: "mastra-platform[bot]" },
575
570
  ...this.#config.disableBuiltinTools?.length ? { disableBuiltinTools: this.#config.disableBuiltinTools } : {},
576
571
  modes: false,
572
+ resolveDefaultThinkingLevel: ({ requestContext }) => resolveFactoryThinkingLevel(requestContext, {
573
+ projects: factoryProjectsStorage,
574
+ sourceControl: sourceControlSessions
575
+ }),
577
576
  workspace: createWorkspaceFactory({
578
577
  ...sandboxConfig ? { sandbox: sandboxConfig } : {},
579
578
  ...this.#config.sandboxStart ? { sandboxStart: this.#config.sandboxStart } : {},
@@ -595,7 +594,6 @@ var MastraFactory = class {
595
594
  disableSettingsOmSeed: true,
596
595
  hostInstructions: async ({ requestContext }) => {
597
596
  const context = requestContext.get("controller");
598
- if (parseSupervisorResourceId(context?.resourceId)) return SUPERVISOR_INSTRUCTIONS;
599
597
  if (context?.threadId && context.resourceId) {
600
598
  const current = context.getState();
601
599
  if (!(Boolean(current.factoryProjectId) && Boolean(current.factoryOrgId) && typeof current.untrustedCheckout === "boolean")) {
@@ -670,43 +668,6 @@ var MastraFactory = class {
670
668
  uiOrigin: reviewSourceUiOrigin,
671
669
  ...storage.isDomainReady("source-control") ? { sessions: sourceControlSessions } : {}
672
670
  }));
673
- const supervisorScope = await resolveSupervisorScope({
674
- requestContext,
675
- projects: factoryProjectsStorage
676
- });
677
- if (supervisorScope) {
678
- const userId = getFactoryAuthUserId(getFactoryAuthUserFromContext(requestContext));
679
- mergeTools("factory-supervisor", createFactorySupervisorReadTools({
680
- scope: supervisorScope,
681
- workItems: workItemsStorage,
682
- boards: this.#boards,
683
- comments: workItemCommentsStorage,
684
- audit: auditStorage,
685
- messageReader: { listMessages: async (input) => {
686
- const memory = await storage.getMastraStorage().getStore("memory");
687
- return memory ? memory.listMessages(input) : {
688
- messages: [],
689
- hasMore: false
690
- };
691
- } }
692
- }));
693
- if (userId) mergeTools("factory-supervisor-write", createFactorySupervisorWriteTools({
694
- scope: supervisorScope,
695
- userId,
696
- workItems: workItemsStorage,
697
- boards: this.#boards,
698
- audit: auditDomain,
699
- transitionService,
700
- ...githubIntegration ? { reconcileAcceptanceLabels: (args) => reconcileGithubAcceptanceLabels(githubIntegration, sourceControlStorage.forIntegration(githubIntegration.id), args) } : {},
701
- messageSession: ({ sessionId, message, delivery }) => messageWorkerSession({
702
- controller: prepared.base.controller,
703
- sessionId,
704
- message,
705
- delivery,
706
- ...requestContext ? { requestContext } : {}
707
- })
708
- }));
709
- }
710
671
  }
711
672
  for (const { integration, ready, ensureReady } of toolIntegrations) {
712
673
  if (!ready && ensureReady) try {
@@ -785,7 +746,6 @@ var MastraFactory = class {
785
746
  intakeReady,
786
747
  factoryReady,
787
748
  knowledgeEnabled,
788
- deploymentOrganizationId,
789
749
  deploymentModelProviders,
790
750
  knowledgeKey: this.#config.knowledge?.key,
791
751
  configVersion,
@@ -897,12 +857,6 @@ var MastraFactory = class {
897
857
  observeSessionThreadTitle(session, { sourceControl: { sessions: sourceControlSessions } });
898
858
  observeSessionRunEnd(session, { audit: auditDomain });
899
859
  });
900
- prepared.base.controller.onSessionCreated((session) => hydrateSupervisorSession(session, {
901
- projects: factoryProjectsStorage,
902
- modelDefaults: modelDefaultsStorage
903
- }).catch((error) => {
904
- console.warn("[Factory Supervisor] Failed to hydrate supervisor session", { error: error instanceof Error ? error.message : String(error) });
905
- }), { blocking: true });
906
860
  prepared.base.controller.onSessionCreated((session) => hydrateSessionMemorySettings(session, { sourceControl: { sessions: sourceControlSessions } }), { blocking: true });
907
861
  prepared.base.controller.onSessionCreated((session) => hydrateSessionDefaultModel(session, {
908
862
  sourceControl: sourceControlSessions,
@@ -955,11 +909,7 @@ var MastraFactory = class {
955
909
  const publisher = integration.feedPublisher(context);
956
910
  if (publisher) feedPublishers.push(publisher);
957
911
  }
958
- const integrationWorkers = [...factoryReady ? [new FactorySupervisorHealthWorker({
959
- projects: factoryProjectsStorage,
960
- workItems: workItemsStorage,
961
- boards: this.#boards
962
- })] : [], ...integrationRegistrations.filter(({ integration, ready }) => ready && integration.workers).flatMap(({ integration }) => integration.workers(buildIntegrationContext({
912
+ const integrationWorkers = integrationRegistrations.filter(({ integration, ready }) => ready && integration.workers).flatMap(({ integration }) => integration.workers(buildIntegrationContext({
963
913
  controller: prepared.base.controller,
964
914
  publicOrigin,
965
915
  auth: routeAuth,
@@ -975,7 +925,7 @@ var MastraFactory = class {
975
925
  domains,
976
926
  feed: commentsDomain,
977
927
  ...githubIntegration ? { sourceControlOwnerId: "github" } : {}
978
- }, integration.id)))];
928
+ }, integration.id)));
979
929
  return {
980
930
  ...prepared.mastraArgs,
981
931
  ...auth ? { studio: { auth } } : {},