agentic-qe 1.1.0 → 1.2.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/.claude/agents/qe-coverage-analyzer.md +8 -0
- package/.claude/agents/qe-flaky-test-hunter.md +9 -1
- package/.claude/agents/qe-test-generator.md +7 -0
- package/.claude/agents/reasoning/agent.md +816 -0
- package/.claude/agents/reasoning/goal-planner.md +73 -0
- package/.claude/settings.json +21 -20
- package/.claude/skills/README.md +124 -0
- package/.claude/skills/agentdb-advanced/SKILL.md +550 -0
- package/.claude/skills/agentdb-learning/SKILL.md +545 -0
- package/.claude/skills/agentdb-memory-patterns/SKILL.md +339 -0
- package/.claude/skills/agentdb-optimization/SKILL.md +509 -0
- package/.claude/skills/agentdb-vector-search/SKILL.md +339 -0
- package/.claude/skills/agentic-quality-engineering/SKILL.md +604 -0
- package/.claude/skills/api-testing-patterns/SKILL.md +686 -0
- package/.claude/skills/bug-reporting-excellence/SKILL.md +632 -0
- package/.claude/skills/code-review-quality/SKILL.md +683 -0
- package/.claude/skills/consultancy-practices/SKILL.md +540 -0
- package/.claude/skills/context-driven-testing/SKILL.md +466 -0
- package/.claude/skills/exploratory-testing-advanced/SKILL.md +676 -0
- package/.claude/skills/flow-nexus-neural/SKILL.md +738 -0
- package/.claude/skills/flow-nexus-platform/SKILL.md +1157 -0
- package/.claude/skills/flow-nexus-swarm/SKILL.md +610 -0
- package/.claude/skills/github-code-review/SKILL.md +1140 -0
- package/.claude/skills/github-multi-repo/SKILL.md +874 -0
- package/.claude/skills/github-project-management/SKILL.md +1277 -0
- package/.claude/skills/github-release-management/SKILL.md +1081 -0
- package/.claude/skills/github-workflow-automation/SKILL.md +1065 -0
- package/.claude/skills/hive-mind-advanced/SKILL.md +712 -0
- package/.claude/skills/holistic-testing-pact/SKILL.md +225 -0
- package/.claude/skills/hooks-automation/SKILL.md +1201 -0
- package/.claude/skills/pair-programming/SKILL.md +1202 -0
- package/.claude/skills/performance-analysis/SKILL.md +563 -0
- package/.claude/skills/performance-testing/SKILL.md +662 -0
- package/.claude/skills/quality-metrics/SKILL.md +592 -0
- package/.claude/skills/reasoningbank-agentdb/SKILL.md +446 -0
- package/.claude/skills/reasoningbank-intelligence/SKILL.md +201 -0
- package/.claude/skills/refactoring-patterns/SKILL.md +778 -0
- package/.claude/skills/risk-based-testing/SKILL.md +721 -0
- package/.claude/skills/security-testing/SKILL.md +651 -0
- package/.claude/skills/skill-builder/SKILL.md +910 -0
- package/.claude/skills/sparc-methodology/SKILL.md +1115 -0
- package/.claude/skills/stream-chain/SKILL.md +563 -0
- package/.claude/skills/swarm-advanced/SKILL.md +973 -0
- package/.claude/skills/swarm-orchestration/SKILL.md +179 -0
- package/.claude/skills/tdd-london-chicago/SKILL.md +567 -0
- package/.claude/skills/technical-writing/SKILL.md +235 -0
- package/.claude/skills/test-automation-strategy/SKILL.md +842 -0
- package/.claude/skills/verification-quality/SKILL.md +649 -0
- package/.claude/skills/xp-practices/SKILL.md +671 -0
- package/.claude/statusline-command.sh +176 -0
- package/CHANGELOG.md +536 -1
- package/README.md +92 -3
- package/config/improvement-loop.config.ts +323 -0
- package/config/neural-agent.config.ts +197 -0
- package/dist/adapters/MemoryStoreAdapter.d.ts +16 -16
- package/dist/adapters/MemoryStoreAdapter.d.ts.map +1 -1
- package/dist/adapters/MemoryStoreAdapter.js +16 -16
- package/dist/adapters/MemoryStoreAdapter.js.map +1 -1
- package/dist/agents/BaseAgent.d.ts +69 -0
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +382 -1
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.d.ts +13 -2
- package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.js +105 -6
- package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
- package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -1
- package/dist/agents/DeploymentReadinessAgent.js +13 -13
- package/dist/agents/DeploymentReadinessAgent.js.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.d.ts +28 -0
- package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.js +159 -4
- package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
- package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
- package/dist/agents/FleetCommanderAgent.js +2 -2
- package/dist/agents/FleetCommanderAgent.js.map +1 -1
- package/dist/agents/LearningAgent.d.ts +14 -5
- package/dist/agents/LearningAgent.d.ts.map +1 -1
- package/dist/agents/LearningAgent.js +36 -16
- package/dist/agents/LearningAgent.js.map +1 -1
- package/dist/agents/NeuralAgentExtension.d.ts +117 -0
- package/dist/agents/NeuralAgentExtension.d.ts.map +1 -0
- package/dist/agents/NeuralAgentExtension.js +288 -0
- package/dist/agents/NeuralAgentExtension.js.map +1 -0
- package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -1
- package/dist/agents/PerformanceTesterAgent.js +4 -3
- package/dist/agents/PerformanceTesterAgent.js.map +1 -1
- package/dist/agents/ProductionIntelligenceAgent.js +7 -7
- package/dist/agents/ProductionIntelligenceAgent.js.map +1 -1
- package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/QualityAnalyzerAgent.js +2 -2
- package/dist/agents/QualityAnalyzerAgent.js.map +1 -1
- package/dist/agents/QualityGateAgent.js +5 -5
- package/dist/agents/QualityGateAgent.js.map +1 -1
- package/dist/agents/RegressionRiskAnalyzerAgent.js +7 -7
- package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -1
- package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -1
- package/dist/agents/RequirementsValidatorAgent.js +1 -1
- package/dist/agents/RequirementsValidatorAgent.js.map +1 -1
- package/dist/agents/SecurityScannerAgent.js +6 -6
- package/dist/agents/SecurityScannerAgent.js.map +1 -1
- package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
- package/dist/agents/TestExecutorAgent.js +1 -3
- package/dist/agents/TestExecutorAgent.js.map +1 -1
- package/dist/agents/TestGeneratorAgent.d.ts +15 -4
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
- package/dist/agents/TestGeneratorAgent.js +165 -43
- package/dist/agents/TestGeneratorAgent.js.map +1 -1
- package/dist/agents/mixins/NeuralCapableMixin.d.ts +130 -0
- package/dist/agents/mixins/NeuralCapableMixin.d.ts.map +1 -0
- package/dist/agents/mixins/NeuralCapableMixin.js +358 -0
- package/dist/agents/mixins/NeuralCapableMixin.js.map +1 -0
- package/dist/agents/mixins/QUICCapableMixin.d.ts +34 -0
- package/dist/agents/mixins/QUICCapableMixin.d.ts.map +1 -0
- package/dist/agents/mixins/QUICCapableMixin.js +346 -0
- package/dist/agents/mixins/QUICCapableMixin.js.map +1 -0
- package/dist/cli/commands/agent/index.d.ts +5 -0
- package/dist/cli/commands/agent/index.d.ts.map +1 -1
- package/dist/cli/commands/agent/index.js +11 -6
- package/dist/cli/commands/agent/index.js.map +1 -1
- package/dist/cli/commands/agent/kill.d.ts +13 -0
- package/dist/cli/commands/agent/kill.d.ts.map +1 -0
- package/dist/cli/commands/agent/kill.js +65 -0
- package/dist/cli/commands/agent/kill.js.map +1 -0
- package/dist/cli/commands/agent/list.d.ts +19 -0
- package/dist/cli/commands/agent/list.d.ts.map +1 -0
- package/dist/cli/commands/agent/list.js +92 -0
- package/dist/cli/commands/agent/list.js.map +1 -0
- package/dist/cli/commands/agent/logs.d.ts +14 -0
- package/dist/cli/commands/agent/logs.d.ts.map +1 -0
- package/dist/cli/commands/agent/logs.js +77 -0
- package/dist/cli/commands/agent/logs.js.map +1 -0
- package/dist/cli/commands/agent/metrics.d.ts +21 -0
- package/dist/cli/commands/agent/metrics.d.ts.map +1 -0
- package/dist/cli/commands/agent/metrics.js +87 -0
- package/dist/cli/commands/agent/metrics.js.map +1 -0
- package/dist/cli/commands/agent/spawn.d.ts +28 -0
- package/dist/cli/commands/agent/spawn.d.ts.map +1 -0
- package/dist/cli/commands/agent/spawn.js +83 -0
- package/dist/cli/commands/agent/spawn.js.map +1 -0
- package/dist/cli/commands/init.d.ts +24 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +475 -7
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/skills/index.d.ts +51 -0
- package/dist/cli/commands/skills/index.d.ts.map +1 -0
- package/dist/cli/commands/skills/index.js +364 -0
- package/dist/cli/commands/skills/index.js.map +1 -0
- package/dist/cli/index.js +92 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/core/EventBus.d.ts +38 -0
- package/dist/core/EventBus.d.ts.map +1 -1
- package/dist/core/EventBus.js +176 -31
- package/dist/core/EventBus.js.map +1 -1
- package/dist/core/FleetManager.d.ts +35 -1
- package/dist/core/FleetManager.d.ts.map +1 -1
- package/dist/core/FleetManager.js +121 -45
- package/dist/core/FleetManager.js.map +1 -1
- package/dist/core/MemoryManager.d.ts +19 -1
- package/dist/core/MemoryManager.d.ts.map +1 -1
- package/dist/core/MemoryManager.js +25 -1
- package/dist/core/MemoryManager.js.map +1 -1
- package/dist/core/embeddings/EmbeddingCache.d.ts +134 -0
- package/dist/core/embeddings/EmbeddingCache.d.ts.map +1 -0
- package/dist/core/embeddings/EmbeddingCache.js +239 -0
- package/dist/core/embeddings/EmbeddingCache.js.map +1 -0
- package/dist/core/embeddings/EmbeddingGenerator.d.ts +224 -0
- package/dist/core/embeddings/EmbeddingGenerator.d.ts.map +1 -0
- package/dist/core/embeddings/EmbeddingGenerator.js +459 -0
- package/dist/core/embeddings/EmbeddingGenerator.js.map +1 -0
- package/dist/core/embeddings/index.d.ts +15 -0
- package/dist/core/embeddings/index.d.ts.map +1 -0
- package/dist/core/embeddings/index.js +22 -0
- package/dist/core/embeddings/index.js.map +1 -0
- package/dist/core/memory/AgentDBIntegration.d.ts +35 -0
- package/dist/core/memory/AgentDBIntegration.d.ts.map +1 -0
- package/dist/core/memory/AgentDBIntegration.js +75 -0
- package/dist/core/memory/AgentDBIntegration.js.map +1 -0
- package/dist/core/memory/AgentDBManager.d.ts +200 -0
- package/dist/core/memory/AgentDBManager.d.ts.map +1 -0
- package/dist/core/memory/AgentDBManager.js +263 -0
- package/dist/core/memory/AgentDBManager.js.map +1 -0
- package/dist/core/memory/AgentDBService.d.ts +160 -0
- package/dist/core/memory/AgentDBService.d.ts.map +1 -0
- package/dist/core/memory/AgentDBService.js +450 -0
- package/dist/core/memory/AgentDBService.js.map +1 -0
- package/dist/core/memory/RealAgentDBAdapter.d.ts +51 -0
- package/dist/core/memory/RealAgentDBAdapter.d.ts.map +1 -0
- package/dist/core/memory/RealAgentDBAdapter.js +230 -0
- package/dist/core/memory/RealAgentDBAdapter.js.map +1 -0
- package/dist/core/memory/ReasoningBankAdapter.d.ts +58 -0
- package/dist/core/memory/ReasoningBankAdapter.d.ts.map +1 -0
- package/dist/core/memory/ReasoningBankAdapter.js +80 -0
- package/dist/core/memory/ReasoningBankAdapter.js.map +1 -0
- package/dist/core/memory/SwarmMemoryManager.d.ts +75 -3
- package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
- package/dist/core/memory/SwarmMemoryManager.js +236 -52
- package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
- package/dist/core/memory/index.d.ts +4 -0
- package/dist/core/memory/index.d.ts.map +1 -1
- package/dist/core/memory/index.js +9 -1
- package/dist/core/memory/index.js.map +1 -1
- package/dist/core/neural/NeuralTrainer.d.ts +137 -0
- package/dist/core/neural/NeuralTrainer.d.ts.map +1 -0
- package/dist/core/neural/NeuralTrainer.js +543 -0
- package/dist/core/neural/NeuralTrainer.js.map +1 -0
- package/dist/core/neural/index.d.ts +8 -0
- package/dist/core/neural/index.d.ts.map +1 -0
- package/dist/core/neural/index.js +24 -0
- package/dist/core/neural/index.js.map +1 -0
- package/dist/core/neural/types.d.ts +216 -0
- package/dist/core/neural/types.d.ts.map +1 -0
- package/dist/core/neural/types.js +8 -0
- package/dist/core/neural/types.js.map +1 -0
- package/dist/core/security/CertificateValidator.d.ts +130 -0
- package/dist/core/security/CertificateValidator.d.ts.map +1 -0
- package/dist/core/security/CertificateValidator.js +376 -0
- package/dist/core/security/CertificateValidator.js.map +1 -0
- package/dist/core/transport/QUICTransport.d.ts +62 -0
- package/dist/core/transport/QUICTransport.d.ts.map +1 -0
- package/dist/core/transport/QUICTransport.js +381 -0
- package/dist/core/transport/QUICTransport.js.map +1 -0
- package/dist/core/transport/SecureQUICTransport.d.ts +71 -0
- package/dist/core/transport/SecureQUICTransport.d.ts.map +1 -0
- package/dist/core/transport/SecureQUICTransport.js +253 -0
- package/dist/core/transport/SecureQUICTransport.js.map +1 -0
- package/dist/learning/AdvancedFeatureExtractor.d.ts +123 -0
- package/dist/learning/AdvancedFeatureExtractor.d.ts.map +1 -0
- package/dist/learning/AdvancedFeatureExtractor.js +423 -0
- package/dist/learning/AdvancedFeatureExtractor.js.map +1 -0
- package/dist/learning/FlakyPredictionModel.d.ts +11 -1
- package/dist/learning/FlakyPredictionModel.d.ts.map +1 -1
- package/dist/learning/FlakyPredictionModel.js +82 -35
- package/dist/learning/FlakyPredictionModel.js.map +1 -1
- package/dist/learning/FlakyTestDetector.d.ts +9 -0
- package/dist/learning/FlakyTestDetector.d.ts.map +1 -1
- package/dist/learning/FlakyTestDetector.js +28 -6
- package/dist/learning/FlakyTestDetector.js.map +1 -1
- package/dist/learning/ImprovementLoop.d.ts +16 -2
- package/dist/learning/ImprovementLoop.d.ts.map +1 -1
- package/dist/learning/ImprovementLoop.js +67 -8
- package/dist/learning/ImprovementLoop.js.map +1 -1
- package/dist/learning/ImprovementWorker.d.ts +83 -0
- package/dist/learning/ImprovementWorker.d.ts.map +1 -0
- package/dist/learning/ImprovementWorker.js +164 -0
- package/dist/learning/ImprovementWorker.js.map +1 -0
- package/dist/learning/NeuralPatternMatcher.d.ts +184 -0
- package/dist/learning/NeuralPatternMatcher.d.ts.map +1 -0
- package/dist/learning/NeuralPatternMatcher.js +702 -0
- package/dist/learning/NeuralPatternMatcher.js.map +1 -0
- package/dist/learning/NeuralTrainer.d.ts +209 -0
- package/dist/learning/NeuralTrainer.d.ts.map +1 -0
- package/dist/learning/NeuralTrainer.js +478 -0
- package/dist/learning/NeuralTrainer.js.map +1 -0
- package/dist/learning/index.d.ts +13 -7
- package/dist/learning/index.d.ts.map +1 -1
- package/dist/learning/index.js +27 -11
- package/dist/learning/index.js.map +1 -1
- package/dist/learning/types.d.ts +1 -0
- package/dist/learning/types.d.ts.map +1 -1
- package/dist/learning/types.js +16 -0
- package/dist/learning/types.js.map +1 -1
- package/dist/mcp/MCPToolRegistry.d.ts +34 -0
- package/dist/mcp/MCPToolRegistry.d.ts.map +1 -0
- package/dist/mcp/MCPToolRegistry.js +48 -0
- package/dist/mcp/MCPToolRegistry.js.map +1 -0
- package/dist/mcp/server.d.ts +4 -4
- package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
- package/dist/mcp/services/AgentRegistry.js +7 -1
- package/dist/mcp/services/AgentRegistry.js.map +1 -1
- package/dist/transport/QUICTransport.d.ts +340 -0
- package/dist/transport/QUICTransport.d.ts.map +1 -0
- package/dist/transport/QUICTransport.js +814 -0
- package/dist/transport/QUICTransport.js.map +1 -0
- package/dist/transport/UDPTransport.d.ts +348 -0
- package/dist/transport/UDPTransport.d.ts.map +1 -0
- package/dist/transport/UDPTransport.js +820 -0
- package/dist/transport/UDPTransport.js.map +1 -0
- package/dist/types/errors.d.ts +1 -1
- package/dist/types/index.d.ts +37 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/quic.d.ts +339 -0
- package/dist/types/quic.d.ts.map +1 -0
- package/dist/types/quic.js +48 -0
- package/dist/types/quic.js.map +1 -0
- package/dist/utils/Config.js +1 -1
- package/dist/utils/Config.js.map +1 -1
- package/dist/utils/Database.d.ts +14 -0
- package/dist/utils/Database.d.ts.map +1 -1
- package/dist/utils/Database.js +51 -4
- package/dist/utils/Database.js.map +1 -1
- package/dist/utils/Logger.d.ts.map +1 -1
- package/dist/utils/Logger.js +111 -26
- package/dist/utils/Logger.js.map +1 -1
- package/package.json +30 -7
|
@@ -22,12 +22,12 @@ class LearningAgent extends BaseAgent_1.BaseAgent {
|
|
|
22
22
|
// Note: BaseAgent uses MemoryStore interface, but Phase 2 learning components
|
|
23
23
|
// expect SwarmMemoryManager. This works because BaseAgent's memoryStore
|
|
24
24
|
// is actually a SwarmMemoryManager instance at runtime.
|
|
25
|
-
this.
|
|
25
|
+
this.localLearningEngine = new LearningEngine_1.LearningEngine(this.agentId.id, this.memoryStore, {
|
|
26
26
|
enabled: this.learningEnabled,
|
|
27
27
|
learningRate: config.learningRate
|
|
28
28
|
});
|
|
29
|
-
this.
|
|
30
|
-
this.improvementLoop = new ImprovementLoop_1.ImprovementLoop(this.agentId.id, this.memoryStore, this.
|
|
29
|
+
this.localPerformanceTracker = new PerformanceTracker_1.PerformanceTracker(this.agentId.id, this.memoryStore);
|
|
30
|
+
this.improvementLoop = new ImprovementLoop_1.ImprovementLoop(this.agentId.id, this.memoryStore, this.localLearningEngine, this.localPerformanceTracker);
|
|
31
31
|
}
|
|
32
32
|
/**
|
|
33
33
|
* Initialize agent with learning components
|
|
@@ -37,8 +37,8 @@ class LearningAgent extends BaseAgent_1.BaseAgent {
|
|
|
37
37
|
return;
|
|
38
38
|
}
|
|
39
39
|
// Initialize learning components
|
|
40
|
-
await this.
|
|
41
|
-
await this.
|
|
40
|
+
await this.localLearningEngine.initialize();
|
|
41
|
+
await this.localPerformanceTracker.initialize();
|
|
42
42
|
await this.improvementLoop.initialize();
|
|
43
43
|
// Start improvement loop (runs every hour by default)
|
|
44
44
|
await this.improvementLoop.start();
|
|
@@ -58,7 +58,7 @@ class LearningAgent extends BaseAgent_1.BaseAgent {
|
|
|
58
58
|
}
|
|
59
59
|
try {
|
|
60
60
|
// Learn from task execution
|
|
61
|
-
const learning = await this.
|
|
61
|
+
const learning = await this.localLearningEngine.learnFromExecution(data.assignment.task, data.result, await this.getUserFeedback(data.assignment.id));
|
|
62
62
|
// Record performance snapshot
|
|
63
63
|
await this.recordPerformance(data);
|
|
64
64
|
// Apply improvements if learned
|
|
@@ -84,7 +84,7 @@ class LearningAgent extends BaseAgent_1.BaseAgent {
|
|
|
84
84
|
async recordPerformance(data) {
|
|
85
85
|
const executionTime = data.result.executionTime || 0;
|
|
86
86
|
const success = data.result.success !== false;
|
|
87
|
-
await this.
|
|
87
|
+
await this.localPerformanceTracker.recordSnapshot({
|
|
88
88
|
metrics: {
|
|
89
89
|
tasksCompleted: this.performanceMetrics.tasksCompleted,
|
|
90
90
|
successRate: success ? 1.0 : 0.0,
|
|
@@ -114,20 +114,40 @@ class LearningAgent extends BaseAgent_1.BaseAgent {
|
|
|
114
114
|
/**
|
|
115
115
|
* Get user feedback (stub - implement based on your system)
|
|
116
116
|
*/
|
|
117
|
-
async getUserFeedback(
|
|
117
|
+
async getUserFeedback(_taskId) {
|
|
118
118
|
// In a real system, this would fetch actual user feedback
|
|
119
119
|
// For now, return undefined to use only system-calculated rewards
|
|
120
120
|
return undefined;
|
|
121
121
|
}
|
|
122
122
|
/**
|
|
123
|
-
* Get learning status
|
|
123
|
+
* Get learning status - override from BaseAgent
|
|
124
124
|
*/
|
|
125
|
-
|
|
126
|
-
|
|
125
|
+
getLearningStatus() {
|
|
126
|
+
// Call parent implementation to maintain consistency
|
|
127
|
+
const baseStatus = super.getLearningStatus();
|
|
128
|
+
if (baseStatus) {
|
|
129
|
+
return baseStatus;
|
|
130
|
+
}
|
|
131
|
+
// Fallback to local learning engine
|
|
132
|
+
if (!this.localLearningEngine) {
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
135
|
+
return {
|
|
136
|
+
enabled: this.learningEnabled,
|
|
137
|
+
totalExperiences: this.localLearningEngine.getTotalExperiences(),
|
|
138
|
+
explorationRate: this.localLearningEngine.getExplorationRate(),
|
|
139
|
+
patterns: this.localLearningEngine.getPatterns().length
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Get detailed performance report (LearningAgent-specific)
|
|
144
|
+
*/
|
|
145
|
+
async getDetailedLearningStatus() {
|
|
146
|
+
const improvement = await this.localPerformanceTracker.calculateImprovement();
|
|
127
147
|
return {
|
|
128
148
|
enabled: this.learningEnabled,
|
|
129
|
-
totalExperiences: this.
|
|
130
|
-
patterns: this.
|
|
149
|
+
totalExperiences: this.localLearningEngine.getTotalExperiences(),
|
|
150
|
+
patterns: this.localLearningEngine.getPatterns().length,
|
|
131
151
|
improvement,
|
|
132
152
|
activeTests: this.improvementLoop.getActiveTests().length
|
|
133
153
|
};
|
|
@@ -136,14 +156,14 @@ class LearningAgent extends BaseAgent_1.BaseAgent {
|
|
|
136
156
|
* Get performance report
|
|
137
157
|
*/
|
|
138
158
|
async getPerformanceReport() {
|
|
139
|
-
return await this.
|
|
159
|
+
return await this.localPerformanceTracker.generateReport();
|
|
140
160
|
}
|
|
141
161
|
/**
|
|
142
162
|
* Enable/disable learning
|
|
143
163
|
*/
|
|
144
164
|
setLearningEnabled(enabled) {
|
|
145
165
|
this.learningEnabled = enabled;
|
|
146
|
-
this.
|
|
166
|
+
this.localLearningEngine.setEnabled(enabled);
|
|
147
167
|
}
|
|
148
168
|
/**
|
|
149
169
|
* Create A/B test for strategy comparison
|
|
@@ -154,7 +174,7 @@ class LearningAgent extends BaseAgent_1.BaseAgent {
|
|
|
154
174
|
// ============================================================================
|
|
155
175
|
// Abstract Methods Implementation
|
|
156
176
|
// ============================================================================
|
|
157
|
-
async performTask(
|
|
177
|
+
async performTask(_task) {
|
|
158
178
|
// Default implementation - override in subclasses
|
|
159
179
|
return {
|
|
160
180
|
success: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LearningAgent.js","sourceRoot":"","sources":["../../src/agents/LearningAgent.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAAyD;AACzD,+DAA4D;AAC5D,uEAAoE;AACpE,iEAA8D;AAa9D;;GAEG;AACH,MAAa,aAAc,SAAQ,qBAAS;IAM1C,YAAY,MAA2B;QACrC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,KAAK,KAAK,CAAC,CAAC,mBAAmB;QAE5E,iCAAiC;QACjC,8EAA8E;QAC9E,wEAAwE;QACxE,wDAAwD;QACxD,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"LearningAgent.js","sourceRoot":"","sources":["../../src/agents/LearningAgent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Neural Agent Extension
|
|
3
|
+
*
|
|
4
|
+
* Provides neural training capabilities to agents using AgentDB's 9 RL algorithms.
|
|
5
|
+
* This is a mixin/extension that can be applied to any BaseAgent.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* ```typescript
|
|
9
|
+
* class MyAgent extends BaseAgent {
|
|
10
|
+
* private neuralExt: NeuralAgentExtension;
|
|
11
|
+
*
|
|
12
|
+
* constructor(config) {
|
|
13
|
+
* super(config);
|
|
14
|
+
* this.neuralExt = new NeuralAgentExtension(this, config.neuralConfig);
|
|
15
|
+
* }
|
|
16
|
+
*
|
|
17
|
+
* protected async onPostTask(data: PostTaskData) {
|
|
18
|
+
* await super.onPostTask(data);
|
|
19
|
+
* await this.neuralExt.collectExperience(data);
|
|
20
|
+
* }
|
|
21
|
+
* }
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
import { SwarmMemoryManager } from '../core/memory/SwarmMemoryManager';
|
|
25
|
+
import { AgentDBManager } from '../core/memory/AgentDBManager';
|
|
26
|
+
import { NeuralTrainer } from '../core/neural/NeuralTrainer';
|
|
27
|
+
import { NeuralConfig, State, ExperienceCollectionConfig, RLAlgorithm, PredictionResult } from '../core/neural/types';
|
|
28
|
+
import { PostTaskData, TaskErrorData } from '../types';
|
|
29
|
+
/**
|
|
30
|
+
* Neural Agent Extension
|
|
31
|
+
*
|
|
32
|
+
* Adds neural training capabilities to agents:
|
|
33
|
+
* - Automatic experience collection from task execution
|
|
34
|
+
* - Integration with 9 RL algorithms via AgentDB
|
|
35
|
+
* - Action prediction using trained models
|
|
36
|
+
* - Automatic training when buffer is full
|
|
37
|
+
*/
|
|
38
|
+
export declare class NeuralAgentExtension {
|
|
39
|
+
private readonly logger;
|
|
40
|
+
private readonly agentId;
|
|
41
|
+
private readonly memoryStore;
|
|
42
|
+
private readonly agentDB;
|
|
43
|
+
private readonly neuralTrainer;
|
|
44
|
+
private readonly collectionConfig;
|
|
45
|
+
private taskCounter;
|
|
46
|
+
private stateSnapshot?;
|
|
47
|
+
constructor(agentId: string, memoryStore: SwarmMemoryManager, agentDB: AgentDBManager, neuralConfig?: Partial<NeuralConfig>, collectionConfig?: Partial<ExperienceCollectionConfig>);
|
|
48
|
+
/**
|
|
49
|
+
* Initialize the extension
|
|
50
|
+
*/
|
|
51
|
+
initialize(): Promise<void>;
|
|
52
|
+
/**
|
|
53
|
+
* Snapshot current state before task execution (call from onPreTask)
|
|
54
|
+
*/
|
|
55
|
+
snapshotState(taskData: any): void;
|
|
56
|
+
/**
|
|
57
|
+
* Collect experience after task execution (call from onPostTask)
|
|
58
|
+
*/
|
|
59
|
+
collectExperience(data: PostTaskData): Promise<void>;
|
|
60
|
+
/**
|
|
61
|
+
* Collect negative experience from task errors (call from onTaskError)
|
|
62
|
+
*/
|
|
63
|
+
collectErrorExperience(data: TaskErrorData): Promise<void>;
|
|
64
|
+
/**
|
|
65
|
+
* Predict best action for current state
|
|
66
|
+
*/
|
|
67
|
+
predictAction(state: State, algorithm?: RLAlgorithm): Promise<PredictionResult>;
|
|
68
|
+
/**
|
|
69
|
+
* Train model manually
|
|
70
|
+
*/
|
|
71
|
+
trainModel(algorithm?: RLAlgorithm): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* Save model to disk
|
|
74
|
+
*/
|
|
75
|
+
saveModel(path?: string): Promise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* Load model from disk
|
|
78
|
+
*/
|
|
79
|
+
loadModel(path: string): Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* Switch RL algorithm
|
|
82
|
+
*/
|
|
83
|
+
switchAlgorithm(algorithm: RLAlgorithm): Promise<void>;
|
|
84
|
+
/**
|
|
85
|
+
* Get trainer status
|
|
86
|
+
*/
|
|
87
|
+
getStatus(): {
|
|
88
|
+
enabled: boolean;
|
|
89
|
+
algorithm: RLAlgorithm;
|
|
90
|
+
episodeCount: number;
|
|
91
|
+
experienceCount: number;
|
|
92
|
+
isTraining: boolean;
|
|
93
|
+
metrics: Map<string, import("../core/neural/types").TrainingMetrics[]>;
|
|
94
|
+
checkpoints: number;
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Get neural trainer instance (for advanced usage)
|
|
98
|
+
*/
|
|
99
|
+
getTrainer(): NeuralTrainer;
|
|
100
|
+
/**
|
|
101
|
+
* Extract state from task data
|
|
102
|
+
*/
|
|
103
|
+
private extractState;
|
|
104
|
+
/**
|
|
105
|
+
* Extract action from result
|
|
106
|
+
*/
|
|
107
|
+
private extractAction;
|
|
108
|
+
/**
|
|
109
|
+
* Calculate reward from task result
|
|
110
|
+
*/
|
|
111
|
+
private calculateReward;
|
|
112
|
+
/**
|
|
113
|
+
* Estimate task complexity
|
|
114
|
+
*/
|
|
115
|
+
private estimateComplexity;
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=NeuralAgentExtension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NeuralAgentExtension.d.ts","sourceRoot":"","sources":["../../src/agents/NeuralAgentExtension.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EACL,YAAY,EAEZ,KAAK,EAEL,0BAA0B,EAC1B,WAAW,EACX,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAavD;;;;;;;;GAQG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6B;IAC9D,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,aAAa,CAAC,CAAQ;gBAG5B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,kBAAkB,EAC/B,OAAO,EAAE,cAAc,EACvB,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,EACpC,gBAAgB,CAAC,EAAE,OAAO,CAAC,0BAA0B,CAAC;IAiBxD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI;IAMlC;;OAEG;IACG,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAyD1D;;OAEG;IACG,sBAAsB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BhE;;OAEG;IACG,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIrF;;OAEG;IACG,UAAU,CAAC,SAAS,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAYxD;;OAEG;IACG,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7C;;OAEG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D;;OAEG;IACH,SAAS;;;;;;;;;IAIT;;OAEG;IACH,UAAU,IAAI,aAAa;IAQ3B;;OAEG;IACH,OAAO,CAAC,YAAY;IAgBpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAmCvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAiB3B"}
|
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Neural Agent Extension
|
|
4
|
+
*
|
|
5
|
+
* Provides neural training capabilities to agents using AgentDB's 9 RL algorithms.
|
|
6
|
+
* This is a mixin/extension that can be applied to any BaseAgent.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* ```typescript
|
|
10
|
+
* class MyAgent extends BaseAgent {
|
|
11
|
+
* private neuralExt: NeuralAgentExtension;
|
|
12
|
+
*
|
|
13
|
+
* constructor(config) {
|
|
14
|
+
* super(config);
|
|
15
|
+
* this.neuralExt = new NeuralAgentExtension(this, config.neuralConfig);
|
|
16
|
+
* }
|
|
17
|
+
*
|
|
18
|
+
* protected async onPostTask(data: PostTaskData) {
|
|
19
|
+
* await super.onPostTask(data);
|
|
20
|
+
* await this.neuralExt.collectExperience(data);
|
|
21
|
+
* }
|
|
22
|
+
* }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.NeuralAgentExtension = void 0;
|
|
27
|
+
const Logger_1 = require("../utils/Logger");
|
|
28
|
+
const NeuralTrainer_1 = require("../core/neural/NeuralTrainer");
|
|
29
|
+
/**
|
|
30
|
+
* Default experience collection configuration
|
|
31
|
+
*/
|
|
32
|
+
const DEFAULT_COLLECTION_CONFIG = {
|
|
33
|
+
enabled: true,
|
|
34
|
+
collectionInterval: 1, // Collect every task
|
|
35
|
+
minReward: undefined, // No minimum
|
|
36
|
+
maxBuffer: 1000,
|
|
37
|
+
autoTrain: true
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Neural Agent Extension
|
|
41
|
+
*
|
|
42
|
+
* Adds neural training capabilities to agents:
|
|
43
|
+
* - Automatic experience collection from task execution
|
|
44
|
+
* - Integration with 9 RL algorithms via AgentDB
|
|
45
|
+
* - Action prediction using trained models
|
|
46
|
+
* - Automatic training when buffer is full
|
|
47
|
+
*/
|
|
48
|
+
class NeuralAgentExtension {
|
|
49
|
+
constructor(agentId, memoryStore, agentDB, neuralConfig, collectionConfig) {
|
|
50
|
+
this.taskCounter = 0;
|
|
51
|
+
this.logger = Logger_1.Logger.getInstance();
|
|
52
|
+
this.agentId = agentId;
|
|
53
|
+
this.memoryStore = memoryStore;
|
|
54
|
+
this.agentDB = agentDB;
|
|
55
|
+
this.collectionConfig = { ...DEFAULT_COLLECTION_CONFIG, ...collectionConfig };
|
|
56
|
+
// Initialize neural trainer
|
|
57
|
+
this.neuralTrainer = new NeuralTrainer_1.NeuralTrainer(agentId, memoryStore, agentDB, neuralConfig);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Initialize the extension
|
|
61
|
+
*/
|
|
62
|
+
async initialize() {
|
|
63
|
+
await this.neuralTrainer.initialize();
|
|
64
|
+
this.logger.info(`NeuralAgentExtension initialized for agent ${this.agentId}`);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Snapshot current state before task execution (call from onPreTask)
|
|
68
|
+
*/
|
|
69
|
+
snapshotState(taskData) {
|
|
70
|
+
if (!this.collectionConfig.enabled)
|
|
71
|
+
return;
|
|
72
|
+
this.stateSnapshot = this.extractState(taskData);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Collect experience after task execution (call from onPostTask)
|
|
76
|
+
*/
|
|
77
|
+
async collectExperience(data) {
|
|
78
|
+
if (!this.collectionConfig.enabled)
|
|
79
|
+
return;
|
|
80
|
+
this.taskCounter++;
|
|
81
|
+
// Check collection interval
|
|
82
|
+
if (this.taskCounter % this.collectionConfig.collectionInterval !== 0) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
try {
|
|
86
|
+
// Calculate reward from task result
|
|
87
|
+
const reward = this.calculateReward(data.result);
|
|
88
|
+
// Check minimum reward threshold
|
|
89
|
+
if (this.collectionConfig.minReward !== undefined && reward < this.collectionConfig.minReward) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
// Extract action from result
|
|
93
|
+
const action = this.extractAction(data.result);
|
|
94
|
+
// Extract next state
|
|
95
|
+
const nextState = this.extractState({
|
|
96
|
+
task: data.assignment.task,
|
|
97
|
+
result: data.result
|
|
98
|
+
});
|
|
99
|
+
// Create experience
|
|
100
|
+
const experience = {
|
|
101
|
+
id: `exp-${this.agentId}-${Date.now()}`,
|
|
102
|
+
state: this.stateSnapshot || nextState, // Use snapshot if available
|
|
103
|
+
action,
|
|
104
|
+
reward,
|
|
105
|
+
nextState,
|
|
106
|
+
done: data.result.success || false,
|
|
107
|
+
timestamp: new Date()
|
|
108
|
+
};
|
|
109
|
+
// Add to trainer's buffer
|
|
110
|
+
await this.neuralTrainer.train([experience]);
|
|
111
|
+
// Auto-train if buffer is full
|
|
112
|
+
if (this.collectionConfig.autoTrain) {
|
|
113
|
+
const status = this.neuralTrainer.getStatus();
|
|
114
|
+
if (status.experienceCount >= this.collectionConfig.maxBuffer) {
|
|
115
|
+
this.logger.info(`Experience buffer full (${status.experienceCount}), triggering training`);
|
|
116
|
+
await this.trainModel();
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
this.logger.debug(`Collected experience: reward=${reward.toFixed(2)}, action=${action.type}`);
|
|
120
|
+
}
|
|
121
|
+
catch (error) {
|
|
122
|
+
this.logger.error(`Failed to collect experience: ${error.message}`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Collect negative experience from task errors (call from onTaskError)
|
|
127
|
+
*/
|
|
128
|
+
async collectErrorExperience(data) {
|
|
129
|
+
if (!this.collectionConfig.enabled)
|
|
130
|
+
return;
|
|
131
|
+
try {
|
|
132
|
+
// Create negative experience with penalty reward
|
|
133
|
+
const experience = {
|
|
134
|
+
id: `error-exp-${this.agentId}-${Date.now()}`,
|
|
135
|
+
state: this.stateSnapshot || this.extractState({ task: data.assignment.task }),
|
|
136
|
+
action: {
|
|
137
|
+
type: 'error',
|
|
138
|
+
parameters: {
|
|
139
|
+
errorType: data.error.name,
|
|
140
|
+
errorMessage: data.error.message
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
reward: -1.0, // Negative reward for errors
|
|
144
|
+
nextState: this.stateSnapshot || this.extractState({ task: data.assignment.task }),
|
|
145
|
+
done: true,
|
|
146
|
+
timestamp: new Date()
|
|
147
|
+
};
|
|
148
|
+
await this.neuralTrainer.train([experience]);
|
|
149
|
+
this.logger.debug(`Collected error experience with penalty reward`);
|
|
150
|
+
}
|
|
151
|
+
catch (error) {
|
|
152
|
+
this.logger.error(`Failed to collect error experience: ${error.message}`);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Predict best action for current state
|
|
157
|
+
*/
|
|
158
|
+
async predictAction(state, algorithm) {
|
|
159
|
+
return await this.neuralTrainer.predictAction(state, algorithm);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Train model manually
|
|
163
|
+
*/
|
|
164
|
+
async trainModel(algorithm) {
|
|
165
|
+
const experiences = this.neuralTrainer.getExperiences();
|
|
166
|
+
if (experiences.length === 0) {
|
|
167
|
+
this.logger.warn('No experiences to train on');
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
await this.neuralTrainer.train(experiences, algorithm);
|
|
171
|
+
this.neuralTrainer.clearExperiences(); // Clear after training
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Save model to disk
|
|
175
|
+
*/
|
|
176
|
+
async saveModel(path) {
|
|
177
|
+
const savePath = path || `${process.cwd()}/.agentic-qe/data/neural/models`;
|
|
178
|
+
await this.neuralTrainer.saveModel(`${this.agentId}-model`, savePath);
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Load model from disk
|
|
182
|
+
*/
|
|
183
|
+
async loadModel(path) {
|
|
184
|
+
await this.neuralTrainer.loadModel(path);
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Switch RL algorithm
|
|
188
|
+
*/
|
|
189
|
+
async switchAlgorithm(algorithm) {
|
|
190
|
+
await this.neuralTrainer.switchAlgorithm(algorithm);
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Get trainer status
|
|
194
|
+
*/
|
|
195
|
+
getStatus() {
|
|
196
|
+
return this.neuralTrainer.getStatus();
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Get neural trainer instance (for advanced usage)
|
|
200
|
+
*/
|
|
201
|
+
getTrainer() {
|
|
202
|
+
return this.neuralTrainer;
|
|
203
|
+
}
|
|
204
|
+
// ============================================================================
|
|
205
|
+
// Private Methods
|
|
206
|
+
// ============================================================================
|
|
207
|
+
/**
|
|
208
|
+
* Extract state from task data
|
|
209
|
+
*/
|
|
210
|
+
extractState(data) {
|
|
211
|
+
const task = data.task || {};
|
|
212
|
+
const result = data.result || {};
|
|
213
|
+
return {
|
|
214
|
+
taskComplexity: this.estimateComplexity(task),
|
|
215
|
+
capabilities: task.requirements?.capabilities || [],
|
|
216
|
+
contextFeatures: task.context || {},
|
|
217
|
+
resourceAvailability: result.resourceUsage ? (1 - result.resourceUsage) : 0.8,
|
|
218
|
+
previousAttempts: task.previousAttempts || 0,
|
|
219
|
+
// Add custom features
|
|
220
|
+
taskType: task.type,
|
|
221
|
+
timestamp: Date.now()
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Extract action from result
|
|
226
|
+
*/
|
|
227
|
+
extractAction(result) {
|
|
228
|
+
return {
|
|
229
|
+
type: result.strategy || result.actionType || 'default',
|
|
230
|
+
parameters: {
|
|
231
|
+
toolsUsed: result.toolsUsed || [],
|
|
232
|
+
parallelization: result.parallelization || 0.5,
|
|
233
|
+
retryPolicy: result.retryPolicy || 'exponential',
|
|
234
|
+
resourceAllocation: result.resourceAllocation || 0.5,
|
|
235
|
+
...result.actionParameters
|
|
236
|
+
},
|
|
237
|
+
qValue: result.qValue
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* Calculate reward from task result
|
|
242
|
+
*/
|
|
243
|
+
calculateReward(result) {
|
|
244
|
+
let reward = 0;
|
|
245
|
+
// Success/failure (primary component)
|
|
246
|
+
reward += result.success ? 1.0 : -1.0;
|
|
247
|
+
// Execution time bonus (faster is better)
|
|
248
|
+
if (result.executionTime) {
|
|
249
|
+
const timeFactor = Math.max(0, 1 - result.executionTime / 30000); // 30 sec baseline
|
|
250
|
+
reward += timeFactor * 0.5;
|
|
251
|
+
}
|
|
252
|
+
// Quality metrics bonus
|
|
253
|
+
if (result.coverage) {
|
|
254
|
+
reward += (result.coverage - 0.8) * 2; // Bonus above 80%
|
|
255
|
+
}
|
|
256
|
+
if (result.quality) {
|
|
257
|
+
reward += (result.quality - 0.8) * 1; // Quality bonus
|
|
258
|
+
}
|
|
259
|
+
// Error penalty
|
|
260
|
+
if (result.errors && result.errors.length > 0) {
|
|
261
|
+
reward -= result.errors.length * 0.1;
|
|
262
|
+
}
|
|
263
|
+
// Resource efficiency bonus
|
|
264
|
+
if (result.resourceUsage) {
|
|
265
|
+
reward += (1 - result.resourceUsage) * 0.3;
|
|
266
|
+
}
|
|
267
|
+
// Clamp to [-2, 2]
|
|
268
|
+
return Math.max(-2, Math.min(2, reward));
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Estimate task complexity
|
|
272
|
+
*/
|
|
273
|
+
estimateComplexity(task) {
|
|
274
|
+
let complexity = 0.5; // Baseline
|
|
275
|
+
if (task.requirements?.capabilities) {
|
|
276
|
+
complexity += task.requirements.capabilities.length * 0.1;
|
|
277
|
+
}
|
|
278
|
+
if (task.previousAttempts) {
|
|
279
|
+
complexity += task.previousAttempts * 0.1;
|
|
280
|
+
}
|
|
281
|
+
if (task.timeout && task.timeout < 10000) {
|
|
282
|
+
complexity += 0.2; // Tight deadline
|
|
283
|
+
}
|
|
284
|
+
return Math.min(1.0, complexity);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
exports.NeuralAgentExtension = NeuralAgentExtension;
|
|
288
|
+
//# sourceMappingURL=NeuralAgentExtension.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NeuralAgentExtension.js","sourceRoot":"","sources":["../../src/agents/NeuralAgentExtension.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerformanceTesterAgent.d.ts","sourceRoot":"","sources":["../../src/agents/PerformanceTesterAgent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PerformanceTesterAgent.d.ts","sourceRoot":"","sources":["../../src/agents/PerformanceTesterAgent.ts"],"names":[],"mappings":"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"}
|
|
@@ -322,7 +322,7 @@ function selectEndpoint(endpoints) {
|
|
|
322
322
|
{ duration: '${profile.rampUpTime}s', target: ${profile.virtualUsers} },
|
|
323
323
|
{ duration: '${profile.duration - profile.rampUpTime}s', target: ${profile.virtualUsers} }
|
|
324
324
|
]`;
|
|
325
|
-
case 'spike':
|
|
325
|
+
case 'spike': {
|
|
326
326
|
const spikeVUs = profile.virtualUsers * 3;
|
|
327
327
|
return `[
|
|
328
328
|
{ duration: '${profile.rampUpTime}s', target: ${profile.virtualUsers} },
|
|
@@ -330,6 +330,7 @@ function selectEndpoint(endpoints) {
|
|
|
330
330
|
{ duration: '30s', target: ${profile.virtualUsers} },
|
|
331
331
|
{ duration: '${profile.duration - profile.rampUpTime - 60}s', target: ${profile.virtualUsers} }
|
|
332
332
|
]`;
|
|
333
|
+
}
|
|
333
334
|
case 'stress':
|
|
334
335
|
return `[
|
|
335
336
|
{ duration: '${Math.floor(profile.duration / 4)}s', target: ${profile.virtualUsers} },
|
|
@@ -428,7 +429,7 @@ class LoadTestSimulation extends Simulation {
|
|
|
428
429
|
throughput: config.loadProfile.virtualUsers * 2
|
|
429
430
|
};
|
|
430
431
|
}
|
|
431
|
-
async collectMonitoringData(
|
|
432
|
+
async collectMonitoringData(_testId) {
|
|
432
433
|
// Simulate monitoring data collection
|
|
433
434
|
// In real implementation, query monitoring platform
|
|
434
435
|
return {
|
|
@@ -889,7 +890,7 @@ class LoadTestSimulation extends Simulation {
|
|
|
889
890
|
// Listen for test execution requests from other agents
|
|
890
891
|
this.registerEventHandler({
|
|
891
892
|
eventType: 'test.execution.complete',
|
|
892
|
-
handler: async (
|
|
893
|
+
handler: async (_event) => {
|
|
893
894
|
// Automatically run performance tests after functional tests
|
|
894
895
|
console.log('Functional tests completed, considering performance test run');
|
|
895
896
|
}
|