@trentapps/manager-protocol 1.1.3 → 1.2.1

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 (142) hide show
  1. package/README.md +164 -17
  2. package/dist/analyzers/CSSAnalyzer.d.ts +180 -8
  3. package/dist/analyzers/CSSAnalyzer.d.ts.map +1 -1
  4. package/dist/analyzers/CSSAnalyzer.js +561 -105
  5. package/dist/analyzers/CSSAnalyzer.js.map +1 -1
  6. package/dist/config/dashboard.d.ts +55 -0
  7. package/dist/config/dashboard.d.ts.map +1 -0
  8. package/dist/config/dashboard.js +103 -0
  9. package/dist/config/dashboard.js.map +1 -0
  10. package/dist/config/index.d.ts +7 -0
  11. package/dist/config/index.d.ts.map +1 -0
  12. package/dist/config/index.js +7 -0
  13. package/dist/config/index.js.map +1 -0
  14. package/dist/dashboard/httpDashboard.d.ts +100 -0
  15. package/dist/dashboard/httpDashboard.d.ts.map +1 -0
  16. package/dist/dashboard/httpDashboard.js +1276 -0
  17. package/dist/dashboard/httpDashboard.js.map +1 -0
  18. package/dist/dashboard/index.d.ts +6 -0
  19. package/dist/dashboard/index.d.ts.map +1 -0
  20. package/dist/dashboard/index.js +7 -0
  21. package/dist/dashboard/index.js.map +1 -0
  22. package/dist/engine/AuditLogger.d.ts +370 -2
  23. package/dist/engine/AuditLogger.d.ts.map +1 -1
  24. package/dist/engine/AuditLogger.js +1064 -24
  25. package/dist/engine/AuditLogger.js.map +1 -1
  26. package/dist/engine/GitHubClient.d.ts +183 -0
  27. package/dist/engine/GitHubClient.d.ts.map +1 -0
  28. package/dist/engine/GitHubClient.js +411 -0
  29. package/dist/engine/GitHubClient.js.map +1 -0
  30. package/dist/engine/RateLimiter.d.ts +5 -3
  31. package/dist/engine/RateLimiter.d.ts.map +1 -1
  32. package/dist/engine/RateLimiter.js +49 -72
  33. package/dist/engine/RateLimiter.js.map +1 -1
  34. package/dist/engine/RuleDependencyAnalyzer.d.ts +73 -0
  35. package/dist/engine/RuleDependencyAnalyzer.d.ts.map +1 -0
  36. package/dist/engine/RuleDependencyAnalyzer.js +475 -0
  37. package/dist/engine/RuleDependencyAnalyzer.js.map +1 -0
  38. package/dist/engine/RulesEngine.d.ts +102 -3
  39. package/dist/engine/RulesEngine.d.ts.map +1 -1
  40. package/dist/engine/RulesEngine.js +326 -21
  41. package/dist/engine/RulesEngine.js.map +1 -1
  42. package/dist/engine/TaskManager.d.ts +10 -14
  43. package/dist/engine/TaskManager.d.ts.map +1 -1
  44. package/dist/engine/TaskManager.js +169 -197
  45. package/dist/engine/TaskManager.js.map +1 -1
  46. package/dist/engine/index.d.ts +3 -0
  47. package/dist/engine/index.d.ts.map +1 -1
  48. package/dist/engine/index.js +5 -0
  49. package/dist/engine/index.js.map +1 -1
  50. package/dist/rules/azure.d.ts.map +1 -1
  51. package/dist/rules/azure.js +12 -14
  52. package/dist/rules/azure.js.map +1 -1
  53. package/dist/rules/compliance.d.ts.map +1 -1
  54. package/dist/rules/compliance.js +23 -41
  55. package/dist/rules/compliance.js.map +1 -1
  56. package/dist/rules/condition-optimizer.d.ts +151 -0
  57. package/dist/rules/condition-optimizer.d.ts.map +1 -0
  58. package/dist/rules/condition-optimizer.js +479 -0
  59. package/dist/rules/condition-optimizer.js.map +1 -0
  60. package/dist/rules/css.d.ts.map +1 -1
  61. package/dist/rules/css.js +538 -0
  62. package/dist/rules/css.js.map +1 -1
  63. package/dist/rules/field-standards.d.ts +1172 -0
  64. package/dist/rules/field-standards.d.ts.map +1 -0
  65. package/dist/rules/field-standards.js +908 -0
  66. package/dist/rules/field-standards.js.map +1 -0
  67. package/dist/rules/flask.d.ts.map +1 -1
  68. package/dist/rules/flask.js +18 -31
  69. package/dist/rules/flask.js.map +1 -1
  70. package/dist/rules/index.d.ts +220 -0
  71. package/dist/rules/index.d.ts.map +1 -1
  72. package/dist/rules/index.js +155 -0
  73. package/dist/rules/index.js.map +1 -1
  74. package/dist/rules/ml-ai.d.ts.map +1 -1
  75. package/dist/rules/ml-ai.js +11 -13
  76. package/dist/rules/ml-ai.js.map +1 -1
  77. package/dist/rules/patterns.d.ts +568 -0
  78. package/dist/rules/patterns.d.ts.map +1 -0
  79. package/dist/rules/patterns.js +1359 -0
  80. package/dist/rules/patterns.js.map +1 -0
  81. package/dist/rules/security.d.ts.map +1 -1
  82. package/dist/rules/security.js +580 -19
  83. package/dist/rules/security.js.map +1 -1
  84. package/dist/rules/shared-patterns.d.ts +268 -0
  85. package/dist/rules/shared-patterns.d.ts.map +1 -0
  86. package/dist/rules/shared-patterns.js +556 -0
  87. package/dist/rules/shared-patterns.js.map +1 -0
  88. package/dist/rules/storage.d.ts +8 -2
  89. package/dist/rules/storage.d.ts.map +1 -1
  90. package/dist/rules/storage.js +541 -3
  91. package/dist/rules/storage.js.map +1 -1
  92. package/dist/rules/stripe.d.ts.map +1 -1
  93. package/dist/rules/stripe.js +19 -26
  94. package/dist/rules/stripe.js.map +1 -1
  95. package/dist/rules/websocket.d.ts.map +1 -1
  96. package/dist/rules/websocket.js +32 -40
  97. package/dist/rules/websocket.js.map +1 -1
  98. package/dist/supervisor/AgentSupervisor.d.ts +52 -0
  99. package/dist/supervisor/AgentSupervisor.d.ts.map +1 -1
  100. package/dist/supervisor/AgentSupervisor.js +120 -1
  101. package/dist/supervisor/AgentSupervisor.js.map +1 -1
  102. package/dist/supervisor/ManagedServerRegistry.d.ts +139 -2
  103. package/dist/supervisor/ManagedServerRegistry.d.ts.map +1 -1
  104. package/dist/supervisor/ManagedServerRegistry.js +590 -6
  105. package/dist/supervisor/ManagedServerRegistry.js.map +1 -1
  106. package/dist/supervisor/ProjectTracker.d.ts +2 -1
  107. package/dist/supervisor/ProjectTracker.d.ts.map +1 -1
  108. package/dist/supervisor/ProjectTracker.js +5 -9
  109. package/dist/supervisor/ProjectTracker.js.map +1 -1
  110. package/dist/testing/index.d.ts +11 -0
  111. package/dist/testing/index.d.ts.map +1 -0
  112. package/dist/testing/index.js +12 -0
  113. package/dist/testing/index.js.map +1 -0
  114. package/dist/testing/rule-tester.d.ts +217 -0
  115. package/dist/testing/rule-tester.d.ts.map +1 -0
  116. package/dist/testing/rule-tester.examples.d.ts +57 -0
  117. package/dist/testing/rule-tester.examples.d.ts.map +1 -0
  118. package/dist/testing/rule-tester.examples.js +375 -0
  119. package/dist/testing/rule-tester.examples.js.map +1 -0
  120. package/dist/testing/rule-tester.js +381 -0
  121. package/dist/testing/rule-tester.js.map +1 -0
  122. package/dist/testing/rule-validator.d.ts +141 -0
  123. package/dist/testing/rule-validator.d.ts.map +1 -0
  124. package/dist/testing/rule-validator.js +640 -0
  125. package/dist/testing/rule-validator.js.map +1 -0
  126. package/dist/types/index.d.ts +265 -4
  127. package/dist/types/index.d.ts.map +1 -1
  128. package/dist/types/index.js +57 -2
  129. package/dist/types/index.js.map +1 -1
  130. package/dist/utils/index.d.ts +2 -0
  131. package/dist/utils/index.d.ts.map +1 -1
  132. package/dist/utils/index.js +2 -0
  133. package/dist/utils/index.js.map +1 -1
  134. package/dist/utils/rate-limiting.d.ts +268 -0
  135. package/dist/utils/rate-limiting.d.ts.map +1 -0
  136. package/dist/utils/rate-limiting.js +403 -0
  137. package/dist/utils/rate-limiting.js.map +1 -0
  138. package/dist/utils/shared.d.ts +306 -0
  139. package/dist/utils/shared.d.ts.map +1 -0
  140. package/dist/utils/shared.js +464 -0
  141. package/dist/utils/shared.js.map +1 -0
  142. package/package.json +3 -2
