@sparkleideas/swarm 3.0.0-alpha.6-patch.17 → 3.0.0-alpha.6-patch.18

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 (126) hide show
  1. package/package.json +1 -1
  2. package/dist/agent-pool.d.ts +0 -52
  3. package/dist/agent-pool.d.ts.map +0 -1
  4. package/dist/agent-pool.js +0 -365
  5. package/dist/agent-pool.js.map +0 -1
  6. package/dist/application/commands/create-task.command.d.ts +0 -64
  7. package/dist/application/commands/create-task.command.d.ts.map +0 -1
  8. package/dist/application/commands/create-task.command.js +0 -77
  9. package/dist/application/commands/create-task.command.js.map +0 -1
  10. package/dist/application/commands/spawn-agent.command.d.ts +0 -63
  11. package/dist/application/commands/spawn-agent.command.d.ts.map +0 -1
  12. package/dist/application/commands/spawn-agent.command.js +0 -74
  13. package/dist/application/commands/spawn-agent.command.js.map +0 -1
  14. package/dist/application/index.d.ts +0 -9
  15. package/dist/application/index.d.ts.map +0 -1
  16. package/dist/application/index.js +0 -11
  17. package/dist/application/index.js.map +0 -1
  18. package/dist/application/services/swarm-application-service.d.ts +0 -112
  19. package/dist/application/services/swarm-application-service.d.ts.map +0 -1
  20. package/dist/application/services/swarm-application-service.js +0 -153
  21. package/dist/application/services/swarm-application-service.js.map +0 -1
  22. package/dist/attention-coordinator.d.ts +0 -212
  23. package/dist/attention-coordinator.d.ts.map +0 -1
  24. package/dist/attention-coordinator.js +0 -667
  25. package/dist/attention-coordinator.js.map +0 -1
  26. package/dist/consensus/byzantine.d.ts +0 -63
  27. package/dist/consensus/byzantine.d.ts.map +0 -1
  28. package/dist/consensus/byzantine.js +0 -316
  29. package/dist/consensus/byzantine.js.map +0 -1
  30. package/dist/consensus/gossip.d.ts +0 -69
  31. package/dist/consensus/gossip.d.ts.map +0 -1
  32. package/dist/consensus/gossip.js +0 -378
  33. package/dist/consensus/gossip.js.map +0 -1
  34. package/dist/consensus/index.d.ts +0 -49
  35. package/dist/consensus/index.d.ts.map +0 -1
  36. package/dist/consensus/index.js +0 -203
  37. package/dist/consensus/index.js.map +0 -1
  38. package/dist/consensus/raft.d.ts +0 -62
  39. package/dist/consensus/raft.d.ts.map +0 -1
  40. package/dist/consensus/raft.js +0 -324
  41. package/dist/consensus/raft.js.map +0 -1
  42. package/dist/coordination/agent-registry.d.ts +0 -68
  43. package/dist/coordination/agent-registry.d.ts.map +0 -1
  44. package/dist/coordination/agent-registry.js +0 -412
  45. package/dist/coordination/agent-registry.js.map +0 -1
  46. package/dist/coordination/index.d.ts +0 -8
  47. package/dist/coordination/index.d.ts.map +0 -1
  48. package/dist/coordination/index.js +0 -8
  49. package/dist/coordination/index.js.map +0 -1
  50. package/dist/coordination/swarm-hub.d.ts +0 -150
  51. package/dist/coordination/swarm-hub.d.ts.map +0 -1
  52. package/dist/coordination/swarm-hub.js +0 -617
  53. package/dist/coordination/swarm-hub.js.map +0 -1
  54. package/dist/coordination/task-orchestrator.d.ts +0 -96
  55. package/dist/coordination/task-orchestrator.d.ts.map +0 -1
  56. package/dist/coordination/task-orchestrator.js +0 -412
  57. package/dist/coordination/task-orchestrator.js.map +0 -1
  58. package/dist/domain/entities/agent.d.ts +0 -151
  59. package/dist/domain/entities/agent.d.ts.map +0 -1
  60. package/dist/domain/entities/agent.js +0 -280
  61. package/dist/domain/entities/agent.js.map +0 -1
  62. package/dist/domain/entities/task.d.ts +0 -133
  63. package/dist/domain/entities/task.d.ts.map +0 -1
  64. package/dist/domain/entities/task.js +0 -261
  65. package/dist/domain/entities/task.js.map +0 -1
  66. package/dist/domain/index.d.ts +0 -11
  67. package/dist/domain/index.d.ts.map +0 -1
  68. package/dist/domain/index.js +0 -11
  69. package/dist/domain/index.js.map +0 -1
  70. package/dist/domain/repositories/agent-repository.interface.d.ts +0 -57
  71. package/dist/domain/repositories/agent-repository.interface.d.ts.map +0 -1
  72. package/dist/domain/repositories/agent-repository.interface.js +0 -9
  73. package/dist/domain/repositories/agent-repository.interface.js.map +0 -1
  74. package/dist/domain/repositories/task-repository.interface.d.ts +0 -61
  75. package/dist/domain/repositories/task-repository.interface.d.ts.map +0 -1
  76. package/dist/domain/repositories/task-repository.interface.js +0 -9
  77. package/dist/domain/repositories/task-repository.interface.js.map +0 -1
  78. package/dist/domain/services/coordination-service.d.ts +0 -84
  79. package/dist/domain/services/coordination-service.d.ts.map +0 -1
  80. package/dist/domain/services/coordination-service.js +0 -231
  81. package/dist/domain/services/coordination-service.js.map +0 -1
  82. package/dist/federation-hub.d.ts +0 -284
  83. package/dist/federation-hub.d.ts.map +0 -1
  84. package/dist/federation-hub.js +0 -692
  85. package/dist/federation-hub.js.map +0 -1
  86. package/dist/index.d.ts +0 -107
  87. package/dist/index.d.ts.map +0 -1
  88. package/dist/index.js +0 -142
  89. package/dist/index.js.map +0 -1
  90. package/dist/message-bus.d.ts +0 -48
  91. package/dist/message-bus.d.ts.map +0 -1
  92. package/dist/message-bus.js +0 -499
  93. package/dist/message-bus.js.map +0 -1
  94. package/dist/queen-coordinator.d.ts +0 -577
  95. package/dist/queen-coordinator.d.ts.map +0 -1
  96. package/dist/queen-coordinator.js +0 -1308
  97. package/dist/queen-coordinator.js.map +0 -1
  98. package/dist/shared/events.d.ts +0 -63
  99. package/dist/shared/events.d.ts.map +0 -1
  100. package/dist/shared/events.js +0 -203
  101. package/dist/shared/events.js.map +0 -1
  102. package/dist/shared/types.d.ts +0 -212
  103. package/dist/shared/types.d.ts.map +0 -1
  104. package/dist/shared/types.js +0 -22
  105. package/dist/shared/types.js.map +0 -1
  106. package/dist/topology-manager.d.ts +0 -62
  107. package/dist/topology-manager.d.ts.map +0 -1
  108. package/dist/topology-manager.js +0 -538
  109. package/dist/topology-manager.js.map +0 -1
  110. package/dist/types.d.ts +0 -353
  111. package/dist/types.d.ts.map +0 -1
  112. package/dist/types.js +0 -43
  113. package/dist/types.js.map +0 -1
  114. package/dist/unified-coordinator.d.ts +0 -260
  115. package/dist/unified-coordinator.d.ts.map +0 -1
  116. package/dist/unified-coordinator.js +0 -1460
  117. package/dist/unified-coordinator.js.map +0 -1
  118. package/dist/workers/index.d.ts +0 -29
  119. package/dist/workers/index.d.ts.map +0 -1
  120. package/dist/workers/index.js +0 -49
  121. package/dist/workers/index.js.map +0 -1
  122. package/dist/workers/worker-dispatch.d.ts +0 -239
  123. package/dist/workers/worker-dispatch.d.ts.map +0 -1
  124. package/dist/workers/worker-dispatch.js +0 -846
  125. package/dist/workers/worker-dispatch.js.map +0 -1
  126. package/tsconfig.build.tsbuildinfo +0 -1
