n8n 2.45.0 → 2.45.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/dist/auth/auth.service.d.ts +4 -2
  2. package/dist/auth/auth.service.js +8 -3
  3. package/dist/auth/auth.service.js.map +1 -1
  4. package/dist/build.tsbuildinfo +1 -1
  5. package/dist/commands/base-command.d.ts +2 -0
  6. package/dist/commands/base-command.js +35 -1
  7. package/dist/commands/base-command.js.map +1 -1
  8. package/dist/load-nodes-and-credentials.d.ts +1 -0
  9. package/dist/load-nodes-and-credentials.js +8 -2
  10. package/dist/load-nodes-and-credentials.js.map +1 -1
  11. package/dist/modules/agents/agent-modification-telemetry.service.d.ts +3 -1
  12. package/dist/modules/agents/agent-modification-telemetry.service.js +10 -2
  13. package/dist/modules/agents/agent-modification-telemetry.service.js.map +1 -1
  14. package/dist/modules/agents/agents.service.js +10 -5
  15. package/dist/modules/agents/agents.service.js.map +1 -1
  16. package/dist/modules/agents/builder/get-resource-locator-options.tool.d.ts +2 -2
  17. package/dist/modules/agents/repositories/agent.repository.d.ts +5 -0
  18. package/dist/modules/agents/repositories/agent.repository.js +48 -10
  19. package/dist/modules/agents/repositories/agent.repository.js.map +1 -1
  20. package/dist/modules/agents/utils/agent-ref.d.ts +3 -1
  21. package/dist/modules/agents/utils/agent-ref.js +3 -2
  22. package/dist/modules/agents/utils/agent-ref.js.map +1 -1
  23. package/dist/modules/breaking-changes/breaking-changes.controller.d.ts +12 -7
  24. package/dist/modules/breaking-changes/breaking-changes.controller.js +63 -14
  25. package/dist/modules/breaking-changes/breaking-changes.controller.js.map +1 -1
  26. package/dist/modules/breaking-changes/breaking-changes.migration.service.d.ts +1 -0
  27. package/dist/modules/breaking-changes/breaking-changes.migration.service.js +3 -2
  28. package/dist/modules/breaking-changes/breaking-changes.migration.service.js.map +1 -1
  29. package/dist/modules/breaking-changes/migration-report-csv.d.ts +3 -0
  30. package/dist/modules/breaking-changes/migration-report-csv.js +66 -0
  31. package/dist/modules/breaking-changes/migration-report-csv.js.map +1 -0
  32. package/dist/modules/breaking-changes/owners/migration-owner-assignment.service.d.ts +2 -1
  33. package/dist/modules/breaking-changes/owners/migration-owner-assignment.service.js +18 -1
  34. package/dist/modules/breaking-changes/owners/migration-owner-assignment.service.js.map +1 -1
  35. package/dist/modules/breaking-changes/owners/migration-owner-suggestion.service.js +2 -1
  36. package/dist/modules/breaking-changes/owners/migration-owner-suggestion.service.js.map +1 -1
  37. package/dist/modules/breaking-changes/owners/workflow-owner.d.ts +1 -0
  38. package/dist/modules/breaking-changes/owners/workflow-owner.js +4 -0
  39. package/dist/modules/breaking-changes/owners/workflow-owner.js.map +1 -1
  40. package/dist/modules/instance-ai/instance-ai.adapter.service.js +9 -1
  41. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  42. package/dist/modules/mcp/mcp-api-key.service.js +4 -1
  43. package/dist/modules/mcp/mcp-api-key.service.js.map +1 -1
  44. package/dist/modules/mcp/mcp.controller.js +2 -0
  45. package/dist/modules/mcp/mcp.controller.js.map +1 -1
  46. package/dist/modules/mcp/mcp.service.d.ts +1 -0
  47. package/dist/modules/mcp/mcp.service.js +18 -2
  48. package/dist/modules/mcp/mcp.service.js.map +1 -1
  49. package/dist/modules/mcp-discovery/activity-events.service.d.ts +14 -0
  50. package/dist/modules/mcp-discovery/activity-events.service.js +67 -0
  51. package/dist/modules/mcp-discovery/activity-events.service.js.map +1 -0
  52. package/dist/modules/mcp-discovery/activity.service.d.ts +16 -0
  53. package/dist/modules/mcp-discovery/activity.service.js +71 -0
  54. package/dist/modules/mcp-discovery/activity.service.js.map +1 -0
  55. package/dist/modules/mcp-discovery/eligibility.d.ts +21 -0
  56. package/dist/modules/mcp-discovery/eligibility.js +31 -0
  57. package/dist/modules/mcp-discovery/eligibility.js.map +1 -0
  58. package/dist/modules/mcp-discovery/enrollment.service.d.ts +19 -0
  59. package/dist/modules/mcp-discovery/enrollment.service.js +100 -0
  60. package/dist/modules/mcp-discovery/enrollment.service.js.map +1 -0
  61. package/dist/modules/mcp-discovery/events.d.ts +29 -0
  62. package/dist/modules/mcp-discovery/events.js +3 -0
  63. package/dist/modules/mcp-discovery/events.js.map +1 -0
  64. package/dist/modules/mcp-discovery/mcp-discovery.controller.d.ts +9 -0
  65. package/dist/modules/mcp-discovery/mcp-discovery.controller.js +39 -0
  66. package/dist/modules/mcp-discovery/mcp-discovery.controller.js.map +1 -0
  67. package/dist/modules/mcp-discovery/mcp-discovery.dto.d.ts +11 -0
  68. package/dist/modules/mcp-discovery/mcp-discovery.dto.js +12 -0
  69. package/dist/modules/mcp-discovery/mcp-discovery.dto.js.map +1 -0
  70. package/dist/modules/mcp-discovery/mcp-discovery.module.d.ts +4 -0
  71. package/dist/modules/mcp-discovery/mcp-discovery.module.js +26 -0
  72. package/dist/modules/mcp-discovery/mcp-discovery.module.js.map +1 -0
  73. package/dist/modules/mcp-discovery/types.d.ts +6 -0
  74. package/dist/modules/mcp-discovery/types.js +3 -0
  75. package/dist/modules/mcp-discovery/types.js.map +1 -0
  76. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy-scope.repository.d.ts +8 -2
  77. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy-scope.repository.js +15 -11
  78. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy-scope.repository.js.map +1 -1
  79. package/dist/modules/type-availability-policies/effective-policy.d.ts +17 -0
  80. package/dist/modules/type-availability-policies/effective-policy.js +33 -0
  81. package/dist/modules/type-availability-policies/effective-policy.js.map +1 -0
  82. package/dist/modules/type-availability-policies/policy-rule.types.d.ts +0 -4
  83. package/dist/modules/type-availability-policies/type-availability-policies.module.js +2 -0
  84. package/dist/modules/type-availability-policies/type-availability-policies.module.js.map +1 -1
  85. package/dist/modules/type-availability-policies/type-availability-policy-snapshot.d.ts +28 -0
  86. package/dist/modules/type-availability-policies/type-availability-policy-snapshot.js +138 -0
  87. package/dist/modules/type-availability-policies/type-availability-policy-snapshot.js.map +1 -0
  88. package/dist/modules/type-availability-policies/type-availability-policy.service.d.ts +8 -25
  89. package/dist/modules/type-availability-policies/type-availability-policy.service.js +42 -171
  90. package/dist/modules/type-availability-policies/type-availability-policy.service.js.map +1 -1
  91. package/dist/scaling/constants.d.ts +2 -2
  92. package/dist/scaling/pubsub/pubsub.event-map.d.ts +5 -1
  93. package/dist/scaling/pubsub/pubsub.types.d.ts +2 -1
  94. package/dist/scaling/pubsub/subscriber.service.js +2 -0
  95. package/dist/scaling/pubsub/subscriber.service.js.map +1 -1
  96. package/dist/user-management/email/templates/n8n-logo.png +0 -0
  97. package/package.json +36 -36