@@ -2,26 +2,24 @@
2
2
  * Stripe Payment Security Rules
3
3
  * Governance rules for Stripe payment processing
4
4
  */
5
+ import { createAuditLoggingRule, createValidationRule } from './shared-patterns.js';
5
6
  export const stripeRules = [
6
- {
7
+ // Webhook Signature Validation - uses shared validation pattern
8
+ createValidationRule({
7
9
  id: 'stripe-001',
8
10
  name: 'Require Webhook Signature Validation',
9
11
  description: 'Stripe webhooks must validate signatures to prevent replay attacks',
10
- type: 'security',
11
- enabled: true,
12
+ validationType: 'signature',
13
+ scope: {
14
+ actionName: 'webhook',
15
+ provider: 'stripe'
16
+ },
17
+ actionType: 'deny',
18
+ message: 'Stripe webhook signature validation is required (use stripe.webhooks.constructEvent)',
12
19
  priority: 980,
13
- conditions: [
14
- { field: 'actionName', operator: 'contains', value: 'webhook' },
15
- { field: 'provider', operator: 'equals', value: 'stripe' },
16
- { field: 'signatureValidated', operator: 'not_equals', value: true }
17
- ],
18
- conditionLogic: 'all',
19
- actions: [
20
- { type: 'deny', message: 'Stripe webhook signature validation is required (use stripe.webhooks.constructEvent)' }
21
- ],
22
20
  riskWeight: 65,
23
- tags: ['stripe', 'security', 'webhook', 'validation']
24
- },
21
+ tags: ['stripe', 'webhook']
22
+ }),
25
23
  {
26
24
  id: 'stripe-002',
27
25
  name: 'Enforce Idempotency Keys',
@@ -100,24 +98,19 @@ export const stripeRules = [
100
98
  riskWeight: 55,
101
99
  tags: ['stripe', 'sca', 'psd2', 'compliance', 'eu']
102
100
  },
103
- {
101
+ // Payment Event Logging - uses shared audit pattern
102
+ createAuditLoggingRule({
104
103
  id: 'stripe-006',
105
104
  name: 'Log All Payment Events',
106
105
  description: 'All payment events must be logged for audit',
107
- type: 'compliance',
108
- enabled: true,
109
- priority: 940,
110
- conditions: [
111
- { field: 'actionCategory', operator: 'equals', value: 'financial' },
106
+ categories: ['financial'],
107
+ additionalConditions: [
112
108
  { field: 'provider', operator: 'equals', value: 'stripe' }
113
109
  ],
114
- conditionLogic: 'all',
115
- actions: [
116
- { type: 'log' }
117
- ],
110
+ priority: 940,
118
111
  riskWeight: 10,
119
- tags: ['stripe', 'audit', 'logging', 'compliance']
120
- },
112
+ tags: ['stripe', 'compliance']
113
+ }),
121
114
  {
122
115
  id: 'stripe-007',
123
116
  name: 'Use Latest API Version',
@@ -1 +1 @@
1
- {"version":3,"file":"stripe.js","sourceRoot":"","sources":["../../src/rules/stripe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stripe.js","sourceRoot":"","sources":["../../src/rules/stripe.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/rules/websocket.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,eAAO,MAAM,cAAc,EAAE,YAAY,EAkIxC,CAAC"}
1
+ {"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/rules/websocket.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOtD,eAAO,MAAM,cAAc,EAAE,YAAY,EAyHxC,CAAC"}
@@ -2,6 +2,7 @@
2
2
  * WebSocket & Real-Time Communication Rules
3
3
  * Governance rules for WebSocket, Socket.IO, and real-time connections
4
4
  */
5
+ import { createEncryptionRule, createValidationRule, createRateLimitRule } from './shared-patterns.js';
5
6
  export const websocketRules = [
6
7
  {
7
8
  id: 'ws-001',
@@ -22,24 +23,21 @@ export const websocketRules = [
22
23
  riskWeight: 60,
23
24
  tags: ['websocket', 'socket.io', 'security', 'authentication']
24
25
  },
25
- {
26
+ // Message Rate Limiting - uses shared rate limit pattern
27
+ createRateLimitRule({
26
28
  id: 'ws-002',
27
29
  name: 'Enforce Message Rate Limiting',
28
30
  description: 'WebSocket messages must be rate limited per connection',
29
- type: 'security',
30
- enabled: true,
31
+ limitType: 'message',
32
+ scope: {
33
+ protocol: ['websocket', 'socket.io']
34
+ },
35
+ actionType: 'warn',
36
+ message: 'Implement message rate limiting to prevent flood attacks (e.g., 100 msg/min)',
31
37
  priority: 920,
32
- conditions: [
33
- { field: 'protocol', operator: 'in', value: ['websocket', 'socket.io'] },
34
- { field: 'messageRateLimitEnabled', operator: 'not_equals', value: true }
35
- ],
36
- conditionLogic: 'all',
37
- actions: [
38
- { type: 'warn', message: 'Implement message rate limiting to prevent flood attacks (e.g., 100 msg/min)' }
39
- ],
40
38
  riskWeight: 40,
41
- tags: ['websocket', 'rate-limiting', 'dos', 'security']
42
- },
39
+ tags: ['websocket', 'dos']
40
+ }),
43
41
  {
44
42
  id: 'ws-003',
45
43
  name: 'Validate Binary Message Size',
@@ -95,42 +93,36 @@ export const websocketRules = [
95
93
  riskWeight: 30,
96
94
  tags: ['websocket', 'limits', 'abuse-prevention']
97
95
  },
98
- {
96
+ // Message Schema Validation - uses shared validation pattern
97
+ createValidationRule({
99
98
  id: 'ws-006',
100
99
  name: 'Validate Message Schema',
101
100
  description: 'WebSocket messages should be validated against schema',
102
- type: 'security',
103
- enabled: true,
101
+ validationType: 'message',
102
+ scope: {
103
+ protocol: ['websocket', 'socket.io']
104
+ },
105
+ actionType: 'warn',
106
+ message: 'Validate WebSocket message structure/schema to prevent injection attacks',
104
107
  priority: 860,
105
- conditions: [
106
- { field: 'protocol', operator: 'in', value: ['websocket', 'socket.io'] },
107
- { field: 'messageValidation', operator: 'not_equals', value: true }
108
- ],
109
- conditionLogic: 'all',
110
- actions: [
111
- { type: 'warn', message: 'Validate WebSocket message structure/schema to prevent injection attacks' }
112
- ],
113
108
  riskWeight: 35,
114
- tags: ['websocket', 'validation', 'security']
115
- },
116
- {
109
+ tags: ['websocket']
110
+ }),
111
+ // WebSocket TLS Requirement - uses shared encryption pattern
112
+ createEncryptionRule({
117
113
  id: 'ws-007',
118
114
  name: 'WebSocket TLS Requirement',
119
115
  description: 'Production WebSocket connections must use TLS (wss://)',
120
- type: 'security',
121
- enabled: true,
116
+ encryptionType: 'tls',
117
+ scope: {
118
+ protocol: ['websocket', 'socket.io'],
119
+ environment: 'production'
120
+ },
121
+ actionType: 'deny',
122
+ message: 'Production WebSocket connections must use wss:// (TLS encrypted)',
122
123
  priority: 950,
123
- conditions: [
124
- { field: 'protocol', operator: 'in', value: ['websocket', 'socket.io'] },
125
- { field: 'environment', operator: 'equals', value: 'production' },
126
- { field: 'tlsEnabled', operator: 'not_equals', value: true }
127
- ],
128
- conditionLogic: 'all',
129
- actions: [
130
- { type: 'deny', message: 'Production WebSocket connections must use wss:// (TLS encrypted)' }
131
- ],
132
124
  riskWeight: 55,
133
- tags: ['websocket', 'tls', 'encryption', 'security']
134
- }
125
+ tags: ['websocket', 'tls']
126
+ })
135
127
  ];
136
128
  //# sourceMappingURL=websocket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../src/rules/websocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../src/rules/websocket.ts"],"names":[],"mappings":"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"}
@@ -22,14 +22,63 @@ export declare class AgentSupervisor {
22
22
  private approvalManager;
23
23
  private appMonitor;
24
24
  private initialized;
25
+ /**
26
+ * Cache for evaluation results
27
+ * Key: cache key derived from action name, category, and parameters
28
+ * Value: cached evaluation result with timestamp
29
+ */
30
+ private evaluationCache;
31
+ /**
32
+ * Cache TTL in milliseconds
33
+ */
34
+ private cacheTtlMs;
25
35
  constructor(options?: AgentSupervisorOptions);
26
36
  /**
27
37
  * Initialize the supervisor with configuration
28
38
  */
29
39
  initialize(preset?: keyof typeof rulePresets): Promise<void>;
40
+ /**
41
+ * Generate a cache key from action and context
42
+ * Key includes action name, category, and serialized parameters for uniqueness
43
+ */
44
+ private generateCacheKey;
45
+ /**
46
+ * Check if a cached evaluation is still valid (within TTL)
47
+ */
48
+ private isCacheValid;
49
+ /**
50
+ * Get cached evaluation if available and valid
51
+ */
52
+ private getCachedEvaluation;
53
+ /**
54
+ * Store evaluation result in cache
55
+ */
56
+ private cacheEvaluation;
57
+ /**
58
+ * Clear the evaluation cache
59
+ * Call this when rules are modified or when cache should be invalidated
60
+ */
61
+ clearCache(): void;
62
+ /**
63
+ * Set the cache TTL in milliseconds
64
+ * @param ttlMs - Time to live in milliseconds (minimum 1000ms)
65
+ */
66
+ setCacheTtl(ttlMs: number): void;
67
+ /**
68
+ * Get current cache TTL in milliseconds
69
+ */
70
+ getCacheTtl(): number;
71
+ /**
72
+ * Get cache statistics
73
+ */
74
+ getCacheStats(): {
75
+ size: number;
76
+ ttlMs: number;
77
+ };
30
78
  /**
31
79
  * Evaluate an agent action
32
80
  * Main entry point for action governance
81
+ * Results are cached for identical actions within the TTL period
33
82
  */
34
83
  evaluateAction(action: AgentAction, context?: BusinessContext): Promise<EvaluationResult>;
35
84
  /**
@@ -65,10 +114,12 @@ export declare class AgentSupervisor {
65
114
  }): Promise<AuditEvent>;
66
115
  /**
67
116
  * Add a custom rule
117
+ * Invalidates the evaluation cache since rules have changed
68
118
  */
69
119
  addRule(rule: BusinessRule): void;
70
120
  /**
71
121
  * Remove a rule
122
+ * Invalidates the evaluation cache since rules have changed
72
123
  */
73
124
  removeRule(ruleId: string): boolean;
74
125
  /**
@@ -133,6 +184,7 @@ export declare class AgentSupervisor {
133
184
  updateConfig(updates: Partial<SupervisorConfig>): Promise<void>;
134
185
  /**
135
186
  * Load preset configuration
187
+ * Invalidates the evaluation cache since rules have changed
136
188
  */
137
189
  loadPreset(preset: keyof typeof rulePresets): Promise<void>;
138
190
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AgentSupervisor.d.ts","sourceRoot":"","sources":["../../src/supervisor/AgentSupervisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentSupervisor.d.ts","sourceRoot":"","sources":["../../src/supervisor/AgentSupervisor.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,10 @@ import { GitHubApprovalManager } from '../engine/GitHubApprovalManager.js';
11
11
  import { AppMonitor } from '../engine/AppMonitor.js';
12
12
  import { ArchitectureDetector } from '../analyzers/ArchitectureDetector.js';
13
13
  import { allBuiltInRules, defaultRateLimits, rulePresets } from '../rules/index.js';
14
+ /**
15
+ * Default cache TTL in milliseconds (30 seconds)
16
+ */
17
+ const DEFAULT_CACHE_TTL_MS = 30_000;
14
18
  export class AgentSupervisor {
15
19
  config;
16
20
  rulesEngine;
@@ -19,6 +23,16 @@ export class AgentSupervisor {
19
23
  approvalManager;
20
24
  appMonitor;
21
25
  initialized = false;
26
+ /**
27
+ * Cache for evaluation results
28
+ * Key: cache key derived from action name, category, and parameters
29
+ * Value: cached evaluation result with timestamp
30
+ */
31
+ evaluationCache = new Map();
32
+ /**
33
+ * Cache TTL in milliseconds
34
+ */
35
+ cacheTtlMs = DEFAULT_CACHE_TTL_MS;
22
36
  constructor(options = {}) {
23
37
  // Initialize with defaults
24
38
  this.config = this.buildConfig(options.config);
@@ -62,14 +76,108 @@ export class AgentSupervisor {
62
76
  });
63
77
  this.initialized = true;
64
78
  }
79
+ /**
80
+ * Generate a cache key from action and context
81
+ * Key includes action name, category, and serialized parameters for uniqueness
82
+ */
83
+ generateCacheKey(action, context) {
84
+ const keyParts = [
85
+ action.name,
86
+ action.category,
87
+ action.agentId || '',
88
+ context?.agentId || '',
89
+ context?.environment || '',
90
+ context?.dataClassification || ''
91
+ ];
92
+ // Include sorted parameters for consistent key generation
93
+ if (action.parameters) {
94
+ const sortedParams = Object.keys(action.parameters)
95
+ .sort()
96
+ .map(k => `${k}:${JSON.stringify(action.parameters[k])}`)
97
+ .join('|');
98
+ keyParts.push(sortedParams);
99
+ }
100
+ return keyParts.join('::');
101
+ }
102
+ /**
103
+ * Check if a cached evaluation is still valid (within TTL)
104
+ */
105
+ isCacheValid(cached) {
106
+ return Date.now() - cached.cachedAt < this.cacheTtlMs;
107
+ }
108
+ /**
109
+ * Get cached evaluation if available and valid
110
+ */
111
+ getCachedEvaluation(cacheKey) {
112
+ const cached = this.evaluationCache.get(cacheKey);
113
+ if (cached && this.isCacheValid(cached)) {
114
+ return cached.result;
115
+ }
116
+ // Remove expired entry
117
+ if (cached) {
118
+ this.evaluationCache.delete(cacheKey);
119
+ }
120
+ return null;
121
+ }
122
+ /**
123
+ * Store evaluation result in cache
124
+ */
125
+ cacheEvaluation(cacheKey, result) {
126
+ this.evaluationCache.set(cacheKey, {
127
+ result,
128
+ cachedAt: Date.now()
129
+ });
130
+ }
131
+ /**
132
+ * Clear the evaluation cache
133
+ * Call this when rules are modified or when cache should be invalidated
134
+ */
135
+ clearCache() {
136
+ this.evaluationCache.clear();
137
+ }
138
+ /**
139
+ * Set the cache TTL in milliseconds
140
+ * @param ttlMs - Time to live in milliseconds (minimum 1000ms)
141
+ */
142
+ setCacheTtl(ttlMs) {
143
+ this.cacheTtlMs = Math.max(1000, ttlMs);
144
+ }
145
+ /**
146
+ * Get current cache TTL in milliseconds
147
+ */
148
+ getCacheTtl() {
149
+ return this.cacheTtlMs;
150
+ }
151
+ /**
152
+ * Get cache statistics
153
+ */
154
+ getCacheStats() {
155
+ return {
156
+ size: this.evaluationCache.size,
157
+ ttlMs: this.cacheTtlMs
158
+ };
159
+ }
65
160
  /**
66
161
  * Evaluate an agent action
67
162
  * Main entry point for action governance
163
+ * Results are cached for identical actions within the TTL period
68
164
  */
69
165
  async evaluateAction(action, context) {
70
166
  await this.ensureInitialized();
71
167
  const actionId = action.id || uuidv4();
72
168
  const enrichedAction = { ...action, id: actionId };
169
+ // Generate cache key and check for cached result
170
+ const cacheKey = this.generateCacheKey(enrichedAction, context);
171
+ const cachedResult = this.getCachedEvaluation(cacheKey);
172
+ if (cachedResult) {
173
+ // Return cached result with updated actionId and timestamp
174
+ return {
175
+ ...cachedResult,
176
+ actionId,
177
+ evaluatedAt: new Date().toISOString(),
178
+ cached: true
179
+ };
180
+ }
73
181
  // Check rate limits first
74
182
  if (this.config.features.rateLimiting) {
75
183
  const rateLimitCheck = this.rateLimiter.checkLimit({
@@ -144,6 +252,8 @@ export class AgentSupervisor {
144
252
  rulesApplied: evaluation.appliedRules.length
145
253
  });
146
254
  }
255
+ // Cache the evaluation result for future identical actions
256
+ this.cacheEvaluation(cacheKey, evaluation);
147
257
  return evaluation;
148
258
  }
149
259
  /**
@@ -225,15 +335,22 @@ export class AgentSupervisor {
225
335
  // ============================================================================
226
336
  /**
227
337
  * Add a custom rule
338
+ * Invalidates the evaluation cache since rules have changed
228
339
  */
229
340
  addRule(rule) {
230
341
  this.rulesEngine.registerRule(rule);
342
+ this.clearCache();
231
343
  }
232
344
  /**
233
345
  * Remove a rule
346
+ * Invalidates the evaluation cache since rules have changed
234
347
  */
235
348
  removeRule(ruleId) {
236
- return this.rulesEngine.unregisterRule(ruleId);
349
+ const result = this.rulesEngine.unregisterRule(ruleId);
350
+ if (result) {
351
+ this.clearCache();
352
+ }
353
+ return result;
237
354
  }
238
355
  /**
239
356
  * Get all rules
@@ -389,6 +506,7 @@ export class AgentSupervisor {
389
506
  }
390
507
  /**
391
508
  * Load preset configuration
509
+ * Invalidates the evaluation cache since rules have changed
392
510
  */
393
511
  async loadPreset(preset) {
394
512
  const presetConfig = rulePresets[preset];
@@ -398,6 +516,7 @@ export class AgentSupervisor {
398
516
  // Clear existing and load preset
399
517
  this.rulesEngine = new RulesEngine();
400
518
  this.rateLimiter.clearBuckets();
519
+ this.clearCache();
401
520
  this.rulesEngine.registerRules(presetConfig.rules);
402
521
  this.rateLimiter.registerLimits(presetConfig.rateLimits);
403
522
  await this.auditLogger.logConfigChanged('load_preset', 'preset_loaded', { preset });
@@ -1 +1 @@
1
- {"version":3,"file":"AgentSupervisor.js","sourceRoot":"","sources":["../../src/supervisor/AgentSupervisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentSupervisor.js","sourceRoot":"","sources":["../../src/supervisor/AgentSupervisor.ts"],"names":[],"mappings":"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"}