@@ -1,412 +0,0 @@
1
- /**
2
- * V3 Agent Registry
3
- * Manages registration, lifecycle, and capabilities of all 15 agents
4
- *
5
- * Based on ADR-002 (DDD) and 15-Agent Swarm Architecture
6
- */
7
- import { agentSpawnedEvent, agentStatusChangedEvent, agentErrorEvent } from '../shared/events';
8
- // =============================================================================
9
- // Agent Registry Implementation
10
- // =============================================================================
11
- export class AgentRegistry {
12
- definitions = new Map();
13
- states = new Map();
14
- healthChecks = new Map();
15
- eventBus;
16
- healthCheckInterval = 5000;
17
- healthCheckTimer = null;
18
- maxMissedHeartbeats = 3;
19
- constructor(eventBus) {
20
- this.eventBus = eventBus;
21
- this.registerDefaultAgents();
22
- }
23
- // ==========================================================================
24
- // Registration
25
- // ==========================================================================
26
- register(definition) {
27
- if (this.definitions.has(definition.id)) {
28
- throw new Error(`Agent ${definition.id} is already registered`);
29
- }
30
- this.definitions.set(definition.id, definition);
31
- this.healthChecks.set(definition.id, {
32
- agentId: definition.id,
33
- healthy: false,
34
- lastHeartbeat: 0,
35
- consecutiveMisses: 0,
36
- status: 'idle'
37
- });
38
- }
39
- unregister(agentId) {
40
- if (this.states.has(agentId)) {
41
- throw new Error(`Cannot unregister active agent ${agentId}`);
42
- }
43
- this.healthChecks.delete(agentId);
44
- return this.definitions.delete(agentId);
45
- }
46
- isRegistered(agentId) {
47
- return this.definitions.has(agentId);
48
- }
49
- // ==========================================================================
50
- // Lifecycle
51
- // ==========================================================================
52
- async spawn(agentId) {
53
- const definition = this.definitions.get(agentId);
54
- if (!definition) {
55
- throw new Error(`Agent ${agentId} is not registered`);
56
- }
57
- if (this.states.has(agentId)) {
58
- throw new Error(`Agent ${agentId} is already spawned`);
59
- }
60
- const state = {
61
- id: agentId,
62
- role: definition.role,
63
- status: 'idle',
64
- currentTask: null,
65
- completedTasks: [],
66
- metrics: this.createInitialMetrics(),
67
- lastHeartbeat: Date.now()
68
- };
69
- this.states.set(agentId, state);
70
- const healthStatus = this.healthChecks.get(agentId);
71
- healthStatus.healthy = true;
72
- healthStatus.lastHeartbeat = Date.now();
73
- healthStatus.status = 'idle';
74
- await this.eventBus.emit(agentSpawnedEvent(agentId, definition.role));
75
- return state;
76
- }
77
- async terminate(agentId) {
78
- const state = this.states.get(agentId);
79
- if (!state) {
80
- return false;
81
- }
82
- if (state.currentTask) {
83
- throw new Error(`Cannot terminate agent ${agentId} with active task ${state.currentTask}`);
84
- }
85
- this.states.delete(agentId);
86
- const healthStatus = this.healthChecks.get(agentId);
87
- if (healthStatus) {
88
- healthStatus.healthy = false;
89
- healthStatus.status = 'idle';
90
- }
91
- await this.eventBus.emit(agentStatusChangedEvent(agentId, state.status, 'terminated'));
92
- return true;
93
- }
94
- // ==========================================================================
95
- // State Management
96
- // ==========================================================================
97
- getState(agentId) {
98
- return this.states.get(agentId);
99
- }
100
- updateStatus(agentId, status) {
101
- const state = this.states.get(agentId);
102
- if (!state) {
103
- throw new Error(`Agent ${agentId} is not spawned`);
104
- }
105
- const previousStatus = state.status;
106
- state.status = status;
107
- const healthStatus = this.healthChecks.get(agentId);
108
- if (healthStatus) {
109
- healthStatus.status = status;
110
- }
111
- this.eventBus.emitSync(agentStatusChangedEvent(agentId, previousStatus, status));
112
- }
113
- assignTask(agentId, taskId) {
114
- const state = this.states.get(agentId);
115
- if (!state) {
116
- throw new Error(`Agent ${agentId} is not spawned`);
117
- }
118
- if (state.currentTask) {
119
- throw new Error(`Agent ${agentId} already has task ${state.currentTask}`);
120
- }
121
- state.currentTask = taskId;
122
- this.updateStatus(agentId, 'active');
123
- }
124
- completeTask(agentId, taskId) {
125
- const state = this.states.get(agentId);
126
- if (!state) {
127
- throw new Error(`Agent ${agentId} is not spawned`);
128
- }
129
- if (state.currentTask !== taskId) {
130
- throw new Error(`Agent ${agentId} current task is ${state.currentTask}, not ${taskId}`);
131
- }
132
- state.completedTasks.push(taskId);
133
- state.currentTask = null;
134
- state.metrics.tasksCompleted++;
135
- this.updateStatus(agentId, 'idle');
136
- }
137
- // ==========================================================================
138
- // Queries
139
- // ==========================================================================
140
- getDefinition(agentId) {
141
- return this.definitions.get(agentId);
142
- }
143
- getAllAgents() {
144
- return Array.from(this.definitions.values());
145
- }
146
- getActiveAgents() {
147
- return Array.from(this.states.values()).filter(s => s.status === 'active');
148
- }
149
- getAgentsByDomain(domain) {
150
- return Array.from(this.definitions.values()).filter(d => d.domain === domain);
151
- }
152
- getAgentsByCapability(taskType) {
153
- return Array.from(this.definitions.values()).filter(d => d.capabilities.some(c => c.supportedTaskTypes.includes(taskType)));
154
- }
155
- // ==========================================================================
156
- // Health Management
157
- // ==========================================================================
158
- heartbeat(agentId) {
159
- const state = this.states.get(agentId);
160
- if (state) {
161
- state.lastHeartbeat = Date.now();
162
- }
163
- const healthStatus = this.healthChecks.get(agentId);
164
- if (healthStatus) {
165
- healthStatus.lastHeartbeat = Date.now();
166
- healthStatus.consecutiveMisses = 0;
167
- healthStatus.healthy = true;
168
- }
169
- }
170
- getHealthStatus() {
171
- return new Map(this.healthChecks);
172
- }
173
- startHealthChecks() {
174
- if (this.healthCheckTimer) {
175
- return;
176
- }
177
- this.healthCheckTimer = setInterval(() => {
178
- this.performHealthCheck();
179
- }, this.healthCheckInterval);
180
- }
181
- stopHealthChecks() {
182
- if (this.healthCheckTimer) {
183
- clearInterval(this.healthCheckTimer);
184
- this.healthCheckTimer = null;
185
- }
186
- }
187
- performHealthCheck() {
188
- const now = Date.now();
189
- for (const [agentId, healthStatus] of this.healthChecks) {
190
- const state = this.states.get(agentId);
191
- if (!state) {
192
- continue;
193
- }
194
- const timeSinceHeartbeat = now - healthStatus.lastHeartbeat;
195
- if (timeSinceHeartbeat > this.healthCheckInterval) {
196
- healthStatus.consecutiveMisses++;
197
- if (healthStatus.consecutiveMisses >= this.maxMissedHeartbeats) {
198
- healthStatus.healthy = false;
199
- this.updateStatus(agentId, 'error');
200
- this.eventBus.emitSync(agentErrorEvent(agentId, new Error(`Agent ${agentId} missed ${healthStatus.consecutiveMisses} heartbeats`)));
201
- }
202
- }
203
- }
204
- }
205
- // ==========================================================================
206
- // Events
207
- // ==========================================================================
208
- onAgentEvent(handler) {
209
- const unsubscribers = [
210
- this.eventBus.subscribe('agent:spawned', handler),
211
- this.eventBus.subscribe('agent:status-changed', handler),
212
- this.eventBus.subscribe('agent:task-assigned', handler),
213
- this.eventBus.subscribe('agent:task-completed', handler),
214
- this.eventBus.subscribe('agent:error', handler)
215
- ];
216
- return () => {
217
- unsubscribers.forEach(unsub => unsub());
218
- };
219
- }
220
- // ==========================================================================
221
- // Default Agent Registration
222
- // ==========================================================================
223
- registerDefaultAgents() {
224
- const agentDefinitions = [
225
- {
226
- id: 'agent-1',
227
- role: 'queen-coordinator',
228
- domain: 'core',
229
- description: 'Orchestration & GitHub Issue management for all 15 agents',
230
- capabilities: [
231
- { name: 'orchestration', description: 'Coordinate all agents', supportedTaskTypes: ['architecture-design'] },
232
- { name: 'github-management', description: 'Manage GitHub issues and PRs', supportedTaskTypes: ['documentation'] }
233
- ],
234
- dependencies: [],
235
- priority: 1
236
- },
237
- {
238
- id: 'agent-2',
239
- role: 'security-architect',
240
- domain: 'security',
241
- description: 'Security architecture review and design',
242
- capabilities: [
243
- { name: 'security-design', description: 'Design security architecture', supportedTaskTypes: ['security-audit', 'architecture-design'] }
244
- ],
245
- dependencies: [],
246
- priority: 2
247
- },
248
- {
249
- id: 'agent-3',
250
- role: 'security-implementer',
251
- domain: 'security',
252
- description: 'CVE fixes and security code implementation',
253
- capabilities: [
254
- { name: 'security-implementation', description: 'Implement security fixes', supportedTaskTypes: ['security-fix', 'implementation'] }
255
- ],
256
- dependencies: ['agent-2'],
257
- priority: 2
258
- },
259
- {
260
- id: 'agent-4',
261
- role: 'security-tester',
262
- domain: 'security',
263
- description: 'Security testing using TDD London School methodology',
264
- capabilities: [
265
- { name: 'security-testing', description: 'Write and run security tests', supportedTaskTypes: ['security-test', 'test-writing'] }
266
- ],
267
- dependencies: ['agent-2'],
268
- priority: 2
269
- },
270
- {
271
- id: 'agent-5',
272
- role: 'core-architect',
273
- domain: 'core',
274
- description: 'Core module DDD architecture design',
275
- capabilities: [
276
- { name: 'architecture', description: 'Design core architecture', supportedTaskTypes: ['architecture-design'] }
277
- ],
278
- dependencies: ['agent-2'],
279
- priority: 3
280
- },
281
- {
282
- id: 'agent-6',
283
- role: 'core-implementer',
284
- domain: 'core',
285
- description: 'Core module implementation and type system modernization',
286
- capabilities: [
287
- { name: 'core-implementation', description: 'Implement core modules', supportedTaskTypes: ['implementation'] }
288
- ],
289
- dependencies: ['agent-5'],
290
- priority: 3
291
- },
292
- {
293
- id: 'agent-7',
294
- role: 'memory-specialist',
295
- domain: 'core',
296
- description: 'Memory system unification with AgentDB (150x-12500x improvement)',
297
- capabilities: [
298
- { name: 'memory-optimization', description: 'Optimize memory systems', supportedTaskTypes: ['memory-optimization', 'implementation'] }
299
- ],
300
- dependencies: ['agent-5'],
301
- priority: 4
302
- },
303
- {
304
- id: 'agent-8',
305
- role: 'swarm-specialist',
306
- domain: 'core',
307
- description: 'Single SwarmCoordinator (merge 4 systems)',
308
- capabilities: [
309
- { name: 'swarm-coordination', description: 'Design swarm coordination', supportedTaskTypes: ['swarm-coordination', 'implementation'] }
310
- ],
311
- dependencies: ['agent-5'],
312
- priority: 4
313
- },
314
- {
315
- id: 'agent-9',
316
- role: 'mcp-specialist',
317
- domain: 'core',
318
- description: 'MCP server optimization and enhancement',
319
- capabilities: [
320
- { name: 'mcp-optimization', description: 'Optimize MCP server', supportedTaskTypes: ['mcp-enhancement', 'implementation'] }
321
- ],
322
- dependencies: ['agent-5'],
323
- priority: 4
324
- },
325
- {
326
- id: 'agent-10',
327
- role: 'integration-architect',
328
- domain: 'integration',
329
- description: 'agentic-flow@alpha deep integration',
330
- capabilities: [
331
- { name: 'integration', description: 'Integrate with agentic-flow', supportedTaskTypes: ['integration', 'architecture-design'] }
332
- ],
333
- dependencies: ['agent-5', 'agent-7', 'agent-8', 'agent-9'],
334
- priority: 5
335
- },
336
- {
337
- id: 'agent-11',
338
- role: 'cli-hooks-developer',
339
- domain: 'integration',
340
- description: 'CLI modernization and hooks system development',
341
- capabilities: [
342
- { name: 'cli-development', description: 'Develop CLI and hooks', supportedTaskTypes: ['cli-development', 'implementation'] }
343
- ],
344
- dependencies: ['agent-9', 'agent-10'],
345
- priority: 5
346
- },
347
- {
348
- id: 'agent-12',
349
- role: 'neural-learning-dev',
350
- domain: 'integration',
351
- description: 'Neural and SONA learning system integration',
352
- capabilities: [
353
- { name: 'neural-training', description: 'Implement neural features', supportedTaskTypes: ['neural-training', 'implementation'] }
354
- ],
355
- dependencies: ['agent-7', 'agent-10'],
356
- priority: 5
357
- },
358
- {
359
- id: 'agent-13',
360
- role: 'tdd-test-engineer',
361
- domain: 'quality',
362
- description: 'TDD London School methodology implementation',
363
- capabilities: [
364
- { name: 'testing', description: 'Write comprehensive tests', supportedTaskTypes: ['test-writing'] }
365
- ],
366
- dependencies: [],
367
- priority: 3
368
- },
369
- {
370
- id: 'agent-14',
371
- role: 'performance-engineer',
372
- domain: 'performance',
373
- description: 'Benchmarking and performance optimization (2.49x-7.47x target)',
374
- capabilities: [
375
- { name: 'benchmarking', description: 'Run performance benchmarks', supportedTaskTypes: ['benchmark'] }
376
- ],
377
- dependencies: ['agent-7', 'agent-8'],
378
- priority: 6
379
- },
380
- {
381
- id: 'agent-15',
382
- role: 'release-engineer',
383
- domain: 'deployment',
384
- description: 'Deployment pipeline and release management',
385
- capabilities: [
386
- { name: 'deployment', description: 'Manage releases', supportedTaskTypes: ['deployment', 'documentation'] }
387
- ],
388
- dependencies: ['agent-10', 'agent-13', 'agent-14'],
389
- priority: 7
390
- }
391
- ];
392
- for (const definition of agentDefinitions) {
393
- this.register(definition);
394
- }
395
- }
396
- createInitialMetrics() {
397
- return {
398
- tasksCompleted: 0,
399
- tasksFailed: 0,
400
- averageTaskDuration: 0,
401
- utilization: 0,
402
- startTime: Date.now()
403
- };
404
- }
405
- }
406
- // =============================================================================
407
- // Factory Function
408
- // =============================================================================
409
- export function createAgentRegistry(eventBus) {
410
- return new AgentRegistry(eventBus);
411
- }
412
- //# sourceMappingURL=agent-registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-registry.js","sourceRoot":"","sources":["../../src/coordination/agent-registry.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Coordination Components
3
- * Agent registry, task orchestration, and swarm hub
4
- */
5
- export { AgentRegistry, createAgentRegistry, type IAgentRegistry, } from './agent-registry.js';
6
- export { TaskOrchestrator, createTaskOrchestrator, type ITaskOrchestrator, type TaskSpec, } from './task-orchestrator.js';
7
- export { SwarmHub, createSwarmHub, type ISwarmHub, } from './swarm-hub.js';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/coordination/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,KAAK,cAAc,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,iBAAiB,EACtB,KAAK,QAAQ,GACd,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,cAAc,EACd,KAAK,SAAS,GACf,MAAM,gBAAgB,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Coordination Components
3
- * Agent registry, task orchestration, and swarm hub
4
- */
5
- export { AgentRegistry, createAgentRegistry, } from './agent-registry.js';
6
- export { TaskOrchestrator, createTaskOrchestrator, } from './task-orchestrator.js';
7
- export { SwarmHub, createSwarmHub, } from './swarm-hub.js';
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/coordination/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,aAAa,EACb,mBAAmB,GAEpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,GAGvB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,cAAc,GAEf,MAAM,gBAAgB,CAAC"}
@@ -1,150 +0,0 @@
1
- /**
2
- * V3 Swarm Hub - COMPATIBILITY LAYER (ADR-003)
3
- *
4
- * DEPRECATION NOTICE:
5
- * This is a THIN FACADE over UnifiedSwarmCoordinator for backward compatibility.
6
- * All operations are delegated to the canonical UnifiedSwarmCoordinator.
7
- *
8
- * For new code, use UnifiedSwarmCoordinator directly:
9
- * ```typescript
10
- * import { createUnifiedSwarmCoordinator } from '@sparkleideas/swarm';
11
- * const coordinator = createUnifiedSwarmCoordinator(config);
12
- * await coordinator.initialize();
13
- * ```
14
- *
15
- * ADR-003 Decision:
16
- * - ONE canonical coordination engine: UnifiedSwarmCoordinator
17
- * - SwarmHub maintained ONLY for compatibility with existing code
18
- * - All core logic delegated to UnifiedSwarmCoordinator
19
- *
20
- * Based on ADR-001 (agentic-flow integration), ADR-003 (Single Coordination Engine),
21
- * and the 15-Agent Swarm Architecture
22
- */
23
- import { AgentId, AgentDomain, AgentState, TaskId, TaskDefinition, TaskResult, PhaseId, PhaseDefinition, MilestoneDefinition, SwarmConfig, SwarmState, SwarmMetrics, SwarmMessage, MessageType, MessageHandler, EventHandler } from '../shared/types';
24
- import { IEventBus } from '../shared/events';
25
- import { IAgentRegistry } from './agent-registry';
26
- import { ITaskOrchestrator, TaskSpec } from './task-orchestrator';
27
- import { UnifiedSwarmCoordinator } from '../unified-coordinator';
28
- export interface ISwarmHub {
29
- initialize(config?: Partial<SwarmConfig>): Promise<void>;
30
- shutdown(): Promise<void>;
31
- isInitialized(): boolean;
32
- spawnAgent(agentId: AgentId): Promise<AgentState>;
33
- spawnAllAgents(): Promise<Map<AgentId, AgentState>>;
34
- spawnAgentsByDomain(domain: AgentDomain): Promise<AgentState[]>;
35
- terminateAgent(agentId: AgentId): Promise<boolean>;
36
- submitTask(spec: TaskSpec): TaskDefinition;
37
- submitBatchTasks(specs: TaskSpec[]): TaskDefinition[];
38
- assignNextTask(agentId: AgentId): TaskDefinition | undefined;
39
- completeTask(taskId: TaskId, result: TaskResult): void;
40
- getCurrentPhase(): PhaseId;
41
- advancePhase(): PhaseId;
42
- getPhaseDefinition(phaseId: PhaseId): PhaseDefinition;
43
- getMilestones(): MilestoneDefinition[];
44
- completeMilestone(milestoneId: string): void;
45
- sendMessage<T>(message: Omit<SwarmMessage<T>, 'id' | 'timestamp'>): void;
46
- broadcast<T>(from: AgentId, type: MessageType, payload: T): void;
47
- onMessage<T>(handler: MessageHandler<T>): () => void;
48
- getState(): SwarmState;
49
- getMetrics(): SwarmMetrics;
50
- getAgentRegistry(): IAgentRegistry;
51
- getTaskOrchestrator(): ITaskOrchestrator;
52
- onSwarmEvent(handler: EventHandler): () => void;
53
- }
54
- /**
55
- * @deprecated Use UnifiedSwarmCoordinator directly instead.
56
- * This class is maintained for backward compatibility only.
57
- *
58
- * Migration guide:
59
- * ```typescript
60
- * // OLD:
61
- * const hub = createSwarmHub();
62
- * await hub.initialize();
63
- *
64
- * // NEW:
65
- * const coordinator = createUnifiedSwarmCoordinator();
66
- * await coordinator.initialize();
67
- * ```
68
- */
69
- export declare class SwarmHub implements ISwarmHub {
70
- private coordinator;
71
- private eventBus;
72
- private agentRegistry;
73
- private taskOrchestrator;
74
- private currentPhase;
75
- private phases;
76
- private milestones;
77
- private messageHandlers;
78
- private messageCounter;
79
- private startTime;
80
- constructor(eventBus?: IEventBus);
81
- /**
82
- * @deprecated Delegates to UnifiedSwarmCoordinator.initialize()
83
- */
84
- initialize(config?: Partial<SwarmConfig>): Promise<void>;
85
- /**
86
- * @deprecated Delegates to UnifiedSwarmCoordinator.shutdown()
87
- */
88
- shutdown(): Promise<void>;
89
- /**
90
- * @deprecated Check UnifiedSwarmCoordinator state instead
91
- */
92
- isInitialized(): boolean;
93
- spawnAgent(agentId: AgentId): Promise<AgentState>;
94
- spawnAllAgents(): Promise<Map<AgentId, AgentState>>;
95
- spawnAgentsByDomain(domain: AgentDomain): Promise<AgentState[]>;
96
- terminateAgent(agentId: AgentId): Promise<boolean>;
97
- submitTask(spec: TaskSpec): TaskDefinition;
98
- submitBatchTasks(specs: TaskSpec[]): TaskDefinition[];
99
- assignNextTask(agentId: AgentId): TaskDefinition | undefined;
100
- completeTask(taskId: TaskId, result: TaskResult): void;
101
- getCurrentPhase(): PhaseId;
102
- advancePhase(): PhaseId;
103
- getPhaseDefinition(phaseId: PhaseId): PhaseDefinition;
104
- getMilestones(): MilestoneDefinition[];
105
- completeMilestone(milestoneId: string): void;
106
- sendMessage<T>(message: Omit<SwarmMessage<T>, 'id' | 'timestamp'>): void;
107
- broadcast<T>(from: AgentId, type: MessageType, payload: T): void;
108
- onMessage<T>(handler: MessageHandler<T>): () => void;
109
- getState(): SwarmState;
110
- getMetrics(): SwarmMetrics;
111
- getAgentRegistry(): IAgentRegistry;
112
- getTaskOrchestrator(): ITaskOrchestrator;
113
- onSwarmEvent(handler: EventHandler): () => void;
114
- /**
115
- * Get the underlying UnifiedSwarmCoordinator for direct access.
116
- * This is the canonical coordination engine as per ADR-003.
117
- *
118
- * Use this to access advanced features not exposed by the SwarmHub facade.
119
- */
120
- getCoordinator(): UnifiedSwarmCoordinator;
121
- private ensureInitialized;
122
- private convertToCoordinatorConfig;
123
- private createPhaseDefinitions;
124
- private initializeMilestones;
125
- }
126
- /**
127
- * @deprecated Use createUnifiedSwarmCoordinator() instead.
128
- * This factory is maintained for backward compatibility only.
129
- *
130
- * Migration:
131
- * ```typescript
132
- * // OLD:
133
- * const hub = createSwarmHub();
134
- *
135
- * // NEW:
136
- * import { createUnifiedSwarmCoordinator } from '@sparkleideas/swarm';
137
- * const coordinator = createUnifiedSwarmCoordinator();
138
- * ```
139
- */
140
- export declare function createSwarmHub(eventBus?: IEventBus): ISwarmHub;
141
- /**
142
- * @deprecated Use UnifiedSwarmCoordinator singleton pattern instead.
143
- * This function is maintained for backward compatibility only.
144
- */
145
- export declare function getSwarmHub(): ISwarmHub;
146
- /**
147
- * @deprecated Use coordinator.shutdown() directly instead.
148
- */
149
- export declare function resetSwarmHub(): void;
150
- //# sourceMappingURL=swarm-hub.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"swarm-hub.d.ts","sourceRoot":"","sources":["../../src/coordination/swarm-hub.ts"],"names":[],"mappings":"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"}