agentic-qe 2.3.5 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +47 -0
- package/README.md +1 -1
- package/dist/agents/BaseAgent.d.ts +56 -49
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +208 -604
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.d.ts +2 -2
- package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.js +8 -104
- package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
- package/dist/agents/TestExecutorAgent.d.ts +1 -1
- package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
- package/dist/agents/TestExecutorAgent.js +4 -46
- package/dist/agents/TestExecutorAgent.js.map +1 -1
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
- package/dist/agents/TestGeneratorAgent.js +15 -35
- package/dist/agents/TestGeneratorAgent.js.map +1 -1
- package/dist/agents/adapters/CoordinatorAdapter.d.ts +47 -0
- package/dist/agents/adapters/CoordinatorAdapter.d.ts.map +1 -0
- package/dist/agents/adapters/CoordinatorAdapter.js +266 -0
- package/dist/agents/adapters/CoordinatorAdapter.js.map +1 -0
- package/dist/agents/adapters/LearningEngineAdapter.d.ts +45 -0
- package/dist/agents/adapters/LearningEngineAdapter.d.ts.map +1 -0
- package/dist/agents/adapters/LearningEngineAdapter.js +279 -0
- package/dist/agents/adapters/LearningEngineAdapter.js.map +1 -0
- package/dist/agents/adapters/LifecycleManagerAdapter.d.ts +45 -0
- package/dist/agents/adapters/LifecycleManagerAdapter.d.ts.map +1 -0
- package/dist/agents/adapters/LifecycleManagerAdapter.js +128 -0
- package/dist/agents/adapters/LifecycleManagerAdapter.js.map +1 -0
- package/dist/agents/adapters/MemoryServiceAdapter.d.ts +96 -0
- package/dist/agents/adapters/MemoryServiceAdapter.d.ts.map +1 -0
- package/dist/agents/adapters/MemoryServiceAdapter.js +266 -0
- package/dist/agents/adapters/MemoryServiceAdapter.js.map +1 -0
- package/dist/agents/adapters/index.d.ts +14 -0
- package/dist/agents/adapters/index.d.ts.map +1 -0
- package/dist/agents/adapters/index.js +25 -0
- package/dist/agents/adapters/index.js.map +1 -0
- package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
- package/dist/agents/lifecycle/AgentLifecycleManager.js +12 -6
- package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
- package/dist/core/cache/BinaryCacheBuilder.d.ts +84 -0
- package/dist/core/cache/BinaryCacheBuilder.d.ts.map +1 -0
- package/dist/core/cache/BinaryCacheBuilder.js +225 -0
- package/dist/core/cache/BinaryCacheBuilder.js.map +1 -0
- package/dist/core/cache/BinaryCacheManager.d.ts +142 -0
- package/dist/core/cache/BinaryCacheManager.d.ts.map +1 -0
- package/dist/core/cache/BinaryCacheManager.js +354 -0
- package/dist/core/cache/BinaryCacheManager.js.map +1 -0
- package/dist/core/cache/BinaryCacheReader.d.ts +129 -0
- package/dist/core/cache/BinaryCacheReader.d.ts.map +1 -0
- package/dist/core/cache/BinaryCacheReader.js +243 -0
- package/dist/core/cache/BinaryCacheReader.js.map +1 -0
- package/dist/core/cache/BinaryMetadataCache.d.ts +533 -0
- package/dist/core/cache/BinaryMetadataCache.d.ts.map +1 -0
- package/dist/core/cache/BinaryMetadataCache.js +142 -0
- package/dist/core/cache/BinaryMetadataCache.js.map +1 -0
- package/dist/core/cache/CacheInvalidator.d.ts +103 -0
- package/dist/core/cache/CacheInvalidator.d.ts.map +1 -0
- package/dist/core/cache/CacheInvalidator.js +152 -0
- package/dist/core/cache/CacheInvalidator.js.map +1 -0
- package/dist/core/cache/CacheValidator.d.ts +69 -0
- package/dist/core/cache/CacheValidator.d.ts.map +1 -0
- package/dist/core/cache/CacheValidator.js +189 -0
- package/dist/core/cache/CacheValidator.js.map +1 -0
- package/dist/core/cache/MessagePackSerializer.d.ts +163 -0
- package/dist/core/cache/MessagePackSerializer.d.ts.map +1 -0
- package/dist/core/cache/MessagePackSerializer.js +274 -0
- package/dist/core/cache/MessagePackSerializer.js.map +1 -0
- package/dist/core/cache/index.d.ts +58 -0
- package/dist/core/cache/index.d.ts.map +1 -0
- package/dist/core/cache/index.js +102 -0
- package/dist/core/cache/index.js.map +1 -0
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +18 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/core/memory/PatternStoreFactory.d.ts +28 -0
- package/dist/core/memory/PatternStoreFactory.d.ts.map +1 -1
- package/dist/core/memory/PatternStoreFactory.js +68 -3
- package/dist/core/memory/PatternStoreFactory.js.map +1 -1
- package/dist/core/platform/FileOperations.d.ts +124 -0
- package/dist/core/platform/FileOperations.d.ts.map +1 -0
- package/dist/core/platform/FileOperations.js +371 -0
- package/dist/core/platform/FileOperations.js.map +1 -0
- package/dist/core/platform/PlatformDetector.d.ts +53 -0
- package/dist/core/platform/PlatformDetector.d.ts.map +1 -0
- package/dist/core/platform/PlatformDetector.js +251 -0
- package/dist/core/platform/PlatformDetector.js.map +1 -0
- package/dist/core/platform/index.d.ts +12 -0
- package/dist/core/platform/index.d.ts.map +1 -0
- package/dist/core/platform/index.js +28 -0
- package/dist/core/platform/index.js.map +1 -0
- package/dist/core/strategies/AcceleratedLearningStrategy.d.ts +74 -0
- package/dist/core/strategies/AcceleratedLearningStrategy.d.ts.map +1 -0
- package/dist/core/strategies/AcceleratedLearningStrategy.js +200 -0
- package/dist/core/strategies/AcceleratedLearningStrategy.js.map +1 -0
- package/dist/core/strategies/AgentCoordinationStrategy.d.ts +157 -0
- package/dist/core/strategies/AgentCoordinationStrategy.d.ts.map +1 -0
- package/dist/core/strategies/AgentCoordinationStrategy.js +12 -0
- package/dist/core/strategies/AgentCoordinationStrategy.js.map +1 -0
- package/dist/core/strategies/AgentLearningStrategy.d.ts +200 -0
- package/dist/core/strategies/AgentLearningStrategy.d.ts.map +1 -0
- package/dist/core/strategies/AgentLearningStrategy.js +13 -0
- package/dist/core/strategies/AgentLearningStrategy.js.map +1 -0
- package/dist/core/strategies/AgentLifecycleStrategy.d.ts +116 -0
- package/dist/core/strategies/AgentLifecycleStrategy.d.ts.map +1 -0
- package/dist/core/strategies/AgentLifecycleStrategy.js +12 -0
- package/dist/core/strategies/AgentLifecycleStrategy.js.map +1 -0
- package/dist/core/strategies/AgentMemoryStrategy.d.ts +154 -0
- package/dist/core/strategies/AgentMemoryStrategy.d.ts.map +1 -0
- package/dist/core/strategies/AgentMemoryStrategy.js +13 -0
- package/dist/core/strategies/AgentMemoryStrategy.js.map +1 -0
- package/dist/core/strategies/DefaultCoordinationStrategy.d.ts +105 -0
- package/dist/core/strategies/DefaultCoordinationStrategy.d.ts.map +1 -0
- package/dist/core/strategies/DefaultCoordinationStrategy.js +332 -0
- package/dist/core/strategies/DefaultCoordinationStrategy.js.map +1 -0
- package/dist/core/strategies/DefaultLearningStrategy.d.ts +120 -0
- package/dist/core/strategies/DefaultLearningStrategy.d.ts.map +1 -0
- package/dist/core/strategies/DefaultLearningStrategy.js +365 -0
- package/dist/core/strategies/DefaultLearningStrategy.js.map +1 -0
- package/dist/core/strategies/DefaultLifecycleStrategy.d.ts +129 -0
- package/dist/core/strategies/DefaultLifecycleStrategy.d.ts.map +1 -0
- package/dist/core/strategies/DefaultLifecycleStrategy.js +297 -0
- package/dist/core/strategies/DefaultLifecycleStrategy.js.map +1 -0
- package/dist/core/strategies/DefaultMemoryStrategy.d.ts +91 -0
- package/dist/core/strategies/DefaultMemoryStrategy.d.ts.map +1 -0
- package/dist/core/strategies/DefaultMemoryStrategy.js +257 -0
- package/dist/core/strategies/DefaultMemoryStrategy.js.map +1 -0
- package/dist/core/strategies/DistributedMemoryStrategy.d.ts +85 -0
- package/dist/core/strategies/DistributedMemoryStrategy.d.ts.map +1 -0
- package/dist/core/strategies/DistributedMemoryStrategy.js +126 -0
- package/dist/core/strategies/DistributedMemoryStrategy.js.map +1 -0
- package/dist/core/strategies/index.d.ts +95 -0
- package/dist/core/strategies/index.d.ts.map +1 -0
- package/dist/core/strategies/index.js +65 -0
- package/dist/core/strategies/index.js.map +1 -0
- package/dist/learning/PerformanceOptimizer.js +2 -2
- package/dist/learning/PerformanceOptimizer.js.map +1 -1
- package/dist/mcp/handlers/base-handler.d.ts +28 -1
- package/dist/mcp/handlers/base-handler.d.ts.map +1 -1
- package/dist/mcp/handlers/base-handler.js +41 -0
- package/dist/mcp/handlers/base-handler.js.map +1 -1
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/output/AIActionSuggester.d.ts +98 -0
- package/dist/output/AIActionSuggester.d.ts.map +1 -0
- package/dist/output/AIActionSuggester.js +499 -0
- package/dist/output/AIActionSuggester.js.map +1 -0
- package/dist/output/CLIOutputHelper.d.ts +169 -0
- package/dist/output/CLIOutputHelper.d.ts.map +1 -0
- package/dist/output/CLIOutputHelper.js +320 -0
- package/dist/output/CLIOutputHelper.js.map +1 -0
- package/dist/output/OutputFormatter.d.ts +764 -0
- package/dist/output/OutputFormatter.d.ts.map +1 -0
- package/dist/output/OutputFormatter.js +125 -0
- package/dist/output/OutputFormatter.js.map +1 -0
- package/dist/output/OutputFormatterImpl.d.ts +131 -0
- package/dist/output/OutputFormatterImpl.d.ts.map +1 -0
- package/dist/output/OutputFormatterImpl.js +556 -0
- package/dist/output/OutputFormatterImpl.js.map +1 -0
- package/dist/output/examples.d.ts +38 -0
- package/dist/output/examples.d.ts.map +1 -0
- package/dist/output/examples.js +503 -0
- package/dist/output/examples.js.map +1 -0
- package/dist/output/index.d.ts +16 -0
- package/dist/output/index.d.ts.map +1 -0
- package/dist/output/index.js +58 -0
- package/dist/output/index.js.map +1 -0
- package/package.json +4 -1
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CoordinatorAdapter - Adapts EventEmitter to AgentCoordinationStrategy
|
|
4
|
+
*
|
|
5
|
+
* Provides backward compatibility during the B1.2 migration.
|
|
6
|
+
* Wraps the existing EventEmitter-based coordination to implement the strategy interface.
|
|
7
|
+
*
|
|
8
|
+
* @module agents/adapters/CoordinatorAdapter
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.CoordinatorAdapter = void 0;
|
|
13
|
+
exports.createCoordinationAdapter = createCoordinationAdapter;
|
|
14
|
+
const uuid_1 = require("uuid");
|
|
15
|
+
/**
|
|
16
|
+
* Adapts EventEmitter to AgentCoordinationStrategy interface
|
|
17
|
+
*/
|
|
18
|
+
class CoordinatorAdapter {
|
|
19
|
+
constructor(eventBus, agentId) {
|
|
20
|
+
this.messageHandlers = new Set();
|
|
21
|
+
this.swarmMembership = null;
|
|
22
|
+
this.pendingRequests = new Map();
|
|
23
|
+
this.metrics = {
|
|
24
|
+
eventsEmitted: 0,
|
|
25
|
+
eventsReceived: 0,
|
|
26
|
+
messagesSent: 0,
|
|
27
|
+
messagesReceived: 0,
|
|
28
|
+
broadcastsSent: 0,
|
|
29
|
+
averageLatency: 0,
|
|
30
|
+
activeSubscriptions: 0,
|
|
31
|
+
};
|
|
32
|
+
// === Private Helpers ===
|
|
33
|
+
this.handleIncomingMessage = (message) => {
|
|
34
|
+
this.metrics.messagesReceived++;
|
|
35
|
+
// Check if this is a response to a pending request
|
|
36
|
+
if (message.correlationId && this.pendingRequests.has(message.correlationId)) {
|
|
37
|
+
// Handled by request() method
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
// Dispatch to registered handlers
|
|
41
|
+
for (const handler of this.messageHandlers) {
|
|
42
|
+
try {
|
|
43
|
+
handler(message);
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
// Log but don't propagate handler errors
|
|
47
|
+
console.error('Message handler error:', error);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
if (eventBus && agentId) {
|
|
52
|
+
this.initialize(eventBus, agentId);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
// === Event Operations ===
|
|
56
|
+
emit(event) {
|
|
57
|
+
if (!this.eventBus) {
|
|
58
|
+
throw new Error('Coordination not initialized');
|
|
59
|
+
}
|
|
60
|
+
this.eventBus.emit(event.type, event);
|
|
61
|
+
this.metrics.eventsEmitted++;
|
|
62
|
+
}
|
|
63
|
+
on(eventType, handler) {
|
|
64
|
+
if (!this.eventBus) {
|
|
65
|
+
throw new Error('Coordination not initialized');
|
|
66
|
+
}
|
|
67
|
+
const wrappedHandler = (data) => {
|
|
68
|
+
this.metrics.eventsReceived++;
|
|
69
|
+
handler(data);
|
|
70
|
+
};
|
|
71
|
+
// Store original -> wrapped mapping for removal
|
|
72
|
+
handler.__wrapped = wrappedHandler;
|
|
73
|
+
this.eventBus.on(eventType, wrappedHandler);
|
|
74
|
+
this.metrics.activeSubscriptions++;
|
|
75
|
+
}
|
|
76
|
+
off(eventType, handler) {
|
|
77
|
+
if (!this.eventBus) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
const wrappedHandler = handler.__wrapped;
|
|
81
|
+
if (wrappedHandler) {
|
|
82
|
+
this.eventBus.off(eventType, wrappedHandler);
|
|
83
|
+
this.metrics.activeSubscriptions = Math.max(0, this.metrics.activeSubscriptions - 1);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
once(eventType, handler) {
|
|
87
|
+
if (!this.eventBus) {
|
|
88
|
+
throw new Error('Coordination not initialized');
|
|
89
|
+
}
|
|
90
|
+
this.eventBus.once(eventType, (data) => {
|
|
91
|
+
this.metrics.eventsReceived++;
|
|
92
|
+
handler(data);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
// === Message Operations ===
|
|
96
|
+
async broadcast(message) {
|
|
97
|
+
if (!this.eventBus || !this.agentId) {
|
|
98
|
+
throw new Error('Coordination not initialized');
|
|
99
|
+
}
|
|
100
|
+
const fullMessage = {
|
|
101
|
+
...message,
|
|
102
|
+
id: message.id || (0, uuid_1.v4)(),
|
|
103
|
+
sender: this.agentId,
|
|
104
|
+
timestamp: message.timestamp || new Date(),
|
|
105
|
+
};
|
|
106
|
+
this.eventBus.emit('agent.broadcast', fullMessage);
|
|
107
|
+
this.metrics.broadcastsSent++;
|
|
108
|
+
this.metrics.messagesSent++;
|
|
109
|
+
}
|
|
110
|
+
async send(targetAgent, message) {
|
|
111
|
+
if (!this.eventBus || !this.agentId) {
|
|
112
|
+
throw new Error('Coordination not initialized');
|
|
113
|
+
}
|
|
114
|
+
const fullMessage = {
|
|
115
|
+
...message,
|
|
116
|
+
id: message.id || (0, uuid_1.v4)(),
|
|
117
|
+
sender: this.agentId,
|
|
118
|
+
target: targetAgent,
|
|
119
|
+
timestamp: message.timestamp || new Date(),
|
|
120
|
+
};
|
|
121
|
+
this.eventBus.emit(`agent.message.${targetAgent.id}`, fullMessage);
|
|
122
|
+
this.metrics.messagesSent++;
|
|
123
|
+
}
|
|
124
|
+
onMessage(handler) {
|
|
125
|
+
if (!this.eventBus || !this.agentId) {
|
|
126
|
+
throw new Error('Coordination not initialized');
|
|
127
|
+
}
|
|
128
|
+
this.messageHandlers.add(handler);
|
|
129
|
+
// Subscribe to direct messages for this agent
|
|
130
|
+
if (this.messageHandlers.size === 1) {
|
|
131
|
+
this.eventBus.on(`agent.message.${this.agentId.id}`, this.handleIncomingMessage);
|
|
132
|
+
this.eventBus.on('agent.broadcast', this.handleIncomingMessage);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
offMessage(handler) {
|
|
136
|
+
this.messageHandlers.delete(handler);
|
|
137
|
+
// Unsubscribe if no handlers remain
|
|
138
|
+
if (this.messageHandlers.size === 0 && this.eventBus && this.agentId) {
|
|
139
|
+
this.eventBus.off(`agent.message.${this.agentId.id}`, this.handleIncomingMessage);
|
|
140
|
+
this.eventBus.off('agent.broadcast', this.handleIncomingMessage);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
async request(targetAgent, message, timeout = 30000) {
|
|
144
|
+
if (!this.eventBus || !this.agentId) {
|
|
145
|
+
throw new Error('Coordination not initialized');
|
|
146
|
+
}
|
|
147
|
+
const correlationId = (0, uuid_1.v4)();
|
|
148
|
+
const requestMessage = {
|
|
149
|
+
...message,
|
|
150
|
+
id: (0, uuid_1.v4)(),
|
|
151
|
+
sender: this.agentId,
|
|
152
|
+
target: targetAgent,
|
|
153
|
+
correlationId,
|
|
154
|
+
timestamp: new Date(),
|
|
155
|
+
};
|
|
156
|
+
return new Promise((resolve, reject) => {
|
|
157
|
+
const timeoutHandle = setTimeout(() => {
|
|
158
|
+
this.pendingRequests.delete(correlationId);
|
|
159
|
+
reject(new Error(`Request timeout after ${timeout}ms`));
|
|
160
|
+
}, timeout);
|
|
161
|
+
this.pendingRequests.set(correlationId, {
|
|
162
|
+
resolve: resolve,
|
|
163
|
+
reject,
|
|
164
|
+
timeout: timeoutHandle,
|
|
165
|
+
});
|
|
166
|
+
// Subscribe to response
|
|
167
|
+
const responseHandler = (response) => {
|
|
168
|
+
if (response.correlationId === correlationId) {
|
|
169
|
+
const pending = this.pendingRequests.get(correlationId);
|
|
170
|
+
if (pending) {
|
|
171
|
+
clearTimeout(pending.timeout);
|
|
172
|
+
this.pendingRequests.delete(correlationId);
|
|
173
|
+
this.eventBus?.off(`agent.response.${this.agentId?.id}`, responseHandler);
|
|
174
|
+
pending.resolve(response.payload);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
this.eventBus.on(`agent.response.${this.agentId.id}`, responseHandler);
|
|
179
|
+
this.eventBus.emit(`agent.message.${targetAgent.id}`, requestMessage);
|
|
180
|
+
this.metrics.messagesSent++;
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
// === Swarm Coordination ===
|
|
184
|
+
async joinSwarm(swarmId, role = 'worker') {
|
|
185
|
+
if (!this.eventBus || !this.agentId) {
|
|
186
|
+
throw new Error('Coordination not initialized');
|
|
187
|
+
}
|
|
188
|
+
this.swarmMembership = {
|
|
189
|
+
swarmId,
|
|
190
|
+
role,
|
|
191
|
+
joinedAt: new Date(),
|
|
192
|
+
topology: 'mesh', // Default topology
|
|
193
|
+
peers: [],
|
|
194
|
+
};
|
|
195
|
+
// Emit join event
|
|
196
|
+
this.eventBus.emit('swarm.agent.joined', {
|
|
197
|
+
swarmId,
|
|
198
|
+
agentId: this.agentId,
|
|
199
|
+
role,
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
async leaveSwarm() {
|
|
203
|
+
if (!this.eventBus || !this.agentId || !this.swarmMembership) {
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
206
|
+
const swarmId = this.swarmMembership.swarmId;
|
|
207
|
+
this.swarmMembership = null;
|
|
208
|
+
this.eventBus.emit('swarm.agent.left', {
|
|
209
|
+
swarmId,
|
|
210
|
+
agentId: this.agentId,
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
getSwarmMembership() {
|
|
214
|
+
return this.swarmMembership;
|
|
215
|
+
}
|
|
216
|
+
async discoverPeers() {
|
|
217
|
+
if (!this.swarmMembership) {
|
|
218
|
+
return [];
|
|
219
|
+
}
|
|
220
|
+
return this.swarmMembership.peers;
|
|
221
|
+
}
|
|
222
|
+
// === Lifecycle ===
|
|
223
|
+
initialize(eventBus, agentId) {
|
|
224
|
+
this.eventBus = eventBus;
|
|
225
|
+
this.agentId = agentId;
|
|
226
|
+
// Subscribe to peer discovery updates
|
|
227
|
+
this.eventBus.on('swarm.peers.updated', (data) => {
|
|
228
|
+
if (this.swarmMembership && this.swarmMembership.swarmId === data.swarmId) {
|
|
229
|
+
this.swarmMembership.peers = data.peers;
|
|
230
|
+
}
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
async shutdown() {
|
|
234
|
+
// Leave swarm if joined
|
|
235
|
+
await this.leaveSwarm();
|
|
236
|
+
// Clear pending requests
|
|
237
|
+
for (const [, pending] of this.pendingRequests) {
|
|
238
|
+
clearTimeout(pending.timeout);
|
|
239
|
+
pending.reject(new Error('Coordination shutdown'));
|
|
240
|
+
}
|
|
241
|
+
this.pendingRequests.clear();
|
|
242
|
+
// Clear message handlers
|
|
243
|
+
if (this.eventBus && this.agentId) {
|
|
244
|
+
this.eventBus.off(`agent.message.${this.agentId.id}`, this.handleIncomingMessage);
|
|
245
|
+
this.eventBus.off('agent.broadcast', this.handleIncomingMessage);
|
|
246
|
+
}
|
|
247
|
+
this.messageHandlers.clear();
|
|
248
|
+
this.eventBus = undefined;
|
|
249
|
+
this.agentId = undefined;
|
|
250
|
+
}
|
|
251
|
+
// === Metrics ===
|
|
252
|
+
getMetrics() {
|
|
253
|
+
return { ...this.metrics };
|
|
254
|
+
}
|
|
255
|
+
isHealthy() {
|
|
256
|
+
return this.eventBus !== undefined && this.agentId !== undefined;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
exports.CoordinatorAdapter = CoordinatorAdapter;
|
|
260
|
+
/**
|
|
261
|
+
* Create a coordination strategy adapter from event bus and agent ID
|
|
262
|
+
*/
|
|
263
|
+
function createCoordinationAdapter(eventBus, agentId) {
|
|
264
|
+
return new CoordinatorAdapter(eventBus, agentId);
|
|
265
|
+
}
|
|
266
|
+
//# sourceMappingURL=CoordinatorAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CoordinatorAdapter.js","sourceRoot":"","sources":["../../../src/agents/adapters/CoordinatorAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LearningEngineAdapter - Adapts LearningEngine to AgentLearningStrategy
|
|
3
|
+
*
|
|
4
|
+
* Provides backward compatibility during the B1.2 migration.
|
|
5
|
+
* Wraps the existing LearningEngine to implement the strategy interface.
|
|
6
|
+
*
|
|
7
|
+
* @module agents/adapters/LearningEngineAdapter
|
|
8
|
+
* @version 1.0.0
|
|
9
|
+
*/
|
|
10
|
+
import type { AgentLearningStrategy, LearnedPattern, PatternQuery, StrategyRecommendation, ExecutionEvent, TrainingResult, LearningStatus, LearningMetrics } from '../../core/strategies';
|
|
11
|
+
import type { LearningEngine } from '../../learning/LearningEngine';
|
|
12
|
+
/**
|
|
13
|
+
* Adapts LearningEngine to AgentLearningStrategy interface
|
|
14
|
+
*/
|
|
15
|
+
export declare class LearningEngineAdapter implements AgentLearningStrategy {
|
|
16
|
+
private readonly engine;
|
|
17
|
+
private initialized;
|
|
18
|
+
private executionHistory;
|
|
19
|
+
private recommendationsGiven;
|
|
20
|
+
private recommendationSuccesses;
|
|
21
|
+
constructor(engine: LearningEngine);
|
|
22
|
+
storePattern(pattern: LearnedPattern): Promise<void>;
|
|
23
|
+
getPatterns(query: PatternQuery): Promise<LearnedPattern[]>;
|
|
24
|
+
findSimilarPatterns(embedding: number[], limit?: number): Promise<LearnedPattern[]>;
|
|
25
|
+
updatePatternConfidence(patternId: string, success: boolean): Promise<void>;
|
|
26
|
+
recommendStrategy(taskState: unknown): Promise<StrategyRecommendation | null>;
|
|
27
|
+
recordRecommendationOutcome(recommendation: StrategyRecommendation, success: boolean): Promise<void>;
|
|
28
|
+
recordExecution(event: ExecutionEvent): Promise<void>;
|
|
29
|
+
getExecutionHistory(limit?: number): Promise<ExecutionEvent[]>;
|
|
30
|
+
train(iterations?: number): Promise<TrainingResult>;
|
|
31
|
+
exportPatterns(): Promise<LearnedPattern[]>;
|
|
32
|
+
importPatterns(patterns: LearnedPattern[]): Promise<number>;
|
|
33
|
+
initialize(): Promise<void>;
|
|
34
|
+
getStatus(): LearningStatus;
|
|
35
|
+
getMetrics(): Promise<LearningMetrics>;
|
|
36
|
+
reset(): Promise<void>;
|
|
37
|
+
private convertPattern;
|
|
38
|
+
private convertToTaskState;
|
|
39
|
+
private calculateImprovement;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Create a learning strategy adapter from an existing engine
|
|
43
|
+
*/
|
|
44
|
+
export declare function createLearningAdapter(engine: LearningEngine): AgentLearningStrategy;
|
|
45
|
+
//# sourceMappingURL=LearningEngineAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearningEngineAdapter.d.ts","sourceRoot":"","sources":["../../../src/agents/adapters/LearningEngineAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EACd,YAAY,EACZ,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,cAAc,EACd,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAMpE;;GAEG;AACH,qBAAa,qBAAsB,YAAW,qBAAqB;IACjE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,uBAAuB,CAAK;gBAExB,MAAM,EAAE,cAAc;IAM5B,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBpD,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAkB3D,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAQ/E,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB3E,iBAAiB,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAuB7E,2BAA2B,CAC/B,cAAc,EAAE,sBAAsB,EACtC,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC;IAQV,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBrD,mBAAmB,CAAC,KAAK,SAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAM3D,KAAK,CAAC,UAAU,SAAK,GAAG,OAAO,CAAC,cAAc,CAAC;IAmC/C,cAAc,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAK3C,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB3D,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,SAAS,IAAI,cAAc;IAerB,UAAU,IAAI,OAAO,CAAC,eAAe,CAAC;IAqBtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAU5B,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,oBAAoB;CAe7B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,qBAAqB,CAEnF"}
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* LearningEngineAdapter - Adapts LearningEngine to AgentLearningStrategy
|
|
4
|
+
*
|
|
5
|
+
* Provides backward compatibility during the B1.2 migration.
|
|
6
|
+
* Wraps the existing LearningEngine to implement the strategy interface.
|
|
7
|
+
*
|
|
8
|
+
* @module agents/adapters/LearningEngineAdapter
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.LearningEngineAdapter = void 0;
|
|
13
|
+
exports.createLearningAdapter = createLearningAdapter;
|
|
14
|
+
/**
|
|
15
|
+
* Adapts LearningEngine to AgentLearningStrategy interface
|
|
16
|
+
*/
|
|
17
|
+
class LearningEngineAdapter {
|
|
18
|
+
constructor(engine) {
|
|
19
|
+
this.initialized = false;
|
|
20
|
+
this.executionHistory = [];
|
|
21
|
+
this.recommendationsGiven = 0;
|
|
22
|
+
this.recommendationSuccesses = 0;
|
|
23
|
+
this.engine = engine;
|
|
24
|
+
}
|
|
25
|
+
// === Pattern Management ===
|
|
26
|
+
async storePattern(pattern) {
|
|
27
|
+
// LearningEngine stores patterns internally via updatePatterns()
|
|
28
|
+
// which is called during learnFromExecution()
|
|
29
|
+
// For direct pattern storage, we use the memoryStore if available
|
|
30
|
+
const memoryStore = this.engine.memoryStore;
|
|
31
|
+
if (memoryStore && typeof memoryStore.storePattern === 'function') {
|
|
32
|
+
await memoryStore.storePattern({
|
|
33
|
+
id: pattern.id,
|
|
34
|
+
pattern: `${pattern.type}:${pattern.domain}`,
|
|
35
|
+
confidence: pattern.confidence,
|
|
36
|
+
usageCount: pattern.usageCount,
|
|
37
|
+
metadata: {
|
|
38
|
+
content: pattern.content,
|
|
39
|
+
success_rate: pattern.successRate,
|
|
40
|
+
embedding: pattern.embedding,
|
|
41
|
+
created_at: pattern.createdAt,
|
|
42
|
+
updated_at: pattern.updatedAt,
|
|
43
|
+
...pattern.metadata,
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
async getPatterns(query) {
|
|
49
|
+
const enginePatterns = await this.engine.getPatterns();
|
|
50
|
+
// Filter by query criteria
|
|
51
|
+
let filtered = enginePatterns;
|
|
52
|
+
if (query.minConfidence !== undefined) {
|
|
53
|
+
filtered = filtered.filter(p => p.confidence >= query.minConfidence);
|
|
54
|
+
}
|
|
55
|
+
if (query.limit !== undefined) {
|
|
56
|
+
filtered = filtered.slice(0, query.limit);
|
|
57
|
+
}
|
|
58
|
+
// Convert to strategy format
|
|
59
|
+
return filtered.map(p => this.convertPattern(p));
|
|
60
|
+
}
|
|
61
|
+
async findSimilarPatterns(embedding, limit = 10) {
|
|
62
|
+
// LearningEngine doesn't natively support vector similarity
|
|
63
|
+
// Return patterns sorted by confidence as fallback
|
|
64
|
+
const patterns = await this.engine.getPatterns();
|
|
65
|
+
const sorted = patterns.sort((a, b) => b.confidence - a.confidence);
|
|
66
|
+
return sorted.slice(0, limit).map(p => this.convertPattern(p));
|
|
67
|
+
}
|
|
68
|
+
async updatePatternConfidence(patternId, success) {
|
|
69
|
+
// Pattern confidence is updated automatically during learnFromExecution
|
|
70
|
+
// For direct updates, we need to update via memoryStore
|
|
71
|
+
const memoryStore = this.engine.memoryStore;
|
|
72
|
+
if (memoryStore && typeof memoryStore.queryPatternsByAgent === 'function') {
|
|
73
|
+
const agentId = this.engine.agentId;
|
|
74
|
+
const patterns = await memoryStore.queryPatternsByAgent(agentId, 0);
|
|
75
|
+
const pattern = patterns.find((p) => p.id === patternId);
|
|
76
|
+
if (pattern) {
|
|
77
|
+
const newConfidence = success
|
|
78
|
+
? Math.min(0.99, pattern.confidence + 0.01)
|
|
79
|
+
: Math.max(0.01, pattern.confidence - 0.02);
|
|
80
|
+
await memoryStore.storePattern({
|
|
81
|
+
...pattern,
|
|
82
|
+
confidence: newConfidence,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// === Strategy Recommendation ===
|
|
88
|
+
async recommendStrategy(taskState) {
|
|
89
|
+
// Convert taskState to TaskState format
|
|
90
|
+
const state = this.convertToTaskState(taskState);
|
|
91
|
+
const engineRec = await this.engine.recommendStrategy(state);
|
|
92
|
+
if (!engineRec || engineRec.confidence < 0.1) {
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
this.recommendationsGiven++;
|
|
96
|
+
return {
|
|
97
|
+
strategy: engineRec.strategy,
|
|
98
|
+
confidence: engineRec.confidence,
|
|
99
|
+
reasoning: engineRec.reasoning,
|
|
100
|
+
alternatives: engineRec.alternatives,
|
|
101
|
+
metadata: {
|
|
102
|
+
expectedImprovement: engineRec.expectedImprovement,
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
async recordRecommendationOutcome(recommendation, success) {
|
|
107
|
+
if (success) {
|
|
108
|
+
this.recommendationSuccesses++;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// === Execution Recording ===
|
|
112
|
+
async recordExecution(event) {
|
|
113
|
+
// Store in history
|
|
114
|
+
this.executionHistory.push(event);
|
|
115
|
+
// Keep history bounded
|
|
116
|
+
if (this.executionHistory.length > 1000) {
|
|
117
|
+
this.executionHistory = this.executionHistory.slice(-1000);
|
|
118
|
+
}
|
|
119
|
+
// Convert to TaskResult format for LearningEngine
|
|
120
|
+
const taskResult = {
|
|
121
|
+
success: event.success,
|
|
122
|
+
executionTime: event.duration,
|
|
123
|
+
errors: event.error ? [event.error.message] : undefined,
|
|
124
|
+
strategy: 'default',
|
|
125
|
+
...(event.result || {}),
|
|
126
|
+
};
|
|
127
|
+
// Learn from the execution
|
|
128
|
+
await this.engine.learnFromExecution(event.task, taskResult);
|
|
129
|
+
}
|
|
130
|
+
async getExecutionHistory(limit = 100) {
|
|
131
|
+
return this.executionHistory.slice(-limit);
|
|
132
|
+
}
|
|
133
|
+
// === Training ===
|
|
134
|
+
async train(iterations = 10) {
|
|
135
|
+
const startTime = Date.now();
|
|
136
|
+
// LearningEngine trains incrementally during learnFromExecution
|
|
137
|
+
// For explicit training, we trigger batch updates
|
|
138
|
+
const engineAny = this.engine;
|
|
139
|
+
// Perform batch updates if experiences exist
|
|
140
|
+
if (engineAny.experiences && engineAny.experiences.length > 0) {
|
|
141
|
+
for (let i = 0; i < iterations; i++) {
|
|
142
|
+
await engineAny.performBatchUpdate?.();
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
const patterns = await this.engine.getPatterns();
|
|
146
|
+
const duration = Date.now() - startTime;
|
|
147
|
+
// Calculate improvement from recent experiences
|
|
148
|
+
const improvement = this.calculateImprovement();
|
|
149
|
+
return {
|
|
150
|
+
iterations,
|
|
151
|
+
improvement,
|
|
152
|
+
patternsLearned: patterns.length,
|
|
153
|
+
duration,
|
|
154
|
+
metrics: {
|
|
155
|
+
accuracy: this.recommendationsGiven > 0
|
|
156
|
+
? this.recommendationSuccesses / this.recommendationsGiven
|
|
157
|
+
: 0,
|
|
158
|
+
loss: 1 - improvement,
|
|
159
|
+
recall: patterns.length > 0 ? Math.min(1, patterns.length / 100) : 0,
|
|
160
|
+
},
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
async exportPatterns() {
|
|
164
|
+
const patterns = await this.engine.getPatterns();
|
|
165
|
+
return patterns.map(p => this.convertPattern(p));
|
|
166
|
+
}
|
|
167
|
+
async importPatterns(patterns) {
|
|
168
|
+
let imported = 0;
|
|
169
|
+
for (const pattern of patterns) {
|
|
170
|
+
try {
|
|
171
|
+
await this.storePattern(pattern);
|
|
172
|
+
imported++;
|
|
173
|
+
}
|
|
174
|
+
catch {
|
|
175
|
+
// Skip failed imports
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return imported;
|
|
179
|
+
}
|
|
180
|
+
// === Lifecycle ===
|
|
181
|
+
async initialize() {
|
|
182
|
+
await this.engine.initialize();
|
|
183
|
+
this.initialized = true;
|
|
184
|
+
}
|
|
185
|
+
getStatus() {
|
|
186
|
+
const stats = this.engine.getAlgorithmStats();
|
|
187
|
+
return {
|
|
188
|
+
enabled: this.engine.isEnabled(),
|
|
189
|
+
initialized: this.initialized,
|
|
190
|
+
patternsCount: stats.stats?.tableSize || 0,
|
|
191
|
+
executionsRecorded: this.engine.getTotalExperiences(),
|
|
192
|
+
accuracy: this.recommendationsGiven > 0
|
|
193
|
+
? this.recommendationSuccesses / this.recommendationsGiven
|
|
194
|
+
: 0,
|
|
195
|
+
modelVersion: stats.algorithm,
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
async getMetrics() {
|
|
199
|
+
const patterns = await this.engine.getPatterns();
|
|
200
|
+
const successfulExecutions = this.executionHistory.filter(e => e.success).length;
|
|
201
|
+
return {
|
|
202
|
+
totalExecutions: this.executionHistory.length,
|
|
203
|
+
successfulExecutions,
|
|
204
|
+
failedExecutions: this.executionHistory.length - successfulExecutions,
|
|
205
|
+
patternsStored: patterns.length,
|
|
206
|
+
recommendationsGiven: this.recommendationsGiven,
|
|
207
|
+
recommendationAccuracy: this.recommendationsGiven > 0
|
|
208
|
+
? this.recommendationSuccesses / this.recommendationsGiven
|
|
209
|
+
: 0,
|
|
210
|
+
averageConfidence: patterns.length > 0
|
|
211
|
+
? patterns.reduce((sum, p) => sum + p.confidence, 0) / patterns.length
|
|
212
|
+
: 0,
|
|
213
|
+
trainingIterations: this.engine.getTotalExperiences(),
|
|
214
|
+
lastActivity: new Date(),
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
async reset() {
|
|
218
|
+
this.executionHistory = [];
|
|
219
|
+
this.recommendationsGiven = 0;
|
|
220
|
+
this.recommendationSuccesses = 0;
|
|
221
|
+
// Note: LearningEngine doesn't have a public reset method
|
|
222
|
+
// Full reset would require reinitializing the engine
|
|
223
|
+
}
|
|
224
|
+
// === Private Helpers ===
|
|
225
|
+
convertPattern(p) {
|
|
226
|
+
const parts = p.pattern.split(':');
|
|
227
|
+
return {
|
|
228
|
+
id: p.id,
|
|
229
|
+
type: parts[0] || 'unknown',
|
|
230
|
+
domain: parts[1] || 'default',
|
|
231
|
+
content: p.pattern,
|
|
232
|
+
confidence: p.confidence,
|
|
233
|
+
usageCount: p.usageCount,
|
|
234
|
+
successRate: p.successRate,
|
|
235
|
+
createdAt: p.createdAt,
|
|
236
|
+
updatedAt: p.lastUsedAt,
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
convertToTaskState(taskState) {
|
|
240
|
+
if (typeof taskState !== 'object' || taskState === null) {
|
|
241
|
+
return {
|
|
242
|
+
taskComplexity: 0.5,
|
|
243
|
+
requiredCapabilities: [],
|
|
244
|
+
contextFeatures: {},
|
|
245
|
+
previousAttempts: 0,
|
|
246
|
+
availableResources: 1,
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
const state = taskState;
|
|
250
|
+
return {
|
|
251
|
+
taskComplexity: state.complexity || 0.5,
|
|
252
|
+
requiredCapabilities: state.capabilities || [],
|
|
253
|
+
contextFeatures: state.context || {},
|
|
254
|
+
previousAttempts: state.attempts || 0,
|
|
255
|
+
availableResources: state.resources || 1,
|
|
256
|
+
timeConstraint: state.timeout,
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
calculateImprovement() {
|
|
260
|
+
if (this.executionHistory.length < 10) {
|
|
261
|
+
return 0;
|
|
262
|
+
}
|
|
263
|
+
const recent = this.executionHistory.slice(-20);
|
|
264
|
+
const baseline = this.executionHistory.slice(0, 20);
|
|
265
|
+
const recentSuccess = recent.filter(e => e.success).length / recent.length;
|
|
266
|
+
const baselineSuccess = baseline.filter(e => e.success).length / baseline.length;
|
|
267
|
+
return baselineSuccess > 0
|
|
268
|
+
? (recentSuccess - baselineSuccess) / baselineSuccess
|
|
269
|
+
: recentSuccess > 0 ? 1 : 0;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
exports.LearningEngineAdapter = LearningEngineAdapter;
|
|
273
|
+
/**
|
|
274
|
+
* Create a learning strategy adapter from an existing engine
|
|
275
|
+
*/
|
|
276
|
+
function createLearningAdapter(engine) {
|
|
277
|
+
return new LearningEngineAdapter(engine);
|
|
278
|
+
}
|
|
279
|
+
//# sourceMappingURL=LearningEngineAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearningEngineAdapter.js","sourceRoot":"","sources":["../../../src/agents/adapters/LearningEngineAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LifecycleManagerAdapter - Adapts AgentLifecycleManager to AgentLifecycleStrategy
|
|
3
|
+
*
|
|
4
|
+
* Provides backward compatibility during the B1.2 migration.
|
|
5
|
+
* Wraps the existing AgentLifecycleManager to implement the strategy interface.
|
|
6
|
+
*
|
|
7
|
+
* @module agents/adapters/LifecycleManagerAdapter
|
|
8
|
+
* @version 1.0.0
|
|
9
|
+
*/
|
|
10
|
+
import type { AgentLifecycleStrategy, LifecycleConfig, LifecycleEvent, LifecycleMetrics } from '../../core/strategies';
|
|
11
|
+
import type { AgentStatus, PreTaskData, PostTaskData, TaskErrorData } from '../../types';
|
|
12
|
+
import { AgentLifecycleManager } from '../lifecycle/AgentLifecycleManager';
|
|
13
|
+
/**
|
|
14
|
+
* Adapts AgentLifecycleManager to AgentLifecycleStrategy interface
|
|
15
|
+
*
|
|
16
|
+
* This adapter allows BaseAgent to use the strategy interface while
|
|
17
|
+
* maintaining backward compatibility with existing AgentLifecycleManager.
|
|
18
|
+
*/
|
|
19
|
+
export declare class LifecycleManagerAdapter implements AgentLifecycleStrategy {
|
|
20
|
+
private readonly manager;
|
|
21
|
+
private config?;
|
|
22
|
+
private lifecycleHandler?;
|
|
23
|
+
private tasksExecuted;
|
|
24
|
+
private initTime;
|
|
25
|
+
private startTime;
|
|
26
|
+
constructor(manager: AgentLifecycleManager);
|
|
27
|
+
initialize(config: LifecycleConfig): Promise<void>;
|
|
28
|
+
getStatus(): AgentStatus;
|
|
29
|
+
transitionTo(status: AgentStatus, reason?: string): Promise<void>;
|
|
30
|
+
waitForStatus(status: AgentStatus, timeout: number): Promise<void>;
|
|
31
|
+
waitForReady(timeout: number): Promise<void>;
|
|
32
|
+
shutdown(): Promise<void>;
|
|
33
|
+
reset(): Promise<void>;
|
|
34
|
+
onPreTask(_data: PreTaskData): Promise<void>;
|
|
35
|
+
onPostTask(_data: PostTaskData): Promise<void>;
|
|
36
|
+
onTaskError(_data: TaskErrorData): Promise<void>;
|
|
37
|
+
onLifecycleChange(handler: (event: LifecycleEvent) => void): void;
|
|
38
|
+
canAcceptTask(): boolean;
|
|
39
|
+
getMetrics(): LifecycleMetrics;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Create a lifecycle strategy adapter from an existing manager
|
|
43
|
+
*/
|
|
44
|
+
export declare function createLifecycleAdapter(manager: AgentLifecycleManager): AgentLifecycleStrategy;
|
|
45
|
+
//# sourceMappingURL=LifecycleManagerAdapter.d.ts.map
|