@blackms/aistack 1.5.2 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +61 -11
  2. package/dist/cli/commands/init.js +1 -1
  3. package/dist/cli/commands/init.js.map +1 -1
  4. package/dist/cli/commands/mcp.d.ts.map +1 -1
  5. package/dist/cli/commands/mcp.js +22 -12
  6. package/dist/cli/commands/mcp.js.map +1 -1
  7. package/dist/mcp/server.d.ts +1 -0
  8. package/dist/mcp/server.d.ts.map +1 -1
  9. package/dist/mcp/server.js +5 -1
  10. package/dist/mcp/server.js.map +1 -1
  11. package/dist/mcp/tools/task-tools.d.ts +241 -1
  12. package/dist/mcp/tools/task-tools.d.ts.map +1 -1
  13. package/dist/mcp/tools/task-tools.js +308 -3
  14. package/dist/mcp/tools/task-tools.js.map +1 -1
  15. package/dist/memory/index.d.ts +6 -1
  16. package/dist/memory/index.d.ts.map +1 -1
  17. package/dist/memory/index.js +2 -2
  18. package/dist/memory/index.js.map +1 -1
  19. package/dist/memory/sqlite-store.d.ts +68 -2
  20. package/dist/memory/sqlite-store.d.ts.map +1 -1
  21. package/dist/memory/sqlite-store.js +244 -6
  22. package/dist/memory/sqlite-store.js.map +1 -1
  23. package/dist/tasks/consensus-service.d.ts +146 -0
  24. package/dist/tasks/consensus-service.d.ts.map +1 -0
  25. package/dist/tasks/consensus-service.js +405 -0
  26. package/dist/tasks/consensus-service.js.map +1 -0
  27. package/dist/types.d.ts +49 -0
  28. package/dist/types.d.ts.map +1 -1
  29. package/dist/types.js.map +1 -1
  30. package/dist/utils/config.d.ts.map +1 -1
  31. package/dist/utils/config.js +34 -0
  32. package/dist/utils/config.js.map +1 -1
  33. package/dist/web/routes/consensus.d.ts +7 -0
  34. package/dist/web/routes/consensus.d.ts.map +1 -0
  35. package/dist/web/routes/consensus.js +218 -0
  36. package/dist/web/routes/consensus.js.map +1 -0
  37. package/dist/web/routes/index.d.ts +1 -0
  38. package/dist/web/routes/index.d.ts.map +1 -1
  39. package/dist/web/routes/index.js +1 -0
  40. package/dist/web/routes/index.js.map +1 -1
  41. package/dist/web/server.d.ts.map +1 -1
  42. package/dist/web/server.js +3 -1
  43. package/dist/web/server.js.map +1 -1
  44. package/dist/web/websocket/event-bridge.d.ts +19 -1
  45. package/dist/web/websocket/event-bridge.d.ts.map +1 -1
  46. package/dist/web/websocket/event-bridge.js +4 -0
  47. package/dist/web/websocket/event-bridge.js.map +1 -1
  48. package/package.json +1 -1