@@ -9,13 +9,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.TypeAvailabilityPolicyService = exports.LOCAL_READ_MAX_ENTRIES = void 0;
13
- const backend_common_1 = require("@n8n/backend-common");
12
+ exports.TypeAvailabilityPolicyService = void 0;
14
13
  const backend_services_1 = require("@n8n/backend-services");
15
- const constants_1 = require("@n8n/constants");
16
14
  const db_1 = require("@n8n/db");
17
15
  const di_1 = require("@n8n/di");
18
- const lru_cache_1 = require("lru-cache");
19
16
  const n8n_workflow_1 = require("n8n-workflow");
20
17
  const errors_1 = require("@n8n/errors");
21
18
  const load_nodes_and_credentials_1 = require("../../load-nodes-and-credentials");
@@ -23,56 +20,12 @@ const node_types_1 = require("../../node-types");
23
20
  const type_availability_policy_attachment_repository_1 = require("./database/repositories/type-availability-policy-attachment.repository");
24
21
  const type_availability_policy_scope_repository_1 = require("./database/repositories/type-availability-policy-scope.repository");
25
22
  const type_availability_policy_repository_1 = require("./database/repositories/type-availability-policy.repository");
26
- const constants_2 = require("./constants");
23
+ const constants_1 = require("./constants");
24
+ const effective_policy_1 = require("./effective-policy");
27
25
  const package_resolver_1 = require("./package-resolver");
28
26
  const policy_evaluator_1 = require("./policy-evaluator");
29
27
  const policy_rule_lint_1 = require("./policy-rule-lint");
