agentic-qe 2.5.4 → 2.5.5
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/.claude/commands/aqe-costs.md +509 -0
- package/CHANGELOG.md +58 -0
- package/README.md +1 -1
- package/dist/agents/SONALifecycleManager.d.ts +226 -0
- package/dist/agents/SONALifecycleManager.d.ts.map +1 -0
- package/dist/agents/SONALifecycleManager.js +563 -0
- package/dist/agents/SONALifecycleManager.js.map +1 -0
- package/dist/agents/index.d.ts +2 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +7 -1
- package/dist/agents/index.js.map +1 -1
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/core/metrics/InferenceCostTracker.d.ts +293 -0
- package/dist/core/metrics/InferenceCostTracker.d.ts.map +1 -0
- package/dist/core/metrics/InferenceCostTracker.js +461 -0
- package/dist/core/metrics/InferenceCostTracker.js.map +1 -0
- package/dist/core/metrics/index.d.ts +1 -0
- package/dist/core/metrics/index.d.ts.map +1 -1
- package/dist/core/metrics/index.js +7 -1
- package/dist/core/metrics/index.js.map +1 -1
- package/dist/core/routing/AdaptiveModelRouter.d.ts +17 -0
- package/dist/core/routing/AdaptiveModelRouter.d.ts.map +1 -1
- package/dist/core/routing/AdaptiveModelRouter.js +117 -0
- package/dist/core/routing/AdaptiveModelRouter.js.map +1 -1
- package/dist/core/routing/ModelRules.d.ts +2 -0
- package/dist/core/routing/ModelRules.d.ts.map +1 -1
- package/dist/core/routing/ModelRules.js +82 -0
- package/dist/core/routing/ModelRules.js.map +1 -1
- package/dist/core/routing/types.d.ts +14 -1
- package/dist/core/routing/types.d.ts.map +1 -1
- package/dist/core/routing/types.js +7 -0
- package/dist/core/routing/types.js.map +1 -1
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/mcp/services/AgentRegistry.d.ts +35 -0
- package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
- package/dist/mcp/services/AgentRegistry.js +126 -1
- package/dist/mcp/services/AgentRegistry.js.map +1 -1
- package/dist/mcp/tools/qe/accessibility/video-vision-analyzer.d.ts +8 -1
- package/dist/mcp/tools/qe/accessibility/video-vision-analyzer.d.ts.map +1 -1
- package/dist/mcp/tools/qe/accessibility/video-vision-analyzer.js +134 -46
- package/dist/mcp/tools/qe/accessibility/video-vision-analyzer.js.map +1 -1
- package/dist/telemetry/metrics/collectors/cost.d.ts.map +1 -1
- package/dist/telemetry/metrics/collectors/cost.js +6 -0
- package/dist/telemetry/metrics/collectors/cost.js.map +1 -1
- package/package.json +9 -2
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SONA Lifecycle Manager - Phase 2 Integration
|
|
3
|
+
*
|
|
4
|
+
* Wires SONA's self-organizing capabilities into agent execution lifecycle.
|
|
5
|
+
* Provides hooks for:
|
|
6
|
+
* - Agent spawn: Initialize SONA state and activate relevant LoRA adapters
|
|
7
|
+
* - Task completion: Collect feedback and consolidate successful patterns
|
|
8
|
+
* - Task feedback: Record execution events and trigger learning
|
|
9
|
+
* - EWC weight consolidation: Prevent catastrophic forgetting
|
|
10
|
+
*
|
|
11
|
+
* Architecture:
|
|
12
|
+
* - Wraps SONALearningStrategy for lifecycle events
|
|
13
|
+
* - Manages per-agent SONA contexts
|
|
14
|
+
* - Coordinates LoRA adapter activation based on agent/task types
|
|
15
|
+
* - Triggers EWC consolidation on successful patterns
|
|
16
|
+
*
|
|
17
|
+
* @module agents/SONALifecycleManager
|
|
18
|
+
* @version 2.5.4
|
|
19
|
+
*/
|
|
20
|
+
import { SONALearningStrategy, type SONALearningConfig, type SONAMetrics } from '../core/strategies/SONALearningStrategy';
|
|
21
|
+
import { SONAFeedbackLoop, type FeedbackLoopConfig, type FeedbackEvent } from '../learning/SONAFeedbackLoop';
|
|
22
|
+
import type { LearnedPattern, TrainingResult } from '../core/strategies';
|
|
23
|
+
import type { QETask, QEAgentType } from '../types';
|
|
24
|
+
/**
|
|
25
|
+
* SONA lifecycle configuration
|
|
26
|
+
*/
|
|
27
|
+
export interface SONALifecycleConfig {
|
|
28
|
+
/** Enable SONA lifecycle integration */
|
|
29
|
+
enabled?: boolean;
|
|
30
|
+
/** Enable automatic EWC consolidation */
|
|
31
|
+
autoConsolidate?: boolean;
|
|
32
|
+
/** Consolidation interval (default: 100 successful tasks) */
|
|
33
|
+
consolidationInterval?: number;
|
|
34
|
+
/** Enable LoRA adapter management */
|
|
35
|
+
enableLoraAdapters?: boolean;
|
|
36
|
+
/** SONA learning configuration */
|
|
37
|
+
sonaConfig?: SONALearningConfig;
|
|
38
|
+
/** Feedback loop configuration */
|
|
39
|
+
feedbackConfig?: FeedbackLoopConfig;
|
|
40
|
+
/** Minimum success rate for consolidation (default: 0.7) */
|
|
41
|
+
minSuccessRateForConsolidation?: number;
|
|
42
|
+
/** Enable performance-based adapter selection */
|
|
43
|
+
enableAdaptiveAdapters?: boolean;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Agent-specific SONA context
|
|
47
|
+
*/
|
|
48
|
+
export interface AgentSONAContext {
|
|
49
|
+
/** Agent ID */
|
|
50
|
+
agentId: string;
|
|
51
|
+
/** Agent type */
|
|
52
|
+
agentType: QEAgentType;
|
|
53
|
+
/** SONA learning strategy */
|
|
54
|
+
strategy: SONALearningStrategy;
|
|
55
|
+
/** Feedback loop */
|
|
56
|
+
feedbackLoop?: SONAFeedbackLoop;
|
|
57
|
+
/** Active LoRA adapter name */
|
|
58
|
+
activeAdapter?: string;
|
|
59
|
+
/** Successful task count */
|
|
60
|
+
successfulTasks: number;
|
|
61
|
+
/** Failed task count */
|
|
62
|
+
failedTasks: number;
|
|
63
|
+
/** Last consolidation timestamp */
|
|
64
|
+
lastConsolidation: Date;
|
|
65
|
+
/** Patterns pending consolidation */
|
|
66
|
+
pendingPatterns: LearnedPattern[];
|
|
67
|
+
/** Created timestamp */
|
|
68
|
+
createdAt: Date;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Task completion feedback
|
|
72
|
+
*/
|
|
73
|
+
export interface TaskCompletionFeedback {
|
|
74
|
+
/** Task that was executed */
|
|
75
|
+
task: QETask;
|
|
76
|
+
/** Whether execution was successful */
|
|
77
|
+
success: boolean;
|
|
78
|
+
/** Execution duration in ms */
|
|
79
|
+
duration: number;
|
|
80
|
+
/** Quality score (0-1) if available */
|
|
81
|
+
quality?: number;
|
|
82
|
+
/** Result data */
|
|
83
|
+
result?: unknown;
|
|
84
|
+
/** Error if failed */
|
|
85
|
+
error?: Error;
|
|
86
|
+
/** Patterns used during execution */
|
|
87
|
+
patternsUsed?: string[];
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* SONA Lifecycle Manager
|
|
91
|
+
*
|
|
92
|
+
* Manages SONA learning contexts for all agents in the fleet.
|
|
93
|
+
* Coordinates lifecycle hooks and learning consolidation.
|
|
94
|
+
*/
|
|
95
|
+
export declare class SONALifecycleManager {
|
|
96
|
+
private contexts;
|
|
97
|
+
private config;
|
|
98
|
+
private logger;
|
|
99
|
+
private ruvLLMAvailable;
|
|
100
|
+
constructor(config?: SONALifecycleConfig);
|
|
101
|
+
/**
|
|
102
|
+
* Check if ruvLLM is available for advanced SONA features
|
|
103
|
+
*/
|
|
104
|
+
private checkRuvLLMAvailability;
|
|
105
|
+
/**
|
|
106
|
+
* Hook: Agent Spawn
|
|
107
|
+
*
|
|
108
|
+
* Called when a new agent is spawned. Initializes SONA state and
|
|
109
|
+
* activates relevant LoRA adapter based on agent type.
|
|
110
|
+
*
|
|
111
|
+
* @param agentId - Unique agent identifier
|
|
112
|
+
* @param agentType - Type of agent being spawned
|
|
113
|
+
* @returns Agent SONA context
|
|
114
|
+
*/
|
|
115
|
+
onAgentSpawn(agentId: string, agentType: QEAgentType): Promise<AgentSONAContext>;
|
|
116
|
+
/**
|
|
117
|
+
* Hook: Task Complete
|
|
118
|
+
*
|
|
119
|
+
* Called when an agent completes a task. Collects feedback and
|
|
120
|
+
* triggers EWC weight consolidation on successful patterns.
|
|
121
|
+
*
|
|
122
|
+
* @param agentId - Agent identifier
|
|
123
|
+
* @param feedback - Task completion feedback
|
|
124
|
+
*/
|
|
125
|
+
onTaskComplete(agentId: string, feedback: TaskCompletionFeedback): Promise<void>;
|
|
126
|
+
/**
|
|
127
|
+
* Hook: Task Feedback
|
|
128
|
+
*
|
|
129
|
+
* Generic feedback recording hook. Can be called at any point during
|
|
130
|
+
* or after task execution to record events and trigger learning.
|
|
131
|
+
*
|
|
132
|
+
* @param agentId - Agent identifier
|
|
133
|
+
* @param event - Feedback event
|
|
134
|
+
*/
|
|
135
|
+
onFeedback(agentId: string, event: FeedbackEvent): Promise<void>;
|
|
136
|
+
/**
|
|
137
|
+
* Get agent SONA context
|
|
138
|
+
*
|
|
139
|
+
* @param agentId - Agent identifier
|
|
140
|
+
* @returns Agent SONA context or undefined
|
|
141
|
+
*/
|
|
142
|
+
getContext(agentId: string): AgentSONAContext | undefined;
|
|
143
|
+
/**
|
|
144
|
+
* Get SONA metrics for an agent
|
|
145
|
+
*
|
|
146
|
+
* @param agentId - Agent identifier
|
|
147
|
+
* @returns SONA metrics or undefined
|
|
148
|
+
*/
|
|
149
|
+
getMetrics(agentId: string): Promise<SONAMetrics | undefined>;
|
|
150
|
+
/**
|
|
151
|
+
* Manually trigger training for an agent
|
|
152
|
+
*
|
|
153
|
+
* @param agentId - Agent identifier
|
|
154
|
+
* @param iterations - Number of training iterations
|
|
155
|
+
* @returns Training result
|
|
156
|
+
*/
|
|
157
|
+
train(agentId: string, iterations?: number): Promise<TrainingResult | undefined>;
|
|
158
|
+
/**
|
|
159
|
+
* Cleanup agent SONA context
|
|
160
|
+
*
|
|
161
|
+
* @param agentId - Agent identifier
|
|
162
|
+
*/
|
|
163
|
+
cleanupAgent(agentId: string): Promise<void>;
|
|
164
|
+
/**
|
|
165
|
+
* Get all active agent contexts
|
|
166
|
+
*
|
|
167
|
+
* @returns Array of agent SONA contexts
|
|
168
|
+
*/
|
|
169
|
+
getAllContexts(): AgentSONAContext[];
|
|
170
|
+
/**
|
|
171
|
+
* Get lifecycle statistics
|
|
172
|
+
*
|
|
173
|
+
* @returns Lifecycle statistics
|
|
174
|
+
*/
|
|
175
|
+
getStatistics(): {
|
|
176
|
+
totalAgents: number;
|
|
177
|
+
totalSuccessfulTasks: number;
|
|
178
|
+
totalFailedTasks: number;
|
|
179
|
+
averageSuccessRate: number;
|
|
180
|
+
totalConsolidations: number;
|
|
181
|
+
ruvLLMAvailable: boolean;
|
|
182
|
+
};
|
|
183
|
+
/**
|
|
184
|
+
* Determine LoRA adapter for agent type
|
|
185
|
+
*/
|
|
186
|
+
private determineLoraAdapter;
|
|
187
|
+
/**
|
|
188
|
+
* Activate LoRA adapter for strategy
|
|
189
|
+
*/
|
|
190
|
+
private activateLoraAdapter;
|
|
191
|
+
/**
|
|
192
|
+
* Record feedback to strategy
|
|
193
|
+
*/
|
|
194
|
+
private recordFeedback;
|
|
195
|
+
/**
|
|
196
|
+
* Check if weight consolidation should be triggered
|
|
197
|
+
*/
|
|
198
|
+
private shouldConsolidate;
|
|
199
|
+
/**
|
|
200
|
+
* Consolidate weights using EWC++
|
|
201
|
+
*
|
|
202
|
+
* Stores successful patterns and prevents catastrophic forgetting
|
|
203
|
+
* by consolidating weights of high-confidence patterns.
|
|
204
|
+
*/
|
|
205
|
+
private consolidateWeights;
|
|
206
|
+
/**
|
|
207
|
+
* Check if adapter should be changed based on performance
|
|
208
|
+
*/
|
|
209
|
+
private checkAdapterPerformance;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Create SONA lifecycle manager with default configuration
|
|
213
|
+
*/
|
|
214
|
+
export declare function createSONALifecycleManager(config?: SONALifecycleConfig): SONALifecycleManager;
|
|
215
|
+
/**
|
|
216
|
+
* Get or create global SONA lifecycle manager
|
|
217
|
+
*
|
|
218
|
+
* @param config - Optional configuration (only used on first call)
|
|
219
|
+
* @returns Global SONA lifecycle manager
|
|
220
|
+
*/
|
|
221
|
+
export declare function getSONALifecycleManager(config?: SONALifecycleConfig): SONALifecycleManager;
|
|
222
|
+
/**
|
|
223
|
+
* Reset global SONA lifecycle manager (for testing)
|
|
224
|
+
*/
|
|
225
|
+
export declare function resetSONALifecycleManager(): void;
|
|
226
|
+
//# sourceMappingURL=SONALifecycleManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SONALifecycleManager.d.ts","sourceRoot":"","sources":["../../src/agents/SONALifecycleManager.ts"],"names":[],"mappings":"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"}
|