@@ -0,0 +1,405 @@
1
+ /**
2
+ * Consensus Service
3
+ * Manages consensus checkpoints for high-stakes tasks, preventing self-reinforcing agent cycles
4
+ */
5
+ import { randomUUID } from 'node:crypto';
6
+ import { logger } from '../utils/logger.js';
7
+ const log = logger.child('consensus');
8
+ const DEFAULT_CONFIG = {
9
+ enabled: false,
10
+ requireForRiskLevels: ['high', 'medium'],
11
+ reviewerStrategy: 'adversarial',
12
+ timeout: 300000, // 5 minutes
13
+ maxDepth: 5,
14
+ autoReject: false,
15
+ // Risk estimation defaults
16
+ highRiskAgentTypes: ['coder', 'devops', 'security-auditor'],
17
+ mediumRiskAgentTypes: ['architect', 'coordinator', 'analyst'],
18
+ highRiskPatterns: [
19
+ 'delete', 'remove', 'drop', 'deploy', 'production',
20
+ 'credentials', 'secret', 'password', 'token', 'api key',
21
+ ],
22
+ mediumRiskPatterns: ['modify', 'update', 'change', 'configure', 'install'],
23
+ };
24
+ export class ConsensusService {
25
+ store;
26
+ config;
27
+ expirationInterval = null;
28
+ constructor(store, appConfig) {
29
+ this.store = store;
30
+ // Merge config carefully to preserve defaults when values are undefined
31
+ const userConfig = appConfig.consensus ?? {};
32
+ this.config = {
33
+ ...DEFAULT_CONFIG,
34
+ ...userConfig,
35
+ // Preserve defaults for optional array fields when not explicitly set
36
+ highRiskAgentTypes: userConfig.highRiskAgentTypes ?? DEFAULT_CONFIG.highRiskAgentTypes,
37
+ mediumRiskAgentTypes: userConfig.mediumRiskAgentTypes ?? DEFAULT_CONFIG.mediumRiskAgentTypes,
38
+ highRiskPatterns: userConfig.highRiskPatterns ?? DEFAULT_CONFIG.highRiskPatterns,
39
+ mediumRiskPatterns: userConfig.mediumRiskPatterns ?? DEFAULT_CONFIG.mediumRiskPatterns,
40
+ };
41
+ log.debug('Consensus service initialized', {
42
+ enabled: this.config.enabled,
43
+ requireForRiskLevels: this.config.requireForRiskLevels,
44
+ reviewerStrategy: this.config.reviewerStrategy,
45
+ timeout: this.config.timeout,
46
+ maxDepth: this.config.maxDepth,
47
+ });
48
+ // Start expiration check if enabled
49
+ if (this.config.enabled) {
50
+ this.startExpirationCheck();
51
+ }
52
+ }
53
+ /**
54
+ * Check if consensus is enabled
55
+ */
56
+ isEnabled() {
57
+ return this.config.enabled;
58
+ }
59
+ /**
60
+ * Get the current configuration
61
+ */
62
+ getConfig() {
63
+ return { ...this.config };
64
+ }
65
+ /**
66
+ * Check if a task requires consensus before creating subtasks
67
+ */
68
+ requiresConsensus(riskLevel, depth, parentTaskId) {
69
+ // Disabled - no consensus required
70
+ if (!this.config.enabled) {
71
+ return { requiresConsensus: false };
72
+ }
73
+ // Check if risk level requires consensus
74
+ if (!this.config.requireForRiskLevels.includes(riskLevel)) {
75
+ return {
76
+ requiresConsensus: false,
77
+ reason: `Risk level '${riskLevel}' does not require consensus`,
78
+ riskLevel,
79
+ depth,
80
+ };
81
+ }
82
+ // Check depth limit
83
+ if (depth > this.config.maxDepth) {
84
+ return {
85
+ requiresConsensus: true,
86
+ reason: `Task depth ${depth} exceeds maximum allowed depth ${this.config.maxDepth}`,
87
+ riskLevel,
88
+ depth,
89
+ };
90
+ }
91
+ // Root tasks (no parent) don't require consensus
92
+ if (!parentTaskId) {
93
+ return {
94
+ requiresConsensus: false,
95
+ reason: 'Root tasks do not require consensus',
96
+ riskLevel,
97
+ depth,
98
+ };
99
+ }
100
+ return {
101
+ requiresConsensus: true,
102
+ reason: `Risk level '${riskLevel}' at depth ${depth} requires consensus`,
103
+ riskLevel,
104
+ depth,
105
+ };
106
+ }
107
+ /**
108
+ * Create a consensus checkpoint
109
+ */
110
+ createCheckpoint(options) {
111
+ const checkpointId = randomUUID();
112
+ // Warn if creating a checkpoint with no subtasks
113
+ if (options.proposedSubtasks.length === 0) {
114
+ log.warn('Creating consensus checkpoint with no proposed subtasks', {
115
+ checkpointId,
116
+ taskId: options.taskId,
117
+ riskLevel: options.riskLevel,
118
+ });
119
+ }
120
+ log.info('Creating consensus checkpoint', {
121
+ checkpointId,
122
+ taskId: options.taskId,
123
+ riskLevel: options.riskLevel,
124
+ subtaskCount: options.proposedSubtasks.length,
125
+ });
126
+ const checkpoint = this.store.createConsensusCheckpoint({
127
+ id: checkpointId,
128
+ taskId: options.taskId,
129
+ parentTaskId: options.parentTaskId,
130
+ proposedSubtasks: options.proposedSubtasks,
131
+ riskLevel: options.riskLevel,
132
+ reviewerStrategy: this.config.reviewerStrategy,
133
+ timeout: this.config.timeout,
134
+ });
135
+ return checkpoint;
136
+ }
137
+ /**
138
+ * Get a checkpoint by ID
139
+ */
140
+ getCheckpoint(checkpointId) {
141
+ return this.store.getConsensusCheckpoint(checkpointId);
142
+ }
143
+ /**
144
+ * Get checkpoint by task ID
145
+ */
146
+ getCheckpointByTaskId(taskId) {
147
+ return this.store.getConsensusCheckpointByTaskId(taskId);
148
+ }
149
+ /**
150
+ * Start agent review process for a checkpoint
151
+ * Returns information about the reviewer that should be spawned
152
+ */
153
+ startAgentReview(checkpointId) {
154
+ const checkpoint = this.store.getConsensusCheckpoint(checkpointId);
155
+ if (!checkpoint) {
156
+ return { success: false, error: 'Checkpoint not found' };
157
+ }
158
+ if (checkpoint.status !== 'pending') {
159
+ return { success: false, error: `Checkpoint is already ${checkpoint.status}` };
160
+ }
161
+ // Determine reviewer type based on strategy
162
+ let agentType = 'adversarial';
163
+ if (checkpoint.reviewerStrategy === 'different-model') {
164
+ // Could implement model selection logic here
165
+ agentType = 'reviewer';
166
+ }
167
+ const subtaskSummary = checkpoint.proposedSubtasks
168
+ .map((s, i) => `${i + 1}. [${s.agentType}] ${s.input.substring(0, 100)}...`)
169
+ .join('\n');
170
+ const prompt = `
171
+ You are reviewing a consensus checkpoint for high-stakes task execution.
172
+
173
+ **Risk Level:** ${checkpoint.riskLevel}
174
+ **Task ID:** ${checkpoint.taskId}
175
+ **Parent Task ID:** ${checkpoint.parentTaskId || 'None (root task)'}
176
+
177
+ **Proposed Subtasks:**
178
+ ${subtaskSummary}
179
+
180
+ Please analyze these subtasks for:
181
+ 1. Scope creep or mission drift from the parent task
182
+ 2. Potential for infinite recursion or self-reinforcing loops
183
+ 3. Appropriate risk assessment
184
+ 4. Security or safety concerns
185
+
186
+ Respond with your decision in this JSON format:
187
+ {
188
+ "approved": true/false,
189
+ "rejectedSubtaskIds": ["id1", "id2"], // optional - only if partially approving
190
+ "feedback": "Your detailed reasoning"
191
+ }
192
+ `.trim();
193
+ log.info('Starting agent review', {
194
+ checkpointId,
195
+ agentType,
196
+ reviewerStrategy: checkpoint.reviewerStrategy,
197
+ });
198
+ return {
199
+ success: true,
200
+ checkpoint,
201
+ reviewerConfig: {
202
+ agentType,
203
+ prompt,
204
+ checkpointId,
205
+ },
206
+ };
207
+ }
208
+ /**
209
+ * Submit a decision for a checkpoint
210
+ */
211
+ submitDecision(checkpointId, decision) {
212
+ const checkpoint = this.store.getConsensusCheckpoint(checkpointId);
213
+ if (!checkpoint) {
214
+ return { success: false, error: 'Checkpoint not found' };
215
+ }
216
+ if (checkpoint.status !== 'pending') {
217
+ return { success: false, error: `Checkpoint is already ${checkpoint.status}` };
218
+ }
219
+ // Check if checkpoint has expired
220
+ if (new Date() > checkpoint.expiresAt) {
221
+ this.store.updateConsensusCheckpointStatus(checkpointId, 'expired');
222
+ return { success: false, error: 'Checkpoint has expired' };
223
+ }
224
+ const newStatus = decision.approved ? 'approved' : 'rejected';
225
+ log.info('Decision submitted', {
226
+ checkpointId,
227
+ approved: decision.approved,
228
+ reviewedBy: decision.reviewedBy,
229
+ reviewerType: decision.reviewerType,
230
+ rejectedSubtasks: decision.rejectedSubtaskIds?.length ?? 0,
231
+ });
232
+ const success = this.store.updateConsensusCheckpointStatus(checkpointId, newStatus, decision);
233
+ if (!success) {
234
+ return { success: false, error: 'Failed to update checkpoint status' };
235
+ }
236
+ const updatedCheckpoint = this.store.getConsensusCheckpoint(checkpointId);
237
+ return { success: true, checkpoint: updatedCheckpoint ?? undefined };
238
+ }
239
+ /**
240
+ * Approve a checkpoint (convenience method for human approval)
241
+ */
242
+ approveCheckpoint(checkpointId, reviewedBy, feedback) {
243
+ return this.submitDecision(checkpointId, {
244
+ approved: true,
245
+ feedback,
246
+ reviewedBy,
247
+ reviewerType: 'human',
248
+ });
249
+ }
250
+ /**
251
+ * Reject a checkpoint (convenience method for human rejection)
252
+ */
253
+ rejectCheckpoint(checkpointId, reviewedBy, feedback, rejectedSubtaskIds) {
254
+ return this.submitDecision(checkpointId, {
255
+ approved: false,
256
+ rejectedSubtaskIds,
257
+ feedback,
258
+ reviewedBy,
259
+ reviewerType: 'human',
260
+ });
261
+ }
262
+ /**
263
+ * List pending checkpoints
264
+ */
265
+ listPendingCheckpoints(options) {
266
+ return this.store.listPendingCheckpoints(options);
267
+ }
268
+ /**
269
+ * Count total pending checkpoints
270
+ */
271
+ countPendingCheckpoints() {
272
+ return this.store.countPendingCheckpoints();
273
+ }
274
+ /**
275
+ * Get checkpoint events (audit log)
276
+ */
277
+ getCheckpointEvents(checkpointId, limit) {
278
+ return this.store.getConsensusCheckpointEvents(checkpointId, limit);
279
+ }
280
+ /**
281
+ * Expire old checkpoints
282
+ */
283
+ expireCheckpoints() {
284
+ const count = this.store.expireOldCheckpoints();
285
+ if (count > 0) {
286
+ log.info('Expired checkpoints', { count });
287
+ }
288
+ return count;
289
+ }
290
+ /**
291
+ * Calculate task depth from parent chain
292
+ */
293
+ calculateTaskDepth(parentTaskId) {
294
+ if (!parentTaskId) {
295
+ return 0;
296
+ }
297
+ let depth = 0;
298
+ let currentTaskId = parentTaskId;
299
+ while (currentTaskId && depth < 100) { // Safety limit
300
+ const task = this.store.getTask(currentTaskId);
301
+ if (!task)
302
+ break;
303
+ depth++;
304
+ currentTaskId = task.parentTaskId;
305
+ }
306
+ return depth;
307
+ }
308
+ /**
309
+ * Estimate risk level based on agent type and input
310
+ */
311
+ estimateRiskLevel(agentType, input) {
312
+ // High-risk agent types (configurable)
313
+ const highRiskAgents = this.config.highRiskAgentTypes ?? [];
314
+ if (highRiskAgents.includes(agentType)) {
315
+ return 'high';
316
+ }
317
+ // Medium-risk agent types (configurable)
318
+ const mediumRiskAgents = this.config.mediumRiskAgentTypes ?? [];
319
+ if (mediumRiskAgents.includes(agentType)) {
320
+ return 'medium';
321
+ }
322
+ // Check input for high-risk patterns (configurable)
323
+ if (input) {
324
+ const loweredInput = input.toLowerCase();
325
+ const highRiskPatterns = this.config.highRiskPatterns ?? [];
326
+ for (const pattern of highRiskPatterns) {
327
+ if (loweredInput.includes(pattern.toLowerCase())) {
328
+ return 'high';
329
+ }
330
+ }
331
+ const mediumRiskPatterns = this.config.mediumRiskPatterns ?? [];
332
+ for (const pattern of mediumRiskPatterns) {
333
+ if (loweredInput.includes(pattern.toLowerCase())) {
334
+ return 'medium';
335
+ }
336
+ }
337
+ }
338
+ return 'low';
339
+ }
340
+ /**
341
+ * Get approved subtasks from a checkpoint (filters out rejected ones)
342
+ */
343
+ getApprovedSubtasks(checkpointId) {
344
+ const checkpoint = this.store.getConsensusCheckpoint(checkpointId);
345
+ if (!checkpoint || checkpoint.status !== 'approved') {
346
+ return [];
347
+ }
348
+ const rejectedIds = new Set(checkpoint.decision?.rejectedSubtaskIds ?? []);
349
+ return checkpoint.proposedSubtasks.filter(s => !rejectedIds.has(s.id));
350
+ }
351
+ /**
352
+ * Start periodic expiration check
353
+ */
354
+ startExpirationCheck() {
355
+ // Check every minute
356
+ this.expirationInterval = setInterval(() => {
357
+ this.expireCheckpoints();
358
+ }, 60000);
359
+ // Don't keep the process alive just for expiration checks
360
+ this.expirationInterval.unref();
361
+ }
362
+ /**
363
+ * Stop periodic expiration check
364
+ */
365
+ stopExpirationCheck() {
366
+ if (this.expirationInterval) {
367
+ clearInterval(this.expirationInterval);
368
+ this.expirationInterval = null;
369
+ }
370
+ }
371
+ /**
372
+ * Cleanup
373
+ */
374
+ destroy() {
375
+ this.stopExpirationCheck();
376
+ }
377
+ }
378
+ // Singleton instance management
379
+ let consensusService = null;
380
+ let lastConfig = null;
381
+ /**
382
+ * Get the consensus service singleton
383
+ */
384
+ export function getConsensusService(store, config, forceNew = false) {
385
+ const configHash = JSON.stringify(config.consensus);
386
+ if (forceNew || !consensusService || lastConfig !== configHash) {
387
+ if (consensusService) {
388
+ consensusService.destroy();
389
+ }
390
+ consensusService = new ConsensusService(store, config);
391
+ lastConfig = configHash;
392
+ }
393
+ return consensusService;
394
+ }
395
+ /**
396
+ * Reset the consensus service singleton
397
+ */
398
+ export function resetConsensusService() {
399
+ if (consensusService) {
400
+ consensusService.destroy();
401
+ consensusService = null;
402
+ lastConfig = null;
403
+ }
404
+ }
405
+ //# sourceMappingURL=consensus-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consensus-service.js","sourceRoot":"","sources":["../../src/tasks/consensus-service.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -90,8 +90,56 @@ export interface Task {
90
90
  output?: string;