30
- const UNCONFIGURED_VERSION = 0;
31
- const SCOPE_CACHE_TTL_MS = 10 * constants_1.Time.minutes.toMilliseconds;
32
- const LOCAL_READ_TTL_MS = 1 * constants_1.Time.seconds.toMilliseconds;
33
- exports.LOCAL_READ_MAX_ENTRIES = 512;
34
- const INVALIDATION_REPEAT_DELAY_MS = 1 * constants_1.Time.seconds.toMilliseconds;
35
- const CACHE_CALL_TIMEOUT_MS = 50;
36
- function scopeCacheKey(kind, projectId) {
37
- return `type-availability-policy:scope:${kind}:${projectId ?? 'instance'}`;
38
- }
39
- async function withCacheTimeout(call) {
40
- call.catch(() => { });
41
- let timer;
42
- try {
43
- return await Promise.race([
44
- call,
45
- new Promise((_, reject) => {
46
- timer = setTimeout(() => reject(new n8n_workflow_1.OperationalError('Policy cache call timed out')), CACHE_CALL_TIMEOUT_MS);
47
- }),
48
- ]);
49
- }
50
- finally {
51
- clearTimeout(timer);
52
- }
53
- }
54
- const UNCONFIGURED_PROJECT = {
55
- scopeId: null,
56
- projectId: null,
57
- defaultAction: 'allow',
58
- version: UNCONFIGURED_VERSION,
59
- rules: [],
60
- attachments: [],
61
- };
62
- function toEffectivePolicy(scope, attachments) {
63
- return {
64
- scopeId: scope.id,
65
- kind: scope.kind,
66
- projectId: scope.projectId,
67
- defaultAction: scope.defaultAction,
68
- version: scope.version,
69
- rules: flattenRules(attachments),
70
- attachments,
71
- };
72
- }
73
- function flattenRules(attachments) {
74
- return (0, policy_evaluator_1.orderedAttachments)(attachments).flatMap((attachment) => [...attachment.rules]);
75
- }
28
+ const type_availability_policy_snapshot_1 = require("./type-availability-policy-snapshot");
76
29
  function rulesContainDelegate(rules) {
77
30
  return rules.some((rule) => rule.action === 'delegate');
78
31
  }
@@ -88,7 +41,7 @@ function assertNoDelegateAtProjectScope(projectId, defaultAction, rules = []) {
88
41
  }
89
42
  }
