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,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DefaultLearningStrategy - Standard agent learning implementation
|
|
3
|
+
*
|
|
4
|
+
* Wraps LearningEngine and PerformanceTracker for backward compatibility.
|
|
5
|
+
* Provides pattern learning, recommendations, and execution tracking.
|
|
6
|
+
*
|
|
7
|
+
* @module core/strategies/DefaultLearningStrategy
|
|
8
|
+
* @version 1.0.0
|
|
9
|
+
*/
|
|
10
|
+
import type { AgentLearningStrategy, LearnedPattern, PatternQuery, StrategyRecommendation, ExecutionEvent, TrainingResult, LearningStatus, LearningMetrics } from './AgentLearningStrategy';
|
|
11
|
+
/**
|
|
12
|
+
* DefaultLearningStrategy - Pattern-based learning with performance tracking
|
|
13
|
+
*/
|
|
14
|
+
export declare class DefaultLearningStrategy implements AgentLearningStrategy {
|
|
15
|
+
private patterns;
|
|
16
|
+
private executions;
|
|
17
|
+
private recommendations;
|
|
18
|
+
private initialized;
|
|
19
|
+
private trainingIterations;
|
|
20
|
+
private lastTraining?;
|
|
21
|
+
private readonly maxPatterns;
|
|
22
|
+
private readonly maxExecutions;
|
|
23
|
+
private readonly minConfidenceThreshold;
|
|
24
|
+
private readonly learningRate;
|
|
25
|
+
constructor(config?: {
|
|
26
|
+
maxPatterns?: number;
|
|
27
|
+
maxExecutions?: number;
|
|
28
|
+
minConfidenceThreshold?: number;
|
|
29
|
+
learningRate?: number;
|
|
30
|
+
});
|
|
31
|
+
/**
|
|
32
|
+
* Initialize the learning strategy
|
|
33
|
+
*/
|
|
34
|
+
initialize(): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Store a learned pattern
|
|
37
|
+
*/
|
|
38
|
+
storePattern(pattern: LearnedPattern): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Query learned patterns
|
|
41
|
+
*/
|
|
42
|
+
getPatterns(query: PatternQuery): Promise<LearnedPattern[]>;
|
|
43
|
+
/**
|
|
44
|
+
* Find similar patterns using vector similarity
|
|
45
|
+
*/
|
|
46
|
+
findSimilarPatterns(embedding: number[], limit?: number): Promise<LearnedPattern[]>;
|
|
47
|
+
/**
|
|
48
|
+
* Update pattern confidence based on feedback
|
|
49
|
+
*/
|
|
50
|
+
updatePatternConfidence(patternId: string, success: boolean): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Recommend a strategy based on task state
|
|
53
|
+
*/
|
|
54
|
+
recommendStrategy(taskState: unknown): Promise<StrategyRecommendation | null>;
|
|
55
|
+
/**
|
|
56
|
+
* Record recommendation outcome
|
|
57
|
+
*/
|
|
58
|
+
recordRecommendationOutcome(recommendation: StrategyRecommendation, success: boolean): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Record a task execution for learning
|
|
61
|
+
*/
|
|
62
|
+
recordExecution(event: ExecutionEvent): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Get execution history
|
|
65
|
+
*/
|
|
66
|
+
getExecutionHistory(limit?: number): Promise<ExecutionEvent[]>;
|
|
67
|
+
/**
|
|
68
|
+
* Train the learning model
|
|
69
|
+
*/
|
|
70
|
+
train(iterations?: number): Promise<TrainingResult>;
|
|
71
|
+
/**
|
|
72
|
+
* Export learned patterns
|
|
73
|
+
*/
|
|
74
|
+
exportPatterns(): Promise<LearnedPattern[]>;
|
|
75
|
+
/**
|
|
76
|
+
* Import patterns from another agent
|
|
77
|
+
*/
|
|
78
|
+
importPatterns(patterns: LearnedPattern[]): Promise<number>;
|
|
79
|
+
/**
|
|
80
|
+
* Get learning status
|
|
81
|
+
*/
|
|
82
|
+
getStatus(): LearningStatus;
|
|
83
|
+
/**
|
|
84
|
+
* Get learning metrics
|
|
85
|
+
*/
|
|
86
|
+
getMetrics(): Promise<LearningMetrics>;
|
|
87
|
+
/**
|
|
88
|
+
* Reset learning state
|
|
89
|
+
*/
|
|
90
|
+
reset(): Promise<void>;
|
|
91
|
+
private removeLowestConfidencePattern;
|
|
92
|
+
private generatePatternId;
|
|
93
|
+
private calculateAverageConfidence;
|
|
94
|
+
private calculateRecommendationAccuracy;
|
|
95
|
+
private cosineSimilarity;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* DisabledLearningStrategy - No-op for benchmarks/testing
|
|
99
|
+
*/
|
|
100
|
+
export declare class DisabledLearningStrategy implements AgentLearningStrategy {
|
|
101
|
+
initialize(): Promise<void>;
|
|
102
|
+
storePattern(): Promise<void>;
|
|
103
|
+
getPatterns(): Promise<LearnedPattern[]>;
|
|
104
|
+
findSimilarPatterns(): Promise<LearnedPattern[]>;
|
|
105
|
+
updatePatternConfidence(): Promise<void>;
|
|
106
|
+
recommendStrategy(): Promise<StrategyRecommendation | null>;
|
|
107
|
+
recordRecommendationOutcome(): Promise<void>;
|
|
108
|
+
recordExecution(): Promise<void>;
|
|
109
|
+
getExecutionHistory(): Promise<ExecutionEvent[]>;
|
|
110
|
+
train(): Promise<TrainingResult>;
|
|
111
|
+
exportPatterns(): Promise<LearnedPattern[]>;
|
|
112
|
+
importPatterns(): Promise<number>;
|
|
113
|
+
getStatus(): LearningStatus;
|
|
114
|
+
getMetrics(): Promise<LearningMetrics>;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Factory function for creating learning strategies
|
|
118
|
+
*/
|
|
119
|
+
export declare function createLearningStrategy(type?: 'default' | 'disabled', config?: Record<string, unknown>): AgentLearningStrategy;
|
|
120
|
+
//# sourceMappingURL=DefaultLearningStrategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultLearningStrategy.d.ts","sourceRoot":"","sources":["../../../src/core/strategies/DefaultLearningStrategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,365 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* DefaultLearningStrategy - Standard agent learning implementation
|
|
4
|
+
*
|
|
5
|
+
* Wraps LearningEngine and PerformanceTracker for backward compatibility.
|
|
6
|
+
* Provides pattern learning, recommendations, and execution tracking.
|
|
7
|
+
*
|
|
8
|
+
* @module core/strategies/DefaultLearningStrategy
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.DisabledLearningStrategy = exports.DefaultLearningStrategy = void 0;
|
|
13
|
+
exports.createLearningStrategy = createLearningStrategy;
|
|
14
|
+
/**
|
|
15
|
+
* DefaultLearningStrategy - Pattern-based learning with performance tracking
|
|
16
|
+
*/
|
|
17
|
+
class DefaultLearningStrategy {
|
|
18
|
+
constructor(config) {
|
|
19
|
+
this.patterns = new Map();
|
|
20
|
+
this.executions = [];
|
|
21
|
+
this.recommendations = new Map();
|
|
22
|
+
this.initialized = false;
|
|
23
|
+
this.trainingIterations = 0;
|
|
24
|
+
this.maxPatterns = config?.maxPatterns ?? 10000;
|
|
25
|
+
this.maxExecutions = config?.maxExecutions ?? 1000;
|
|
26
|
+
this.minConfidenceThreshold = config?.minConfidenceThreshold ?? 0.3;
|
|
27
|
+
this.learningRate = config?.learningRate ?? 0.1;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Initialize the learning strategy
|
|
31
|
+
*/
|
|
32
|
+
async initialize() {
|
|
33
|
+
this.initialized = true;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Store a learned pattern
|
|
37
|
+
*/
|
|
38
|
+
async storePattern(pattern) {
|
|
39
|
+
// Enforce max patterns limit
|
|
40
|
+
if (this.patterns.size >= this.maxPatterns) {
|
|
41
|
+
// Remove lowest confidence pattern
|
|
42
|
+
this.removeLowestConfidencePattern();
|
|
43
|
+
}
|
|
44
|
+
this.patterns.set(pattern.id, {
|
|
45
|
+
...pattern,
|
|
46
|
+
updatedAt: new Date(),
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Query learned patterns
|
|
51
|
+
*/
|
|
52
|
+
async getPatterns(query) {
|
|
53
|
+
let results = Array.from(this.patterns.values());
|
|
54
|
+
// Apply filters
|
|
55
|
+
if (query.type) {
|
|
56
|
+
results = results.filter((p) => p.type === query.type);
|
|
57
|
+
}
|
|
58
|
+
if (query.domain) {
|
|
59
|
+
results = results.filter((p) => p.domain === query.domain);
|
|
60
|
+
}
|
|
61
|
+
if (query.minConfidence !== undefined) {
|
|
62
|
+
results = results.filter((p) => p.confidence >= query.minConfidence);
|
|
63
|
+
}
|
|
64
|
+
// Sort by confidence (descending)
|
|
65
|
+
results.sort((a, b) => b.confidence - a.confidence);
|
|
66
|
+
// Apply limit
|
|
67
|
+
if (query.limit) {
|
|
68
|
+
results = results.slice(0, query.limit);
|
|
69
|
+
}
|
|
70
|
+
return results;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Find similar patterns using vector similarity
|
|
74
|
+
*/
|
|
75
|
+
async findSimilarPatterns(embedding, limit = 10) {
|
|
76
|
+
const results = [];
|
|
77
|
+
for (const pattern of this.patterns.values()) {
|
|
78
|
+
if (pattern.embedding) {
|
|
79
|
+
const similarity = this.cosineSimilarity(embedding, pattern.embedding);
|
|
80
|
+
results.push({ pattern, similarity });
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return results
|
|
84
|
+
.sort((a, b) => b.similarity - a.similarity)
|
|
85
|
+
.slice(0, limit)
|
|
86
|
+
.map((r) => r.pattern);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Update pattern confidence based on feedback
|
|
90
|
+
*/
|
|
91
|
+
async updatePatternConfidence(patternId, success) {
|
|
92
|
+
const pattern = this.patterns.get(patternId);
|
|
93
|
+
if (!pattern)
|
|
94
|
+
return;
|
|
95
|
+
// Exponential moving average for confidence
|
|
96
|
+
const adjustment = success ? this.learningRate : -this.learningRate;
|
|
97
|
+
pattern.confidence = Math.max(0, Math.min(1, pattern.confidence + adjustment));
|
|
98
|
+
pattern.usageCount++;
|
|
99
|
+
// Update success rate
|
|
100
|
+
const totalUses = pattern.usageCount;
|
|
101
|
+
const successRate = success
|
|
102
|
+
? (pattern.successRate * (totalUses - 1) + 1) / totalUses
|
|
103
|
+
: (pattern.successRate * (totalUses - 1)) / totalUses;
|
|
104
|
+
pattern.successRate = successRate;
|
|
105
|
+
pattern.updatedAt = new Date();
|
|
106
|
+
this.patterns.set(patternId, pattern);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Recommend a strategy based on task state
|
|
110
|
+
*/
|
|
111
|
+
async recommendStrategy(taskState) {
|
|
112
|
+
// Simple heuristic: find patterns matching the task state
|
|
113
|
+
const patterns = await this.getPatterns({
|
|
114
|
+
minConfidence: this.minConfidenceThreshold,
|
|
115
|
+
limit: 5,
|
|
116
|
+
});
|
|
117
|
+
if (patterns.length === 0) {
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
120
|
+
// Use highest confidence pattern
|
|
121
|
+
const bestPattern = patterns[0];
|
|
122
|
+
const recommendation = {
|
|
123
|
+
strategy: bestPattern.type,
|
|
124
|
+
confidence: bestPattern.confidence,
|
|
125
|
+
reasoning: `Based on pattern '${bestPattern.id}' with ${(bestPattern.successRate * 100).toFixed(1)}% success rate`,
|
|
126
|
+
alternatives: patterns.slice(1, 4).map((p) => ({
|
|
127
|
+
strategy: p.type,
|
|
128
|
+
confidence: p.confidence,
|
|
129
|
+
})),
|
|
130
|
+
metadata: {
|
|
131
|
+
patternId: bestPattern.id,
|
|
132
|
+
patternDomain: bestPattern.domain,
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
// Track recommendation for outcome recording
|
|
136
|
+
const trackingId = `${Date.now()}-${Math.random().toString(36).slice(2)}`;
|
|
137
|
+
this.recommendations.set(trackingId, { recommendation });
|
|
138
|
+
return recommendation;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Record recommendation outcome
|
|
142
|
+
*/
|
|
143
|
+
async recordRecommendationOutcome(recommendation, success) {
|
|
144
|
+
// Find the pattern and update its confidence
|
|
145
|
+
const patternId = recommendation.metadata?.patternId;
|
|
146
|
+
if (patternId) {
|
|
147
|
+
await this.updatePatternConfidence(patternId, success);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Record a task execution for learning
|
|
152
|
+
*/
|
|
153
|
+
async recordExecution(event) {
|
|
154
|
+
// Enforce max executions limit (FIFO)
|
|
155
|
+
if (this.executions.length >= this.maxExecutions) {
|
|
156
|
+
this.executions.shift();
|
|
157
|
+
}
|
|
158
|
+
this.executions.push({
|
|
159
|
+
...event,
|
|
160
|
+
duration: event.duration ?? 0,
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Get execution history
|
|
165
|
+
*/
|
|
166
|
+
async getExecutionHistory(limit = 100) {
|
|
167
|
+
return this.executions.slice(-limit);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Train the learning model
|
|
171
|
+
*/
|
|
172
|
+
async train(iterations = 10) {
|
|
173
|
+
const startTime = performance.now();
|
|
174
|
+
let improvement = 0;
|
|
175
|
+
let patternsLearned = 0;
|
|
176
|
+
for (let i = 0; i < iterations; i++) {
|
|
177
|
+
// Simple training: adjust pattern confidence based on execution history
|
|
178
|
+
for (const execution of this.executions) {
|
|
179
|
+
// Create or update pattern based on execution
|
|
180
|
+
const patternId = this.generatePatternId(execution);
|
|
181
|
+
let pattern = this.patterns.get(patternId);
|
|
182
|
+
if (!pattern) {
|
|
183
|
+
pattern = {
|
|
184
|
+
id: patternId,
|
|
185
|
+
type: execution.task.type || 'unknown',
|
|
186
|
+
domain: 'execution',
|
|
187
|
+
content: JSON.stringify(execution.task),
|
|
188
|
+
confidence: 0.5,
|
|
189
|
+
usageCount: 0,
|
|
190
|
+
successRate: 0,
|
|
191
|
+
createdAt: new Date(),
|
|
192
|
+
updatedAt: new Date(),
|
|
193
|
+
};
|
|
194
|
+
patternsLearned++;
|
|
195
|
+
}
|
|
196
|
+
await this.updatePatternConfidence(patternId, execution.success);
|
|
197
|
+
}
|
|
198
|
+
this.trainingIterations++;
|
|
199
|
+
}
|
|
200
|
+
this.lastTraining = new Date();
|
|
201
|
+
const duration = performance.now() - startTime;
|
|
202
|
+
// Calculate improvement (simple heuristic)
|
|
203
|
+
const avgConfidence = this.calculateAverageConfidence();
|
|
204
|
+
improvement = avgConfidence - 0.5; // Improvement over baseline
|
|
205
|
+
return {
|
|
206
|
+
iterations,
|
|
207
|
+
improvement,
|
|
208
|
+
patternsLearned,
|
|
209
|
+
duration,
|
|
210
|
+
metrics: {
|
|
211
|
+
accuracy: avgConfidence,
|
|
212
|
+
loss: 1 - avgConfidence,
|
|
213
|
+
recall: patternsLearned / Math.max(1, this.executions.length),
|
|
214
|
+
},
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Export learned patterns
|
|
219
|
+
*/
|
|
220
|
+
async exportPatterns() {
|
|
221
|
+
return Array.from(this.patterns.values());
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Import patterns from another agent
|
|
225
|
+
*/
|
|
226
|
+
async importPatterns(patterns) {
|
|
227
|
+
let imported = 0;
|
|
228
|
+
for (const pattern of patterns) {
|
|
229
|
+
if (!this.patterns.has(pattern.id)) {
|
|
230
|
+
await this.storePattern(pattern);
|
|
231
|
+
imported++;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
return imported;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Get learning status
|
|
238
|
+
*/
|
|
239
|
+
getStatus() {
|
|
240
|
+
return {
|
|
241
|
+
enabled: true,
|
|
242
|
+
initialized: this.initialized,
|
|
243
|
+
patternsCount: this.patterns.size,
|
|
244
|
+
executionsRecorded: this.executions.length,
|
|
245
|
+
lastTraining: this.lastTraining,
|
|
246
|
+
accuracy: this.calculateAverageConfidence(),
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Get learning metrics
|
|
251
|
+
*/
|
|
252
|
+
async getMetrics() {
|
|
253
|
+
const successful = this.executions.filter((e) => e.success).length;
|
|
254
|
+
const failed = this.executions.length - successful;
|
|
255
|
+
return {
|
|
256
|
+
totalExecutions: this.executions.length,
|
|
257
|
+
successfulExecutions: successful,
|
|
258
|
+
failedExecutions: failed,
|
|
259
|
+
patternsStored: this.patterns.size,
|
|
260
|
+
recommendationsGiven: this.recommendations.size,
|
|
261
|
+
recommendationAccuracy: this.calculateRecommendationAccuracy(),
|
|
262
|
+
averageConfidence: this.calculateAverageConfidence(),
|
|
263
|
+
trainingIterations: this.trainingIterations,
|
|
264
|
+
lastActivity: this.lastTraining ?? new Date(),
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Reset learning state
|
|
269
|
+
*/
|
|
270
|
+
async reset() {
|
|
271
|
+
this.patterns.clear();
|
|
272
|
+
this.executions = [];
|
|
273
|
+
this.recommendations.clear();
|
|
274
|
+
this.trainingIterations = 0;
|
|
275
|
+
this.lastTraining = undefined;
|
|
276
|
+
}
|
|
277
|
+
// === Private Helpers ===
|
|
278
|
+
removeLowestConfidencePattern() {
|
|
279
|
+
let lowestId = null;
|
|
280
|
+
let lowestConfidence = Infinity;
|
|
281
|
+
for (const [id, pattern] of this.patterns) {
|
|
282
|
+
if (pattern.confidence < lowestConfidence) {
|
|
283
|
+
lowestConfidence = pattern.confidence;
|
|
284
|
+
lowestId = id;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
if (lowestId) {
|
|
288
|
+
this.patterns.delete(lowestId);
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
generatePatternId(execution) {
|
|
292
|
+
const taskType = execution.task.type || 'unknown';
|
|
293
|
+
return `pattern-${taskType}-${Buffer.from(JSON.stringify(execution.task)).toString('base64').slice(0, 16)}`;
|
|
294
|
+
}
|
|
295
|
+
calculateAverageConfidence() {
|
|
296
|
+
if (this.patterns.size === 0)
|
|
297
|
+
return 0;
|
|
298
|
+
const sum = Array.from(this.patterns.values()).reduce((acc, p) => acc + p.confidence, 0);
|
|
299
|
+
return sum / this.patterns.size;
|
|
300
|
+
}
|
|
301
|
+
calculateRecommendationAccuracy() {
|
|
302
|
+
const withOutcome = Array.from(this.recommendations.values()).filter((r) => r.outcome !== undefined);
|
|
303
|
+
if (withOutcome.length === 0)
|
|
304
|
+
return 0;
|
|
305
|
+
const successful = withOutcome.filter((r) => r.outcome === true).length;
|
|
306
|
+
return successful / withOutcome.length;
|
|
307
|
+
}
|
|
308
|
+
cosineSimilarity(a, b) {
|
|
309
|
+
if (a.length !== b.length)
|
|
310
|
+
return 0;
|
|
311
|
+
let dotProduct = 0;
|
|
312
|
+
let normA = 0;
|
|
313
|
+
let normB = 0;
|
|
314
|
+
for (let i = 0; i < a.length; i++) {
|
|
315
|
+
dotProduct += a[i] * b[i];
|
|
316
|
+
normA += a[i] * a[i];
|
|
317
|
+
normB += b[i] * b[i];
|
|
318
|
+
}
|
|
319
|
+
const magnitude = Math.sqrt(normA) * Math.sqrt(normB);
|
|
320
|
+
return magnitude === 0 ? 0 : dotProduct / magnitude;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
exports.DefaultLearningStrategy = DefaultLearningStrategy;
|
|
324
|
+
/**
|
|
325
|
+
* DisabledLearningStrategy - No-op for benchmarks/testing
|
|
326
|
+
*/
|
|
327
|
+
class DisabledLearningStrategy {
|
|
328
|
+
async initialize() { }
|
|
329
|
+
async storePattern() { }
|
|
330
|
+
async getPatterns() { return []; }
|
|
331
|
+
async findSimilarPatterns() { return []; }
|
|
332
|
+
async updatePatternConfidence() { }
|
|
333
|
+
async recommendStrategy() { return null; }
|
|
334
|
+
async recordRecommendationOutcome() { }
|
|
335
|
+
async recordExecution() { }
|
|
336
|
+
async getExecutionHistory() { return []; }
|
|
337
|
+
async train() {
|
|
338
|
+
return { iterations: 0, improvement: 0, patternsLearned: 0, duration: 0, metrics: { accuracy: 0, loss: 0, recall: 0 } };
|
|
339
|
+
}
|
|
340
|
+
async exportPatterns() { return []; }
|
|
341
|
+
async importPatterns() { return 0; }
|
|
342
|
+
getStatus() {
|
|
343
|
+
return { enabled: false, initialized: true, patternsCount: 0, executionsRecorded: 0, accuracy: 0 };
|
|
344
|
+
}
|
|
345
|
+
async getMetrics() {
|
|
346
|
+
return {
|
|
347
|
+
totalExecutions: 0, successfulExecutions: 0, failedExecutions: 0,
|
|
348
|
+
patternsStored: 0, recommendationsGiven: 0, recommendationAccuracy: 0,
|
|
349
|
+
averageConfidence: 0, trainingIterations: 0, lastActivity: new Date(),
|
|
350
|
+
};
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
exports.DisabledLearningStrategy = DisabledLearningStrategy;
|
|
354
|
+
/**
|
|
355
|
+
* Factory function for creating learning strategies
|
|
356
|
+
*/
|
|
357
|
+
function createLearningStrategy(type = 'default', config) {
|
|
358
|
+
switch (type) {
|
|
359
|
+
case 'disabled':
|
|
360
|
+
return new DisabledLearningStrategy();
|
|
361
|
+
default:
|
|
362
|
+
return new DefaultLearningStrategy(config);
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
//# sourceMappingURL=DefaultLearningStrategy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultLearningStrategy.js","sourceRoot":"","sources":["../../../src/core/strategies/DefaultLearningStrategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DefaultLifecycleStrategy - Standard agent lifecycle implementation
|
|
3
|
+
*
|
|
4
|
+
* Provides the default initialization, state management, and cleanup behavior.
|
|
5
|
+
* Wraps existing AgentLifecycleManager for backward compatibility.
|
|
6
|
+
*
|
|
7
|
+
* @module core/strategies/DefaultLifecycleStrategy
|
|
8
|
+
* @version 1.0.0
|
|
9
|
+
*/
|
|
10
|
+
import { AgentStatus, PreTaskData, PostTaskData, TaskErrorData } from '../../types';
|
|
11
|
+
import type { AgentLifecycleStrategy, LifecycleConfig, LifecycleEvent, LifecycleMetrics } from './AgentLifecycleStrategy';
|
|
12
|
+
/**
|
|
13
|
+
* DefaultLifecycleStrategy - Standard lifecycle management
|
|
14
|
+
*
|
|
15
|
+
* Uses a state machine for lifecycle transitions:
|
|
16
|
+
* INITIALIZING → IDLE → ACTIVE → IDLE/ERROR → TERMINATED
|
|
17
|
+
*/
|
|
18
|
+
export declare class DefaultLifecycleStrategy implements AgentLifecycleStrategy {
|
|
19
|
+
private status;
|
|
20
|
+
private config?;
|
|
21
|
+
private initTime?;
|
|
22
|
+
private startTime?;
|
|
23
|
+
private stateTransitions;
|
|
24
|
+
private tasksExecuted;
|
|
25
|
+
private lastActivity;
|
|
26
|
+
private lifecycleHandlers;
|
|
27
|
+
private readonly validTransitions;
|
|
28
|
+
/**
|
|
29
|
+
* Initialize the lifecycle strategy
|
|
30
|
+
*/
|
|
31
|
+
initialize(config: LifecycleConfig): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Override this in subclasses to customize initialization
|
|
34
|
+
*/
|
|
35
|
+
protected performInitialization(): Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* Get current agent status
|
|
38
|
+
*/
|
|
39
|
+
getStatus(): AgentStatus;
|
|
40
|
+
/**
|
|
41
|
+
* Transition to a new status with validation
|
|
42
|
+
*/
|
|
43
|
+
transitionTo(newStatus: AgentStatus, reason?: string): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Wait for agent to reach a specific status
|
|
46
|
+
*/
|
|
47
|
+
waitForStatus(targetStatus: AgentStatus, timeout: number): Promise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* Wait for agent to be ready (idle)
|
|
50
|
+
*/
|
|
51
|
+
waitForReady(timeout: number): Promise<void>;
|
|
52
|
+
/**
|
|
53
|
+
* Shutdown the agent
|
|
54
|
+
*/
|
|
55
|
+
shutdown(): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* Override this in subclasses to customize shutdown
|
|
58
|
+
*/
|
|
59
|
+
protected performShutdown(): Promise<void>;
|
|
60
|
+
/**
|
|
61
|
+
* Reset agent state for reuse (for PooledLifecycleStrategy)
|
|
62
|
+
*/
|
|
63
|
+
reset(): Promise<void>;
|
|
64
|
+
/**
|
|
65
|
+
* Called before task execution
|
|
66
|
+
*/
|
|
67
|
+
onPreTask(data: PreTaskData): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Called after successful task execution
|
|
70
|
+
*/
|
|
71
|
+
onPostTask(data: PostTaskData): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* Called when task execution fails
|
|
74
|
+
*/
|
|
75
|
+
onTaskError(data: TaskErrorData): Promise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* Subscribe to lifecycle events
|
|
78
|
+
*/
|
|
79
|
+
onLifecycleChange(handler: (event: LifecycleEvent) => void): void;
|
|
80
|
+
/**
|
|
81
|
+
* Check if agent can accept new tasks
|
|
82
|
+
*/
|
|
83
|
+
canAcceptTask(): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Get lifecycle metrics
|
|
86
|
+
*/
|
|
87
|
+
getMetrics(): LifecycleMetrics;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* PooledLifecycleStrategy - For agent pooling (reusable agents)
|
|
91
|
+
*
|
|
92
|
+
* Optimizes for fast reset and reuse instead of full initialization.
|
|
93
|
+
*/
|
|
94
|
+
export declare class PooledLifecycleStrategy extends DefaultLifecycleStrategy {
|
|
95
|
+
private poolId?;
|
|
96
|
+
private reuseCount;
|
|
97
|
+
/**
|
|
98
|
+
* Faster reset for pooled agents
|
|
99
|
+
*/
|
|
100
|
+
reset(): Promise<void>;
|
|
101
|
+
/**
|
|
102
|
+
* Get pool-specific metrics
|
|
103
|
+
*/
|
|
104
|
+
getPoolMetrics(): LifecycleMetrics & {
|
|
105
|
+
reuseCount: number;
|
|
106
|
+
poolId?: string;
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* DisabledLifecycleStrategy - No-op for testing/benchmarks
|
|
111
|
+
*/
|
|
112
|
+
export declare class DisabledLifecycleStrategy implements AgentLifecycleStrategy {
|
|
113
|
+
private status;
|
|
114
|
+
initialize(): Promise<void>;
|
|
115
|
+
getStatus(): AgentStatus;
|
|
116
|
+
transitionTo(status: AgentStatus): Promise<void>;
|
|
117
|
+
waitForStatus(): Promise<void>;
|
|
118
|
+
waitForReady(): Promise<void>;
|
|
119
|
+
shutdown(): Promise<void>;
|
|
120
|
+
onPreTask(): Promise<void>;
|
|
121
|
+
onPostTask(): Promise<void>;
|
|
122
|
+
onTaskError(): Promise<void>;
|
|
123
|
+
canAcceptTask(): boolean;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Factory function for creating lifecycle strategies
|
|
127
|
+
*/
|
|
128
|
+
export declare function createLifecycleStrategy(type?: 'default' | 'pooled' | 'disabled'): AgentLifecycleStrategy;
|
|
129
|
+
//# sourceMappingURL=DefaultLifecycleStrategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultLifecycleStrategy.d.ts","sourceRoot":"","sources":["../../../src/core/strategies/DefaultLifecycleStrategy.ts"],"names":[],"mappings":"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"}
|