91
91
  createdAt: Date;
92
92
  completedAt?: Date;
93
+ riskLevel?: TaskRiskLevel;
94
+ consensusCheckpointId?: string;
95
+ parentTaskId?: string;
96
+ depth?: number;
93
97
  }
94
98
  export type TaskStatus = 'pending' | 'running' | 'completed' | 'failed';
99
+ export type TaskRiskLevel = 'low' | 'medium' | 'high';
100
+ export type ConsensusStatus = 'pending' | 'approved' | 'rejected' | 'expired';
101
+ export type ReviewerStrategy = 'adversarial' | 'different-model' | 'human';
102
+ export interface ConsensusConfig {
103
+ enabled: boolean;
104
+ requireForRiskLevels: TaskRiskLevel[];
105
+ reviewerStrategy: ReviewerStrategy;
106
+ timeout: number;
107
+ maxDepth: number;
108
+ autoReject: boolean;
109
+ highRiskAgentTypes?: string[];
110
+ mediumRiskAgentTypes?: string[];
111
+ highRiskPatterns?: string[];
112
+ mediumRiskPatterns?: string[];
113
+ }
114
+ export interface ConsensusCheckpoint {
115
+ id: string;
116
+ taskId: string;
117
+ parentTaskId?: string;
118
+ proposedSubtasks: ProposedSubtask[];
119
+ riskLevel: TaskRiskLevel;
120
+ status: ConsensusStatus;
121
+ reviewerStrategy: ReviewerStrategy;
122
+ reviewerId?: string;
123
+ reviewerType?: 'agent' | 'human';
124
+ decision?: ConsensusDecision;
125
+ createdAt: Date;
126
+ expiresAt: Date;
127
+ decidedAt?: Date;
128
+ }
129
+ export interface ProposedSubtask {
130
+ id: string;
131
+ agentType: string;
132
+ input: string;
133
+ estimatedRiskLevel: TaskRiskLevel;
134
+ parentTaskId: string;
135
+ }
136
+ export interface ConsensusDecision {
137
+ approved: boolean;
138
+ rejectedSubtaskIds?: string[];
139
+ feedback?: string;
140
+ reviewedBy: string;
141
+ reviewerType: 'agent' | 'human';
142
+ }
95
143
  export interface Project {
96
144
  id: string;
97
145
  name: string;
@@ -217,6 +265,7 @@ export interface AgentStackConfig {
217
265
  slack?: SlackConfig;
218
266
  driftDetection?: DriftDetectionConfig;
219
267
  resourceExhaustion?: ResourceExhaustionConfig;
268
+ consensus?: ConsensusConfig;
220
269
  }
221
270
  export interface MemoryConfig {
222
271
  path: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAqMH,yBAAyB;AACzB,MAAM,CAAC,MAAM,iBAAiB,GAAmC;IAC/D,KAAK,EAAE,CAAC,eAAe,EAAE,WAAW,CAAC;IACrC,aAAa,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;IACtC,MAAM,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,WAAW,CAAC;IACrD,WAAW,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;IACvC,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;CACd,CAAC;AAgLF,MAAM,UAAU,EAAE,CAAI,KAAQ;IAC5B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,GAAG,CAAY,KAAQ;IACrC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC;AAyFD,oCAAoC;AACpC,MAAM,CAAC,MAAM,2BAA2B,GAAuD;IAC7F,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC9B,OAAO,EAAE,EAAE,EAAE,0CAA0C;CACxD,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AA8PH,yBAAyB;AACzB,MAAM,CAAC,MAAM,iBAAiB,GAAmC;IAC/D,KAAK,EAAE,CAAC,eAAe,EAAE,WAAW,CAAC;IACrC,aAAa,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;IACtC,MAAM,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,WAAW,CAAC;IACrD,WAAW,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;IACvC,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;CACd,CAAC;AAiLF,MAAM,UAAU,EAAE,CAAI,KAAQ;IAC5B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,GAAG,CAAY,KAAQ;IACrC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC;AAyFD,oCAAoC;AACpC,MAAM,CAAC,MAAM,2BAA2B,GAAuD;IAC7F,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC9B,OAAO,EAAE,EAAE,EAAE,0CAA0C;CACxD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AA8KpD;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAkChE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,gBAAgB,CAEnD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAW9E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAWrF;AAKD;;GAEG;AACH,wBAAgB,SAAS,IAAI,gBAAgB,CAK5C;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAiNpD;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAkChE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,gBAAgB,CAEnD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAW9E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAWrF;AAKD;;GAEG;AACH,wBAAgB,SAAS,IAAI,gBAAgB,CAK5C;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
@@ -71,6 +71,21 @@ const SlackConfigSchema = z.object({
71
71
  notifyOnResourceWarning: z.boolean().default(true),
72
72
  notifyOnResourceIntervention: z.boolean().default(true),
73
73
  });
74
+ /**
75
+ * Drift Detection Configuration Schema
76
+ *
77
+ * Controls semantic drift detection for task creation.
78
+ *
79
+ * @property enabled - Enable drift detection (requires vector search provider)
80
+ * @property threshold - Similarity threshold (0.0-1.0) to trigger drift detection
81
+ * @property warningThreshold - Optional lower threshold for warnings only
82
+ * @property ancestorDepth - How many ancestor tasks to check (1-10)
83
+ * @property behavior - 'warn' logs and allows, 'prevent' blocks task creation
84
+ * @property asyncEmbedding - When true (default), task indexing is non-blocking.
85
+ * WARNING: This creates a race condition where child tasks created immediately
86
+ * after a parent may not have the parent's embedding available for drift checking.
87
+ * Set to false for strict drift detection at the cost of slower task creation.
88
+ */
74
89
  const DriftDetectionConfigSchema = z.object({
75
90
  enabled: z.boolean().default(false),
76
91
  threshold: z.number().min(0).max(1).default(0.95),
@@ -98,6 +113,24 @@ const ResourceExhaustionConfigSchema = z.object({
98
113
  requireConfirmationOnIntervention: z.boolean().default(true),
99
114
  pauseOnIntervention: z.boolean().default(true),
100
115
  });
116
+ const ConsensusConfigSchema = z.object({
117
+ enabled: z.boolean().default(false),
118
+ requireForRiskLevels: z.array(z.enum(['low', 'medium', 'high'])).default(['high', 'medium']),
119
+ reviewerStrategy: z.enum(['adversarial', 'different-model', 'human']).default('adversarial'),
120
+ timeout: z.number().min(30000).max(3600000).default(300000),
121
+ maxDepth: z.number().min(1).max(10).default(5),
122
+ autoReject: z.boolean().default(false),
123
+ // Risk estimation configuration
124
+ highRiskAgentTypes: z.array(z.string()).default(['coder', 'devops', 'security-auditor']),
125
+ mediumRiskAgentTypes: z.array(z.string()).default(['architect', 'coordinator', 'analyst']),
126
+ highRiskPatterns: z.array(z.string()).default([
127
+ 'delete', 'remove', 'drop', 'deploy', 'production',
128
+ 'credentials', 'secret', 'password', 'token', 'api key',
129
+ ]),
130
+ mediumRiskPatterns: z.array(z.string()).default([
131
+ 'modify', 'update', 'change', 'configure', 'install',
132
+ ]),
133
+ });
101
134
  const ConfigSchema = z.object({
102
135
  version: z.string().default('1.0.0'),
103
136
  memory: MemoryConfigSchema.default({}),
@@ -110,6 +143,7 @@ const ConfigSchema = z.object({
110
143
  slack: SlackConfigSchema.default({}),
111
144
  driftDetection: DriftDetectionConfigSchema.default({}),
112
145
  resourceExhaustion: ResourceExhaustionConfigSchema.default({}),
146
+ consensus: ConsensusConfigSchema.default({}),
113
147
  });
114
148
  const CONFIG_FILE_NAME = 'aistack.config.json';
115
149
  /**