90
43
  function assertNoCredentialOnlyNodeRules(kind, rules) {
91
- if (kind !== constants_2.NODE_TYPES_KIND)
44
+ if (kind !== constants_1.NODE_TYPES_KIND)
92
45
  return;
93
46
  for (const rule of rules) {
94
47
  if (rule.selector.kind === 'name' && (0, n8n_workflow_1.isCredentialOnlyNodeType)(rule.selector.value)) {
@@ -105,7 +58,7 @@ function assertNoCredentialOnlyPackageRules(rules) {
105
58
  }
106
59
  }
107
60
  function assertExtendsSelectorsValid(kind, rules) {
108
- if (kind === constants_2.CREDENTIAL_TYPES_KIND)
61
+ if (kind === constants_1.CREDENTIAL_TYPES_KIND)
109
62
  return;
110
63
  if (rules.some((rule) => rule.selector.kind === 'extends')) {
111
64
  throw new n8n_workflow_1.UserError('An "extends" rule is only valid in a credential type policy');
@@ -127,42 +80,28 @@ function assertNoDuplicateAttachmentSlots(attachments) {
127
80
  }
128
81
  }
129
82
  let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
130
- constructor(policyRepository, scopeRepository, attachmentRepository, transactionRunner, eventService, cacheService, loadNodesAndCredentials, nodeTypes, logger) {
83
+ constructor(policyRepository, scopeRepository, attachmentRepository, transactionRunner, eventService, snapshot, loadNodesAndCredentials, nodeTypes) {
131
84
  this.policyRepository = policyRepository;
132
85
  this.scopeRepository = scopeRepository;
133
86
  this.attachmentRepository = attachmentRepository;
134
87
  this.transactionRunner = transactionRunner;
135
88
  this.eventService = eventService;
136
- this.cacheService = cacheService;
89
+ this.snapshot = snapshot;
137
90
  this.loadNodesAndCredentials = loadNodesAndCredentials;
138
91
  this.nodeTypes = nodeTypes;
139
- this.logger = logger;
140
- this.localReads = new lru_cache_1.LRUCache({ max: exports.LOCAL_READ_MAX_ENTRIES });
141
- this.invalidations = 0;
142
- this.repeatDeletes = new Set();
143
- this.logger = this.logger.scoped('policy');
144
92
  }
145
93
  async getEffectivePolicy(kind, projectId, ctx = {}) {
146
94
  const scope = await this.scopeRepository.findScopeByKindAndProject(kind, projectId, ctx);
147
- if (!scope) {
148
- return {
149
- scopeId: null,
150
- kind,
151
- projectId,
152
- defaultAction: 'allow',
153
- version: UNCONFIGURED_VERSION,
154
- rules: [],
155
- attachments: [],
156
- };
157
- }
95
+ if (!scope)
96
+ return (0, effective_policy_1.unconfiguredScope)(kind, projectId);
158
97
  const attachments = await this.attachmentRepository.listAttachmentsForScope(scope.id, ctx);
159
- return toEffectivePolicy(scope, attachments);
98
+ return (0, effective_policy_1.toEffectivePolicy)(scope, attachments);
160
99
  }
161
100
  async setDefaultAction(kind, projectId, defaultAction, expectedVersion, updatedBy) {
162
101
  assertNoDelegateAtProjectScope(projectId, defaultAction);
163
102
  const result = await this.transactionRunner.run({}, async (ctx) => {
164
103
  const scope = await this.scopeRepository.findScopeByKindAndProject(kind, projectId, ctx, true);
165
- const currentVersion = scope?.version ?? UNCONFIGURED_VERSION;
104
+ const currentVersion = scope?.version ?? effective_policy_1.UNCONFIGURED_VERSION;
166
105
  if (currentVersion !== expectedVersion) {
167
106
  throw new errors_1.ConflictError(`Policy scope has changed since it was last read (expected version ${expectedVersion}, found ${currentVersion})`);
168
107
  }
@@ -176,7 +115,7 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
176
115
  return { before, after };
177
116
  });
178
117
  if (result.before === null || result.before.version !== result.after.version) {
179
- await this.invalidateScopes([{ kind, projectId }]);
118
+ await this.snapshot.refreshAfterWrite();
180
119
  }
181
120
  this.eventService.emit('node-type-policy-scope-updated', {
182
121
  updatedBy,
@@ -191,7 +130,7 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
191
130
  async createScopeOrConflict(input, ctx) {
192
131
  const { scope, created } = await this.scopeRepository.createScopeIfAbsent(input, ctx);
193
132
  if (!created) {
194
- throw new errors_1.ConflictError(`Policy scope was created concurrently (expected version ${UNCONFIGURED_VERSION}, found ${scope.version})`);
133
+ throw new errors_1.ConflictError(`Policy scope was created concurrently (expected version ${effective_policy_1.UNCONFIGURED_VERSION}, found ${scope.version})`);
195
134
  }
196
135
  return scope;
197
136
  }
@@ -220,7 +159,7 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
220
159
  async updatePolicyDocument(kind, policyId, rules, expectedVersion, updatedBy) {
221
160
  const warnings = this.validateAndLintRules(kind, rules);
222
161
  const result = await this.transactionRunner.run({}, async (ctx) => {
223
- let invalidated = [];
162
+ let scopesChanged = false;
224
163
  const attachedScopeIds = await this.attachmentRepository.listScopeIdsAttachedToPolicy(policyId, ctx);
225
164
  const lockedScopeIds = await this.scopeRepository.lockScopesByIds(attachedScopeIds, ctx);
226
165
  if (rulesContainDelegate(rules) &&
@@ -245,11 +184,12 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
245
184
  throw new errors_1.ConflictError('Policy document was attached to another scope while it was being updated');
246
185
  }
247
186
  await this.scopeRepository.bumpVersions(lockedScopeIds, ctx);
248
- invalidated = await this.scopeRepository.findScopeKeysByIds(lockedScopeIds, ctx);
187
+ scopesChanged = lockedScopeIds.length > 0;
249
188
  }
250
- return { existing, updated, invalidated };
189
+ return { existing, updated, scopesChanged };
251
190
  });
252
- await this.invalidateScopes(result.invalidated);
191
+ if (result.scopesChanged)
192
+ await this.snapshot.refreshAfterWrite();
253
193
  this.eventService.emit('node-type-policy-document-updated', {
254
194
  updatedBy,
255
195
  kind: result.existing.kind,
@@ -331,7 +271,7 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
331
271
  versionAfter: scopeAfter?.version ?? scope.version + 1,
332
272
  };
333
273
  });
334
- await this.invalidateScopes([{ kind: result.kind, projectId: result.projectId }]);
274
+ await this.snapshot.refreshAfterWrite();
335
275
  this.eventService.emit('node-type-policy-attachments-updated', {
336
276
  updatedBy,
337
277
  kind: result.kind,
@@ -347,7 +287,7 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
347
287
  const warnings = this.validateAndLintRules(kind, input.rules);
348
288
  const result = await this.transactionRunner.run({}, async (ctx) => {
349
289
  const scope = await this.scopeRepository.findScopeByKindAndProject(kind, projectId, ctx, true);
350
- const currentVersion = scope?.version ?? UNCONFIGURED_VERSION;
290
+ const currentVersion = scope?.version ?? effective_policy_1.UNCONFIGURED_VERSION;
351
291
  if (currentVersion !== expectedVersion) {
352
292
  throw new errors_1.ConflictError(`Policy scope has changed since it was last read (expected version ${expectedVersion}, found ${currentVersion})`);
353
293
  }
@@ -420,7 +360,7 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
420
360
  policyId,
421
361
  };
422
362
  });
423
- await this.invalidateScopes([{ kind, projectId }]);
363
+ await this.snapshot.refreshAfterWrite();
424
364
  this.eventService.emit('node-type-policy-scope-updated', {
425
365
  updatedBy,
426
366
  kind,
@@ -444,7 +384,7 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
444
384
  kind,
445
385
  policyId: result.policyId,
446
386
  origin: 'composed-save',
447
- before: result.documentBefore ?? { rules: [], version: UNCONFIGURED_VERSION },
387
+ before: result.documentBefore ?? { rules: [], version: effective_policy_1.UNCONFIGURED_VERSION },
448
388
  after: result.documentAfter,
449
389
  });
450
390
  }
@@ -487,17 +427,16 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
487
427
  };
488
428
  }
489
429
  async evaluateComposedTypesForAllProjects(kind, typeNames) {
490
- const [instance, scopes] = await Promise.all([
491
- this.readEffectivePolicyCached(kind, null),
492
- this.scopeRepository.findProjectScopes(kind, {}),
430
+ const [instance, projects] = await Promise.all([
431
+ this.readEnforcedScope(kind, null),
432
+ this.snapshot.projectScopes(kind) ?? this.readProjectScopes(kind),
493
433
  ]);
494
- const attachmentsByScope = await this.attachmentRepository.listAttachmentsForScopes(scopes.map((scope) => scope.id), {});
495
434
  const composeVerdicts = this.verdictComposer(kind, typeNames);
496
435
  return {
497
- withoutProjectPolicy: composeVerdicts(instance, { ...UNCONFIGURED_PROJECT, kind }),
498
- byProject: scopes.map((scope) => ({
499
- projectId: scope.projectId,
500
- verdicts: composeVerdicts(instance, toEffectivePolicy(scope, attachmentsByScope.get(scope.id) ?? [])),
436
+ withoutProjectPolicy: composeVerdicts(instance, (0, effective_policy_1.unconfiguredScope)(kind, null)),
437
+ byProject: projects.map((project) => ({
438
+ projectId: project.projectId,
439
+ verdicts: composeVerdicts(instance, project),
501
440
  })),
502
441
  };
503
442
  }
@@ -510,95 +449,27 @@ let TypeAvailabilityPolicyService = class TypeAvailabilityPolicyService {
510
449
  }));
511
450
  }
512
451
  async readComposedScopes(kind, projectId) {
513
- if (projectId === null) {
514
- return {
515
- instance: await this.readEffectivePolicyCached(kind, null),
516
- project: { ...UNCONFIGURED_PROJECT, kind },
517
- };
518
- }
519
452
  const [instance, project] = await Promise.all([
520
- this.readEffectivePolicyCached(kind, null),
521
- this.readEffectivePolicyCached(kind, projectId),
453
+ this.readEnforcedScope(kind, null),
454
+ projectId === null ? (0, effective_policy_1.unconfiguredScope)(kind, null) : this.readEnforcedScope(kind, projectId),
522
455
  ]);
523
456
  return { instance, project };
524
457
  }
525
- async readEffectivePolicyCached(kind, projectId) {
526
- const key = scopeCacheKey(kind, projectId);
527
- const shared = this.localReads.get(key);
528
- if (shared && shared.expiresAt > Date.now())
529
- return await shared.read;
530
- const read = this.readScope(kind, projectId, key);
531
- read.catch(() => {
532
- if (this.localReads.peek(key)?.read === read)
533
- this.localReads.delete(key);
534
- });
535
- this.localReads.set(key, { read, expiresAt: Date.now() + LOCAL_READ_TTL_MS });
536
- return await read;
537
- }
538
- async readScope(kind, projectId, key) {
539
- const startedAt = Date.now();
540
- const invalidations = this.invalidations;
541
- try {
542
- const cached = await withCacheTimeout(this.cacheService.get(key));
543
- if (cached)
544
- return cached;
545
- }
546
- catch (error) {
547
- this.logger.warn('Failed to read the node type policy cache', { key, error });
548
- }
549
- const effective = await this.getEffectivePolicy(kind, projectId);
550
- if (!this.canPublish(invalidations, startedAt))
551
- return effective;
552
- try {
553
- await withCacheTimeout(this.cacheService.set(key, effective, SCOPE_CACHE_TTL_MS));
554
- }
555
- catch (error) {
556
- this.logger.warn('Failed to write the node type policy cache', { key, error });
557
- }
558
- return effective;
559
- }
560
- canPublish(invalidations, startedAt) {
561
- if (this.invalidations !== invalidations)
562
- return false;
563
- return Date.now() - startedAt < INVALIDATION_REPEAT_DELAY_MS;
564
- }
565
- resetLocalCaches() {
566
- this.localReads.clear();
567
- this.invalidations += 1;
568
- for (const repeat of this.repeatDeletes)
569
- clearTimeout(repeat);
570
- this.repeatDeletes.clear();
458
+ async readEnforcedScope(kind, projectId) {
459
+ return this.snapshot.read(kind, projectId) ?? (await this.getEffectivePolicy(kind, projectId));
571
460
  }
572
- async invalidateScopes(keys) {
573
- if (keys.length === 0)
574
- return;
575
- const cacheKeys = keys.map(({ kind, projectId }) => scopeCacheKey(kind, projectId));
576
- this.invalidations += 1;
577
- for (const key of cacheKeys)
578
- this.localReads.delete(key);
579
- await this.dropCacheKeys(cacheKeys);
580
- const repeat = setTimeout(async () => {
581
- this.repeatDeletes.delete(repeat);
582
- await this.dropCacheKeys(cacheKeys);
583
- }, INVALIDATION_REPEAT_DELAY_MS);
584
- repeat.unref();
585
- this.repeatDeletes.add(repeat);
586
- }
587
- async dropCacheKeys(cacheKeys) {
588
- try {
589
- await withCacheTimeout(this.cacheService.deleteMany(cacheKeys));
590
- }
591
- catch (error) {
592
- this.logger.error('Failed to invalidate the node type policy cache', {
593
- keys: cacheKeys,
594
- error,
595
- });
596
- }
461
+ async readProjectScopes(kind) {
462
+ const scopes = await this.scopeRepository.findProjectScopes(kind, {});
463
+ const attachmentsByScope = await this.attachmentRepository.listAttachmentsForScopes(scopes.map((scope) => scope.id), {});
464
+ return scopes.map((scope) => ({
465
+ ...(0, effective_policy_1.toEffectivePolicy)(scope, attachmentsByScope.get(scope.id) ?? []),
466
+ projectId: scope.projectId,
467
+ }));
597
468
  }
598
469
  };
599
470
  exports.TypeAvailabilityPolicyService = TypeAvailabilityPolicyService;
600
471
  exports.TypeAvailabilityPolicyService = TypeAvailabilityPolicyService = __decorate([
601
472
  (0, di_1.Service)(),
602
- __metadata("design:paramtypes", [type_availability_policy_repository_1.TypeAvailabilityPolicyRepository, type_availability_policy_scope_repository_1.TypeAvailabilityPolicyScopeRepository, type_availability_policy_attachment_repository_1.TypeAvailabilityPolicyAttachmentRepository, db_1.TransactionRunner, backend_services_1.EventService, backend_services_1.CacheService, load_nodes_and_credentials_1.LoadNodesAndCredentials, node_types_1.NodeTypes, backend_common_1.Logger])
473
+ __metadata("design:paramtypes", [type_availability_policy_repository_1.TypeAvailabilityPolicyRepository, type_availability_policy_scope_repository_1.TypeAvailabilityPolicyScopeRepository, type_availability_policy_attachment_repository_1.TypeAvailabilityPolicyAttachmentRepository, db_1.TransactionRunner, backend_services_1.EventService, type_availability_policy_snapshot_1.TypeAvailabilityPolicySnapshot, load_nodes_and_credentials_1.LoadNodesAndCredentials, node_types_1.NodeTypes])
603
474
  ], TypeAvailabilityPolicyService);
604
475
  //# sourceMappingURL=type-availability-policy.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-availability-policy.service.js","sourceRoot":"","sources":["../../../src/modules/type-availability-policies/type-availability-policy.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-availability-policy.service.js","sourceRoot":"","sources":["../../../src/modules/type-availability-policies/type-availability-policy.service.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,6 @@ export declare const MCP_RELAY_PUBSUB_CHANNEL = "n8n.mcp-relay";
5
5
  export declare const SUBSCRIBER_LIVENESS_INTERVAL_MS: number;
6
6
  export declare const SUBSCRIBER_LIVENESS_TIMEOUT_MS: number;
7
7
  export declare const MAX_PUBSUB_PAYLOAD_BYTES: number;
8
- export declare const SELF_SEND_COMMANDS: Set<"add-webhooks-triggers-and-pollers" | "agent-chat-integration-changed" | "agent-chat-leader-channel-request" | "agent-chat-leader-channel-result" | "agent-chat-subscription-changed" | "agent-config-changed" | "agent-tasks-changed" | "cancel-agent-background-job" | "cancel-agent-chat-execution" | "cancel-collection" | "cancel-test-run" | "clear-test-webhooks" | "community-package-install" | "community-package-uninstall" | "community-package-update" | "display-workflow-activation" | "display-workflow-activation-error" | "display-workflow-deactivation" | "display-workflow-publication-status" | "get-worker-id" | "get-worker-status" | "redaction-floor-changed" | "relay-agent-background-tasks-update" | "relay-agent-execution-update" | "relay-agent-message-queue-update" | "relay-agent-queued-chat" | "relay-agent-update" | "relay-chat-human-message" | "relay-chat-message-edit" | "relay-chat-stream-event" | "relay-execution-lifecycle-event" | "relay-instance-ai-event" | "relay-instance-ai-task-control" | "reload-agents-settings" | "reload-external-secrets-providers" | "reload-instance-ai-settings" | "reload-license" | "reload-mcp-registry" | "reload-oauth-signing-keys" | "reload-oidc-config" | "reload-otel-config" | "reload-overwrite-credentials" | "reload-saml-config" | "reload-source-control-config" | "reload-sso-provisioning-configuration" | "remove-triggers-and-pollers" | "restart-event-bus" | "resume-agent-workflow-tool" | "stop-execution" | "wake-agent-background-job" | "workflow-publish-wake-up">;
9
- export declare const IMMEDIATE_COMMANDS: Set<"add-webhooks-triggers-and-pollers" | "agent-chat-integration-changed" | "agent-chat-leader-channel-request" | "agent-chat-leader-channel-result" | "agent-chat-subscription-changed" | "agent-config-changed" | "agent-tasks-changed" | "cancel-agent-background-job" | "cancel-agent-chat-execution" | "cancel-collection" | "cancel-test-run" | "clear-test-webhooks" | "community-package-install" | "community-package-uninstall" | "community-package-update" | "display-workflow-activation" | "display-workflow-activation-error" | "display-workflow-deactivation" | "display-workflow-publication-status" | "get-worker-id" | "get-worker-status" | "redaction-floor-changed" | "relay-agent-background-tasks-update" | "relay-agent-execution-update" | "relay-agent-message-queue-update" | "relay-agent-queued-chat" | "relay-agent-update" | "relay-chat-human-message" | "relay-chat-message-edit" | "relay-chat-stream-event" | "relay-execution-lifecycle-event" | "relay-instance-ai-event" | "relay-instance-ai-task-control" | "reload-agents-settings" | "reload-external-secrets-providers" | "reload-instance-ai-settings" | "reload-license" | "reload-mcp-registry" | "reload-oauth-signing-keys" | "reload-oidc-config" | "reload-otel-config" | "reload-overwrite-credentials" | "reload-saml-config" | "reload-source-control-config" | "reload-sso-provisioning-configuration" | "remove-triggers-and-pollers" | "restart-event-bus" | "resume-agent-workflow-tool" | "stop-execution" | "wake-agent-background-job" | "workflow-publish-wake-up">;
8
+ export declare const SELF_SEND_COMMANDS: Set<"add-webhooks-triggers-and-pollers" | "agent-chat-integration-changed" | "agent-chat-leader-channel-request" | "agent-chat-leader-channel-result" | "agent-chat-subscription-changed" | "agent-config-changed" | "agent-tasks-changed" | "cancel-agent-background-job" | "cancel-agent-chat-execution" | "cancel-collection" | "cancel-test-run" | "clear-test-webhooks" | "community-package-install" | "community-package-uninstall" | "community-package-update" | "display-workflow-activation" | "display-workflow-activation-error" | "display-workflow-deactivation" | "display-workflow-publication-status" | "get-worker-id" | "get-worker-status" | "redaction-floor-changed" | "relay-agent-background-tasks-update" | "relay-agent-execution-update" | "relay-agent-message-queue-update" | "relay-agent-queued-chat" | "relay-agent-update" | "relay-chat-human-message" | "relay-chat-message-edit" | "relay-chat-stream-event" | "relay-execution-lifecycle-event" | "relay-instance-ai-event" | "relay-instance-ai-task-control" | "reload-agents-settings" | "reload-external-secrets-providers" | "reload-instance-ai-settings" | "reload-license" | "reload-mcp-registry" | "reload-oauth-signing-keys" | "reload-oidc-config" | "reload-otel-config" | "reload-overwrite-credentials" | "reload-saml-config" | "reload-source-control-config" | "reload-sso-provisioning-configuration" | "reload-type-availability-policies" | "remove-triggers-and-pollers" | "restart-event-bus" | "resume-agent-workflow-tool" | "stop-execution" | "wake-agent-background-job" | "workflow-publish-wake-up">;
9
+ export declare const IMMEDIATE_COMMANDS: Set<"add-webhooks-triggers-and-pollers" | "agent-chat-integration-changed" | "agent-chat-leader-channel-request" | "agent-chat-leader-channel-result" | "agent-chat-subscription-changed" | "agent-config-changed" | "agent-tasks-changed" | "cancel-agent-background-job" | "cancel-agent-chat-execution" | "cancel-collection" | "cancel-test-run" | "clear-test-webhooks" | "community-package-install" | "community-package-uninstall" | "community-package-update" | "display-workflow-activation" | "display-workflow-activation-error" | "display-workflow-deactivation" | "display-workflow-publication-status" | "get-worker-id" | "get-worker-status" | "redaction-floor-changed" | "relay-agent-background-tasks-update" | "relay-agent-execution-update" | "relay-agent-message-queue-update" | "relay-agent-queued-chat" | "relay-agent-update" | "relay-chat-human-message" | "relay-chat-message-edit" | "relay-chat-stream-event" | "relay-execution-lifecycle-event" | "relay-instance-ai-event" | "relay-instance-ai-task-control" | "reload-agents-settings" | "reload-external-secrets-providers" | "reload-instance-ai-settings" | "reload-license" | "reload-mcp-registry" | "reload-oauth-signing-keys" | "reload-oidc-config" | "reload-otel-config" | "reload-overwrite-credentials" | "reload-saml-config" | "reload-source-control-config" | "reload-sso-provisioning-configuration" | "reload-type-availability-policies" | "remove-triggers-and-pollers" | "restart-event-bus" | "resume-agent-workflow-tool" | "stop-execution" | "wake-agent-background-job" | "workflow-publish-wake-up">;
10
10
  export declare const JOB_WAIT_RECHECK_INTERVAL_MS: number;
@@ -203,10 +203,14 @@ export type PubSubCommandMap = {
203
203
  agentId: string;
204
204
  };
205
205
  'redaction-floor-changed': never;
206
+ 'reload-type-availability-policies': never;
206
207
  };
207
208
  export type PubSubWorkerResponseMap = {
208
209
  'response-to-get-worker-status': WorkerStatus & {
209
210
  requestingUserId: string;
210
211
  };
211
212
  };
212
- export type PubSubEventMap = PubSubCommandMap & PubSubWorkerResponseMap;
213
+ export type PubSubLocalEventMap = {
214
+ 'pubsub-reconnected': never;
215
+ };
216
+ export type PubSubEventMap = PubSubCommandMap & PubSubWorkerResponseMap & PubSubLocalEventMap;
@@ -68,8 +68,9 @@ export declare namespace PubSub {
68
68
  type AgentConfigChanged = ToCommand<'agent-config-changed'>;
69
69
  type AgentTasksChanged = ToCommand<'agent-tasks-changed'>;
70
70
  type RedactionFloorChanged = ToCommand<'redaction-floor-changed'>;
71
+ type ReloadTypeAvailabilityPolicies = ToCommand<'reload-type-availability-policies'>;
71
72
  }
72
- export type Command = Commands.ReloadLicense | Commands.RestartEventBus | Commands.ReloadExternalSecretsProviders | Commands.CommunityPackageInstall | Commands.CommunityPackageUpdate | Commands.CommunityPackageUninstall | Commands.GetWorkerId | Commands.GetWorkerStatus | Commands.StopExecution | Commands.AddWebhooksTriggersAndPollers | Commands.RemoveTriggersAndPollers | Commands.DisplayWorkflowActivation | Commands.DisplayWorkflowDeactivation | Commands.DisplayWorkflowActivationError | Commands.DisplayWorkflowPublicationStatus | Commands.WorkflowPublishWakeUp | Commands.RelayExecutionLifecycleEvent | Commands.RelayAgentExecutionUpdate | Commands.RelayAgentQueuedChat | Commands.CancelAgentChatExecution | Commands.RelayAgentMessageQueueUpdate | Commands.RelayAgentBackgroundJobsUpdate | Commands.RelayAgentUpdate | Commands.ResumeAgentWorkflowTool | Commands.CancelAgentBackgroundJob | Commands.WakeAgentBackgroundJob | Commands.RelayChatStreamEvent | Commands.RelayInstanceAiEvent | Commands.RelayInstanceAiTaskControl | Commands.RelayChatHumanMessage | Commands.RelayChatMessageEdit | Commands.ClearTestWebhooks | Commands.ReloadOIDCConfiguration | Commands.ReloadSamlConfiguration | Commands.ReloadOAuthSigningKeys | Commands.ReloadCredentialsOverwrites | Commands.ReloadSsoProvisioningConfiguration | Commands.ReloadSourceControlConfiguration | Commands.ReloadMcpRegistry | Commands.ReloadOtelConfig | Commands.ReloadInstanceAiSettings | Commands.ReloadAgentsSettings | Commands.CancelTestRun | Commands.CancelCollection | Commands.AgentChatIntegrationChanged | Commands.AgentChatSubscriptionChanged | Commands.AgentChatLeaderChannelRequest | Commands.AgentChatLeaderChannelResult | Commands.AgentConfigChanged | Commands.AgentTasksChanged | Commands.RedactionFloorChanged;
73
+ export type Command = Commands.ReloadLicense | Commands.RestartEventBus | Commands.ReloadExternalSecretsProviders | Commands.CommunityPackageInstall | Commands.CommunityPackageUpdate | Commands.CommunityPackageUninstall | Commands.GetWorkerId | Commands.GetWorkerStatus | Commands.StopExecution | Commands.AddWebhooksTriggersAndPollers | Commands.RemoveTriggersAndPollers | Commands.DisplayWorkflowActivation | Commands.DisplayWorkflowDeactivation | Commands.DisplayWorkflowActivationError | Commands.DisplayWorkflowPublicationStatus | Commands.WorkflowPublishWakeUp | Commands.RelayExecutionLifecycleEvent | Commands.RelayAgentExecutionUpdate | Commands.RelayAgentQueuedChat | Commands.CancelAgentChatExecution | Commands.RelayAgentMessageQueueUpdate | Commands.RelayAgentBackgroundJobsUpdate | Commands.RelayAgentUpdate | Commands.ResumeAgentWorkflowTool | Commands.CancelAgentBackgroundJob | Commands.WakeAgentBackgroundJob | Commands.RelayChatStreamEvent | Commands.RelayInstanceAiEvent | Commands.RelayInstanceAiTaskControl | Commands.RelayChatHumanMessage | Commands.RelayChatMessageEdit | Commands.ClearTestWebhooks | Commands.ReloadOIDCConfiguration | Commands.ReloadSamlConfiguration | Commands.ReloadOAuthSigningKeys | Commands.ReloadCredentialsOverwrites | Commands.ReloadSsoProvisioningConfiguration | Commands.ReloadSourceControlConfiguration | Commands.ReloadMcpRegistry | Commands.ReloadOtelConfig | Commands.ReloadInstanceAiSettings | Commands.ReloadAgentsSettings | Commands.CancelTestRun | Commands.CancelCollection | Commands.AgentChatIntegrationChanged | Commands.AgentChatSubscriptionChanged | Commands.AgentChatLeaderChannelRequest | Commands.AgentChatLeaderChannelResult | Commands.AgentConfigChanged | Commands.AgentTasksChanged | Commands.RedactionFloorChanged | Commands.ReloadTypeAvailabilityPolicies;
73
74
  type _ToWorkerResponse<WorkerResponseKey extends keyof PubSubWorkerResponseMap> = {
74
75
  senderId: string;
75
76
  targets?: string[];
@@ -145,7 +145,9 @@ let Subscriber = class Subscriber {
145
145
  this.logger.error('Failed to resubscribe to pubsub channels after Redis reconnect', {
146
146
  error,
147
147
  });
148
+ return;
148
149
  }
150
+ this.pubsubEventBus.emit('pubsub-reconnected');
149
151
  }
150
152
  async checkLiveness() {
151
153
  if (this.channels.size === 0)
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.service.js","sourceRoot":"","sources":["../../../src/scaling/pubsub/subscriber.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subscriber.service.js","sourceRoot":"","sources":["../../../src/scaling/pubsub/subscriber.service.ts"],"names":[],"mappings":"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"}