agentic-qe 2.3.3 → 2.3.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/CHANGELOG.md +122 -0
- package/README.md +1 -1
- package/dist/agents/ApiContractValidatorAgent.d.ts +5 -0
- package/dist/agents/ApiContractValidatorAgent.d.ts.map +1 -1
- package/dist/agents/ApiContractValidatorAgent.js +41 -0
- package/dist/agents/ApiContractValidatorAgent.js.map +1 -1
- package/dist/agents/BaseAgent.d.ts +10 -0
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +113 -0
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/agents/CodeComplexityAnalyzerAgent.d.ts +5 -0
- package/dist/agents/CodeComplexityAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CodeComplexityAnalyzerAgent.js +47 -0
- package/dist/agents/CodeComplexityAnalyzerAgent.js.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.d.ts +26 -0
- package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.js +149 -1
- package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
- package/dist/agents/DeploymentReadinessAgent.d.ts +5 -0
- package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -1
- package/dist/agents/DeploymentReadinessAgent.js +41 -0
- package/dist/agents/DeploymentReadinessAgent.js.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.d.ts +5 -0
- package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.js +40 -0
- package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
- package/dist/agents/FleetCommanderAgent.d.ts +5 -0
- package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
- package/dist/agents/FleetCommanderAgent.js +51 -0
- package/dist/agents/FleetCommanderAgent.js.map +1 -1
- package/dist/agents/PerformanceTesterAgent.d.ts +5 -0
- package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -1
- package/dist/agents/PerformanceTesterAgent.js +44 -0
- package/dist/agents/PerformanceTesterAgent.js.map +1 -1
- package/dist/agents/ProductionIntelligenceAgent.d.ts +5 -0
- package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -1
- package/dist/agents/ProductionIntelligenceAgent.js +46 -0
- package/dist/agents/ProductionIntelligenceAgent.js.map +1 -1
- package/dist/agents/QXPartnerAgent.js +52 -0
- package/dist/agents/QXPartnerAgent.js.map +1 -1
- package/dist/agents/QualityAnalyzerAgent.d.ts +5 -0
- package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/QualityAnalyzerAgent.js +45 -0
- package/dist/agents/QualityAnalyzerAgent.js.map +1 -1
- package/dist/agents/QualityGateAgent.d.ts +40 -0
- package/dist/agents/QualityGateAgent.d.ts.map +1 -1
- package/dist/agents/QualityGateAgent.js +227 -1
- package/dist/agents/QualityGateAgent.js.map +1 -1
- package/dist/agents/RegressionRiskAnalyzerAgent.d.ts +5 -0
- package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/RegressionRiskAnalyzerAgent.js +46 -0
- package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -1
- package/dist/agents/RequirementsValidatorAgent.d.ts +5 -0
- package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -1
- package/dist/agents/RequirementsValidatorAgent.js +42 -0
- package/dist/agents/RequirementsValidatorAgent.js.map +1 -1
- package/dist/agents/SecurityScannerAgent.d.ts +5 -0
- package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
- package/dist/agents/SecurityScannerAgent.js +39 -0
- package/dist/agents/SecurityScannerAgent.js.map +1 -1
- package/dist/agents/TestDataArchitectAgent.d.ts +5 -0
- package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -1
- package/dist/agents/TestDataArchitectAgent.js +46 -0
- package/dist/agents/TestDataArchitectAgent.js.map +1 -1
- package/dist/agents/TestExecutorAgent.d.ts +5 -0
- package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
- package/dist/agents/TestExecutorAgent.js +48 -0
- package/dist/agents/TestExecutorAgent.js.map +1 -1
- package/dist/agents/TestGeneratorAgent.d.ts +5 -0
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
- package/dist/agents/TestGeneratorAgent.js +36 -0
- package/dist/agents/TestGeneratorAgent.js.map +1 -1
- package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
- package/dist/agents/lifecycle/AgentLifecycleManager.js +5 -2
- package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
- package/dist/cli/commands/dream/index.d.ts +50 -0
- package/dist/cli/commands/dream/index.d.ts.map +1 -0
- package/dist/cli/commands/dream/index.js +282 -0
- package/dist/cli/commands/dream/index.js.map +1 -0
- package/dist/cli/commands/learn/index.d.ts +31 -5
- package/dist/cli/commands/learn/index.d.ts.map +1 -1
- package/dist/cli/commands/learn/index.js +183 -50
- package/dist/cli/commands/learn/index.js.map +1 -1
- package/dist/cli/commands/transfer/index.d.ts +55 -0
- package/dist/cli/commands/transfer/index.d.ts.map +1 -0
- package/dist/cli/commands/transfer/index.js +317 -0
- package/dist/cli/commands/transfer/index.js.map +1 -0
- package/dist/cli/index.js +224 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/index.d.ts.map +1 -1
- package/dist/cli/init/index.js +12 -4
- package/dist/cli/init/index.js.map +1 -1
- package/dist/cli/init/learning-init.d.ts +39 -0
- package/dist/cli/init/learning-init.d.ts.map +1 -0
- package/dist/cli/init/learning-init.js +239 -0
- package/dist/cli/init/learning-init.js.map +1 -0
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/learning/baselines/BaselineCollector.d.ts +178 -0
- package/dist/learning/baselines/BaselineCollector.d.ts.map +1 -0
- package/dist/learning/baselines/BaselineCollector.js +398 -0
- package/dist/learning/baselines/BaselineCollector.js.map +1 -0
- package/dist/learning/baselines/StandardTaskSuite.d.ts +88 -0
- package/dist/learning/baselines/StandardTaskSuite.d.ts.map +1 -0
- package/dist/learning/baselines/StandardTaskSuite.js +801 -0
- package/dist/learning/baselines/StandardTaskSuite.js.map +1 -0
- package/dist/learning/baselines/index.d.ts +10 -0
- package/dist/learning/baselines/index.d.ts.map +1 -0
- package/dist/learning/baselines/index.js +15 -0
- package/dist/learning/baselines/index.js.map +1 -0
- package/dist/learning/capture/ExecutionRecorder.d.ts +97 -0
- package/dist/learning/capture/ExecutionRecorder.d.ts.map +1 -0
- package/dist/learning/capture/ExecutionRecorder.js +195 -0
- package/dist/learning/capture/ExecutionRecorder.js.map +1 -0
- package/dist/learning/capture/ExperienceCapture.d.ts +177 -0
- package/dist/learning/capture/ExperienceCapture.d.ts.map +1 -0
- package/dist/learning/capture/ExperienceCapture.js +432 -0
- package/dist/learning/capture/ExperienceCapture.js.map +1 -0
- package/dist/learning/capture/ExperienceExtractor.d.ts +219 -0
- package/dist/learning/capture/ExperienceExtractor.d.ts.map +1 -0
- package/dist/learning/capture/ExperienceExtractor.js +536 -0
- package/dist/learning/capture/ExperienceExtractor.js.map +1 -0
- package/dist/learning/capture/ExperienceStore.d.ts +196 -0
- package/dist/learning/capture/ExperienceStore.d.ts.map +1 -0
- package/dist/learning/capture/ExperienceStore.js +453 -0
- package/dist/learning/capture/ExperienceStore.js.map +1 -0
- package/dist/learning/capture/index.d.ts +12 -0
- package/dist/learning/capture/index.d.ts.map +1 -0
- package/dist/learning/capture/index.js +17 -0
- package/dist/learning/capture/index.js.map +1 -0
- package/dist/learning/dashboard/MetricsDashboard.d.ts +63 -0
- package/dist/learning/dashboard/MetricsDashboard.d.ts.map +1 -0
- package/dist/learning/dashboard/MetricsDashboard.js +230 -0
- package/dist/learning/dashboard/MetricsDashboard.js.map +1 -0
- package/dist/learning/dashboard/index.d.ts +7 -0
- package/dist/learning/dashboard/index.d.ts.map +1 -0
- package/dist/learning/dashboard/index.js +23 -0
- package/dist/learning/dashboard/index.js.map +1 -0
- package/dist/learning/dream/ConceptGraph.d.ts +160 -0
- package/dist/learning/dream/ConceptGraph.d.ts.map +1 -0
- package/dist/learning/dream/ConceptGraph.js +445 -0
- package/dist/learning/dream/ConceptGraph.js.map +1 -0
- package/dist/learning/dream/DreamEngine.d.ts +150 -0
- package/dist/learning/dream/DreamEngine.d.ts.map +1 -0
- package/dist/learning/dream/DreamEngine.js +551 -0
- package/dist/learning/dream/DreamEngine.js.map +1 -0
- package/dist/learning/dream/InsightGenerator.d.ts +152 -0
- package/dist/learning/dream/InsightGenerator.d.ts.map +1 -0
- package/dist/learning/dream/InsightGenerator.js +463 -0
- package/dist/learning/dream/InsightGenerator.js.map +1 -0
- package/dist/learning/dream/SpreadingActivation.d.ts +138 -0
- package/dist/learning/dream/SpreadingActivation.d.ts.map +1 -0
- package/dist/learning/dream/SpreadingActivation.js +320 -0
- package/dist/learning/dream/SpreadingActivation.js.map +1 -0
- package/dist/learning/dream/index.d.ts +14 -0
- package/dist/learning/dream/index.d.ts.map +1 -0
- package/dist/learning/dream/index.js +22 -0
- package/dist/learning/dream/index.js.map +1 -0
- package/dist/learning/metrics/AlertManager.d.ts +107 -0
- package/dist/learning/metrics/AlertManager.d.ts.map +1 -0
- package/dist/learning/metrics/AlertManager.js +246 -0
- package/dist/learning/metrics/AlertManager.js.map +1 -0
- package/dist/learning/metrics/LearningMetrics.d.ts +184 -0
- package/dist/learning/metrics/LearningMetrics.d.ts.map +1 -0
- package/dist/learning/metrics/LearningMetrics.js +754 -0
- package/dist/learning/metrics/LearningMetrics.js.map +1 -0
- package/dist/learning/metrics/MetricsCollector.d.ts +108 -0
- package/dist/learning/metrics/MetricsCollector.d.ts.map +1 -0
- package/dist/learning/metrics/MetricsCollector.js +240 -0
- package/dist/learning/metrics/MetricsCollector.js.map +1 -0
- package/dist/learning/metrics/MetricsStore.d.ts +149 -0
- package/dist/learning/metrics/MetricsStore.d.ts.map +1 -0
- package/dist/learning/metrics/MetricsStore.js +502 -0
- package/dist/learning/metrics/MetricsStore.js.map +1 -0
- package/dist/learning/metrics/TrendAnalyzer.d.ts +85 -0
- package/dist/learning/metrics/TrendAnalyzer.d.ts.map +1 -0
- package/dist/learning/metrics/TrendAnalyzer.js +210 -0
- package/dist/learning/metrics/TrendAnalyzer.js.map +1 -0
- package/dist/learning/metrics/index.d.ts +13 -0
- package/dist/learning/metrics/index.d.ts.map +1 -0
- package/dist/learning/metrics/index.js +39 -0
- package/dist/learning/metrics/index.js.map +1 -0
- package/dist/learning/scheduler/IdleDetector.d.ts +126 -0
- package/dist/learning/scheduler/IdleDetector.d.ts.map +1 -0
- package/dist/learning/scheduler/IdleDetector.js +281 -0
- package/dist/learning/scheduler/IdleDetector.js.map +1 -0
- package/dist/learning/scheduler/SleepCycle.d.ts +150 -0
- package/dist/learning/scheduler/SleepCycle.d.ts.map +1 -0
- package/dist/learning/scheduler/SleepCycle.js +506 -0
- package/dist/learning/scheduler/SleepCycle.js.map +1 -0
- package/dist/learning/scheduler/SleepScheduler.d.ts +133 -0
- package/dist/learning/scheduler/SleepScheduler.d.ts.map +1 -0
- package/dist/learning/scheduler/SleepScheduler.js +301 -0
- package/dist/learning/scheduler/SleepScheduler.js.map +1 -0
- package/dist/learning/scheduler/TimeBasedTrigger.d.ts +108 -0
- package/dist/learning/scheduler/TimeBasedTrigger.d.ts.map +1 -0
- package/dist/learning/scheduler/TimeBasedTrigger.js +222 -0
- package/dist/learning/scheduler/TimeBasedTrigger.js.map +1 -0
- package/dist/learning/scheduler/index.d.ts +16 -0
- package/dist/learning/scheduler/index.d.ts.map +1 -0
- package/dist/learning/scheduler/index.js +23 -0
- package/dist/learning/scheduler/index.js.map +1 -0
- package/dist/learning/synthesis/ClusteringEngine.d.ts +122 -0
- package/dist/learning/synthesis/ClusteringEngine.d.ts.map +1 -0
- package/dist/learning/synthesis/ClusteringEngine.js +356 -0
- package/dist/learning/synthesis/ClusteringEngine.js.map +1 -0
- package/dist/learning/synthesis/PatternSynthesis.d.ts +162 -0
- package/dist/learning/synthesis/PatternSynthesis.d.ts.map +1 -0
- package/dist/learning/synthesis/PatternSynthesis.js +479 -0
- package/dist/learning/synthesis/PatternSynthesis.js.map +1 -0
- package/dist/learning/synthesis/index.d.ts +10 -0
- package/dist/learning/synthesis/index.d.ts.map +1 -0
- package/dist/learning/synthesis/index.js +14 -0
- package/dist/learning/synthesis/index.js.map +1 -0
- package/dist/learning/transfer/CompatibilityScorer.d.ts +115 -0
- package/dist/learning/transfer/CompatibilityScorer.d.ts.map +1 -0
- package/dist/learning/transfer/CompatibilityScorer.js +319 -0
- package/dist/learning/transfer/CompatibilityScorer.js.map +1 -0
- package/dist/learning/transfer/TransferProtocol.d.ts +172 -0
- package/dist/learning/transfer/TransferProtocol.d.ts.map +1 -0
- package/dist/learning/transfer/TransferProtocol.js +611 -0
- package/dist/learning/transfer/TransferProtocol.js.map +1 -0
- package/dist/learning/transfer/TransferPrototype.d.ts +93 -0
- package/dist/learning/transfer/TransferPrototype.d.ts.map +1 -0
- package/dist/learning/transfer/TransferPrototype.js +433 -0
- package/dist/learning/transfer/TransferPrototype.js.map +1 -0
- package/dist/learning/transfer/TransferRegistry.d.ts +245 -0
- package/dist/learning/transfer/TransferRegistry.d.ts.map +1 -0
- package/dist/learning/transfer/TransferRegistry.js +410 -0
- package/dist/learning/transfer/TransferRegistry.js.map +1 -0
- package/dist/learning/transfer/TransferValidator.d.ts +140 -0
- package/dist/learning/transfer/TransferValidator.d.ts.map +1 -0
- package/dist/learning/transfer/TransferValidator.js +413 -0
- package/dist/learning/transfer/TransferValidator.js.map +1 -0
- package/dist/learning/transfer/index.d.ts +14 -0
- package/dist/learning/transfer/index.d.ts.map +1 -0
- package/dist/learning/transfer/index.js +22 -0
- package/dist/learning/transfer/index.js.map +1 -0
- package/dist/mcp/handlers/task-orchestrate.d.ts +11 -0
- package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -1
- package/dist/mcp/handlers/task-orchestrate.js +297 -4
- package/dist/mcp/handlers/task-orchestrate.js.map +1 -1
- package/dist/mcp/handlers/test/test-generate-enhanced.d.ts +26 -2
- package/dist/mcp/handlers/test/test-generate-enhanced.d.ts.map +1 -1
- package/dist/mcp/handlers/test/test-generate-enhanced.js +159 -27
- package/dist/mcp/handlers/test/test-generate-enhanced.js.map +1 -1
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +2 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/services/AgentRegistry.d.ts +6 -1
- package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
- package/dist/mcp/services/AgentRegistry.js +34 -3
- package/dist/mcp/services/AgentRegistry.js.map +1 -1
- package/package.json +5 -2
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TransferValidator - Validate pattern transfer success
|
|
3
|
+
*
|
|
4
|
+
* Performs post-transfer validation to ensure patterns are
|
|
5
|
+
* correctly transferred and applicable to target agents.
|
|
6
|
+
*
|
|
7
|
+
* Part of the Nightly-Learner Phase 2 implementation.
|
|
8
|
+
*
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
* @module src/learning/transfer/TransferValidator
|
|
11
|
+
*/
|
|
12
|
+
import { EventEmitter } from 'events';
|
|
13
|
+
export interface ValidationConfig {
|
|
14
|
+
/** Database path. Default: .agentic-qe/memory.db */
|
|
15
|
+
dbPath?: string;
|
|
16
|
+
/** Minimum validation score to pass. Default: 0.7 */
|
|
17
|
+
passThreshold?: number;
|
|
18
|
+
/** Enable detailed validation. Default: true */
|
|
19
|
+
detailedValidation?: boolean;
|
|
20
|
+
/** Enable debug logging */
|
|
21
|
+
debug?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface ValidationReport {
|
|
24
|
+
transferId: string;
|
|
25
|
+
patternId: string;
|
|
26
|
+
sourceAgent: string;
|
|
27
|
+
targetAgent: string;
|
|
28
|
+
passed: boolean;
|
|
29
|
+
overallScore: number;
|
|
30
|
+
checks: ValidationCheck[];
|
|
31
|
+
recommendations?: string[];
|
|
32
|
+
validatedAt: Date;
|
|
33
|
+
}
|
|
34
|
+
export interface ValidationCheck {
|
|
35
|
+
name: string;
|
|
36
|
+
category: 'integrity' | 'applicability' | 'performance' | 'safety';
|
|
37
|
+
passed: boolean;
|
|
38
|
+
score: number;
|
|
39
|
+
message: string;
|
|
40
|
+
details?: Record<string, unknown>;
|
|
41
|
+
}
|
|
42
|
+
export interface TransferRecord {
|
|
43
|
+
id: string;
|
|
44
|
+
patternId: string;
|
|
45
|
+
sourceAgent: string;
|
|
46
|
+
targetAgent: string;
|
|
47
|
+
transferredAt: Date;
|
|
48
|
+
originalContent: string;
|
|
49
|
+
transferredContent: string;
|
|
50
|
+
compatibilityScore: number;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* TransferValidator validates pattern transfers
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* ```typescript
|
|
57
|
+
* const validator = new TransferValidator({ passThreshold: 0.7 });
|
|
58
|
+
*
|
|
59
|
+
* const report = await validator.validate(transferRecord);
|
|
60
|
+
*
|
|
61
|
+
* if (report.passed) {
|
|
62
|
+
* console.log('Transfer validated successfully');
|
|
63
|
+
* } else {
|
|
64
|
+
* console.log('Issues:', report.recommendations);
|
|
65
|
+
* }
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
export declare class TransferValidator extends EventEmitter {
|
|
69
|
+
private config;
|
|
70
|
+
private db;
|
|
71
|
+
private logger;
|
|
72
|
+
constructor(config?: ValidationConfig);
|
|
73
|
+
/**
|
|
74
|
+
* Initialize database schema
|
|
75
|
+
*/
|
|
76
|
+
private initializeSchema;
|
|
77
|
+
/**
|
|
78
|
+
* Validate a pattern transfer
|
|
79
|
+
*/
|
|
80
|
+
validate(record: TransferRecord): Promise<ValidationReport>;
|
|
81
|
+
/**
|
|
82
|
+
* Check pattern integrity
|
|
83
|
+
*/
|
|
84
|
+
private checkPatternIntegrity;
|
|
85
|
+
/**
|
|
86
|
+
* Check data consistency
|
|
87
|
+
*/
|
|
88
|
+
private checkDataConsistency;
|
|
89
|
+
/**
|
|
90
|
+
* Check agent applicability
|
|
91
|
+
*/
|
|
92
|
+
private checkAgentApplicability;
|
|
93
|
+
/**
|
|
94
|
+
* Check context preservation
|
|
95
|
+
*/
|
|
96
|
+
private checkContextPreservation;
|
|
97
|
+
/**
|
|
98
|
+
* Check confidence preservation
|
|
99
|
+
*/
|
|
100
|
+
private checkConfidencePreservation;
|
|
101
|
+
/**
|
|
102
|
+
* Check for duplicate transfers
|
|
103
|
+
*/
|
|
104
|
+
private checkDuplicateDetection;
|
|
105
|
+
/**
|
|
106
|
+
* Check safety constraints
|
|
107
|
+
*/
|
|
108
|
+
private checkSafetyConstraints;
|
|
109
|
+
/**
|
|
110
|
+
* Calculate content similarity
|
|
111
|
+
*/
|
|
112
|
+
private calculateContentSimilarity;
|
|
113
|
+
/**
|
|
114
|
+
* Generate recommendations based on validation
|
|
115
|
+
*/
|
|
116
|
+
private generateRecommendations;
|
|
117
|
+
/**
|
|
118
|
+
* Store validation result
|
|
119
|
+
*/
|
|
120
|
+
private storeValidation;
|
|
121
|
+
/**
|
|
122
|
+
* Get validation history for a pattern
|
|
123
|
+
*/
|
|
124
|
+
getValidationHistory(patternId: string): ValidationReport[];
|
|
125
|
+
/**
|
|
126
|
+
* Get validation statistics
|
|
127
|
+
*/
|
|
128
|
+
getStats(): {
|
|
129
|
+
total: number;
|
|
130
|
+
passed: number;
|
|
131
|
+
failed: number;
|
|
132
|
+
avgScore: number;
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* Close database connection
|
|
136
|
+
*/
|
|
137
|
+
close(): void;
|
|
138
|
+
}
|
|
139
|
+
export default TransferValidator;
|
|
140
|
+
//# sourceMappingURL=TransferValidator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransferValidator.d.ts","sourceRoot":"","sources":["../../../src/learning/transfer/TransferValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAKtC,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,EAAE,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,GAAG,eAAe,GAAG,aAAa,GAAG,QAAQ,CAAC;IACnE,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,IAAI,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,CAAC,EAAE,gBAAgB;IAerC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAqBxB;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAuDjE;;OAEG;YACW,qBAAqB;IAqBnC;;OAEG;YACW,oBAAoB;IAqBlC;;OAEG;YACW,uBAAuB;IAiBrC;;OAEG;YACW,wBAAwB;IAqBtC;;OAEG;YACW,2BAA2B;IAiCzC;;OAEG;YACW,uBAAuB;IAqBrC;;OAEG;YACW,sBAAsB;IAsBpC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAclC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA6B/B;;OAEG;YACW,eAAe;IAqB7B;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAoB3D;;OAEG;IACH,QAAQ,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAkB/E;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,413 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* TransferValidator - Validate pattern transfer success
|
|
4
|
+
*
|
|
5
|
+
* Performs post-transfer validation to ensure patterns are
|
|
6
|
+
* correctly transferred and applicable to target agents.
|
|
7
|
+
*
|
|
8
|
+
* Part of the Nightly-Learner Phase 2 implementation.
|
|
9
|
+
*
|
|
10
|
+
* @version 1.0.0
|
|
11
|
+
* @module src/learning/transfer/TransferValidator
|
|
12
|
+
*/
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
30
|
+
var ownKeys = function(o) {
|
|
31
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
32
|
+
var ar = [];
|
|
33
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
34
|
+
return ar;
|
|
35
|
+
};
|
|
36
|
+
return ownKeys(o);
|
|
37
|
+
};
|
|
38
|
+
return function (mod) {
|
|
39
|
+
if (mod && mod.__esModule) return mod;
|
|
40
|
+
var result = {};
|
|
41
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
42
|
+
__setModuleDefault(result, mod);
|
|
43
|
+
return result;
|
|
44
|
+
};
|
|
45
|
+
})();
|
|
46
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
47
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
48
|
+
};
|
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
+
exports.TransferValidator = void 0;
|
|
51
|
+
const events_1 = require("events");
|
|
52
|
+
const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
|
|
53
|
+
const path = __importStar(require("path"));
|
|
54
|
+
const Logger_1 = require("../../utils/Logger");
|
|
55
|
+
/**
|
|
56
|
+
* TransferValidator validates pattern transfers
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const validator = new TransferValidator({ passThreshold: 0.7 });
|
|
61
|
+
*
|
|
62
|
+
* const report = await validator.validate(transferRecord);
|
|
63
|
+
*
|
|
64
|
+
* if (report.passed) {
|
|
65
|
+
* console.log('Transfer validated successfully');
|
|
66
|
+
* } else {
|
|
67
|
+
* console.log('Issues:', report.recommendations);
|
|
68
|
+
* }
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
class TransferValidator extends events_1.EventEmitter {
|
|
72
|
+
constructor(config) {
|
|
73
|
+
super();
|
|
74
|
+
this.logger = Logger_1.Logger.getInstance();
|
|
75
|
+
this.config = {
|
|
76
|
+
dbPath: config?.dbPath || path.join(process.cwd(), '.agentic-qe', 'memory.db'),
|
|
77
|
+
passThreshold: config?.passThreshold ?? 0.7,
|
|
78
|
+
detailedValidation: config?.detailedValidation ?? true,
|
|
79
|
+
debug: config?.debug ?? false,
|
|
80
|
+
};
|
|
81
|
+
this.db = new better_sqlite3_1.default(this.config.dbPath);
|
|
82
|
+
this.initializeSchema();
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Initialize database schema
|
|
86
|
+
*/
|
|
87
|
+
initializeSchema() {
|
|
88
|
+
this.db.exec(`
|
|
89
|
+
CREATE TABLE IF NOT EXISTS transfer_validations (
|
|
90
|
+
id TEXT PRIMARY KEY,
|
|
91
|
+
transfer_id TEXT NOT NULL,
|
|
92
|
+
pattern_id TEXT NOT NULL,
|
|
93
|
+
source_agent TEXT NOT NULL,
|
|
94
|
+
target_agent TEXT NOT NULL,
|
|
95
|
+
passed INTEGER NOT NULL,
|
|
96
|
+
overall_score REAL NOT NULL,
|
|
97
|
+
checks TEXT NOT NULL,
|
|
98
|
+
recommendations TEXT,
|
|
99
|
+
validated_at INTEGER NOT NULL
|
|
100
|
+
);
|
|
101
|
+
|
|
102
|
+
CREATE INDEX IF NOT EXISTS idx_validation_transfer ON transfer_validations(transfer_id);
|
|
103
|
+
CREATE INDEX IF NOT EXISTS idx_validation_pattern ON transfer_validations(pattern_id);
|
|
104
|
+
CREATE INDEX IF NOT EXISTS idx_validation_passed ON transfer_validations(passed);
|
|
105
|
+
`);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Validate a pattern transfer
|
|
109
|
+
*/
|
|
110
|
+
async validate(record) {
|
|
111
|
+
const checks = [];
|
|
112
|
+
// Integrity checks
|
|
113
|
+
checks.push(await this.checkPatternIntegrity(record));
|
|
114
|
+
checks.push(await this.checkDataConsistency(record));
|
|
115
|
+
// Applicability checks
|
|
116
|
+
checks.push(await this.checkAgentApplicability(record));
|
|
117
|
+
checks.push(await this.checkContextPreservation(record));
|
|
118
|
+
// Performance checks
|
|
119
|
+
if (this.config.detailedValidation) {
|
|
120
|
+
checks.push(await this.checkConfidencePreservation(record));
|
|
121
|
+
checks.push(await this.checkDuplicateDetection(record));
|
|
122
|
+
}
|
|
123
|
+
// Safety checks
|
|
124
|
+
checks.push(await this.checkSafetyConstraints(record));
|
|
125
|
+
// Calculate overall score
|
|
126
|
+
const passedChecks = checks.filter(c => c.passed);
|
|
127
|
+
const overallScore = checks.reduce((sum, c) => sum + c.score, 0) / checks.length;
|
|
128
|
+
const passed = overallScore >= this.config.passThreshold;
|
|
129
|
+
// Generate recommendations
|
|
130
|
+
const recommendations = this.generateRecommendations(checks, passed);
|
|
131
|
+
const report = {
|
|
132
|
+
transferId: record.id,
|
|
133
|
+
patternId: record.patternId,
|
|
134
|
+
sourceAgent: record.sourceAgent,
|
|
135
|
+
targetAgent: record.targetAgent,
|
|
136
|
+
passed,
|
|
137
|
+
overallScore,
|
|
138
|
+
checks,
|
|
139
|
+
recommendations: recommendations.length > 0 ? recommendations : undefined,
|
|
140
|
+
validatedAt: new Date(),
|
|
141
|
+
};
|
|
142
|
+
// Store validation
|
|
143
|
+
await this.storeValidation(report);
|
|
144
|
+
this.logger.info('[TransferValidator] Validation complete', {
|
|
145
|
+
transferId: record.id,
|
|
146
|
+
passed,
|
|
147
|
+
score: overallScore.toFixed(3),
|
|
148
|
+
checksTotal: checks.length,
|
|
149
|
+
checksPassed: passedChecks.length,
|
|
150
|
+
});
|
|
151
|
+
this.emit('validation:complete', report);
|
|
152
|
+
return report;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Check pattern integrity
|
|
156
|
+
*/
|
|
157
|
+
async checkPatternIntegrity(record) {
|
|
158
|
+
// Verify pattern exists in target context
|
|
159
|
+
const exists = this.db.prepare(`
|
|
160
|
+
SELECT COUNT(*) as count FROM patterns
|
|
161
|
+
WHERE id LIKE ? AND agent_id = ?
|
|
162
|
+
`).get(`%${record.patternId}%`, record.targetAgent);
|
|
163
|
+
const passed = exists.count > 0;
|
|
164
|
+
return {
|
|
165
|
+
name: 'Pattern Integrity',
|
|
166
|
+
category: 'integrity',
|
|
167
|
+
passed,
|
|
168
|
+
score: passed ? 1.0 : 0,
|
|
169
|
+
message: passed
|
|
170
|
+
? 'Pattern exists in target agent context'
|
|
171
|
+
: 'Pattern not found in target agent context',
|
|
172
|
+
details: { count: exists.count },
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Check data consistency
|
|
177
|
+
*/
|
|
178
|
+
async checkDataConsistency(record) {
|
|
179
|
+
// Verify content is similar (allowing for minor adaptations)
|
|
180
|
+
const original = record.originalContent || '';
|
|
181
|
+
const transferred = record.transferredContent || '';
|
|
182
|
+
// Calculate similarity
|
|
183
|
+
const similarity = this.calculateContentSimilarity(original, transferred);
|
|
184
|
+
const passed = similarity >= 0.7; // Allow 30% adaptation
|
|
185
|
+
return {
|
|
186
|
+
name: 'Data Consistency',
|
|
187
|
+
category: 'integrity',
|
|
188
|
+
passed,
|
|
189
|
+
score: similarity,
|
|
190
|
+
message: passed
|
|
191
|
+
? 'Content preserved within acceptable range'
|
|
192
|
+
: 'Content significantly altered during transfer',
|
|
193
|
+
details: { similarity: similarity.toFixed(3) },
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Check agent applicability
|
|
198
|
+
*/
|
|
199
|
+
async checkAgentApplicability(record) {
|
|
200
|
+
// Verify pattern is applicable to target agent's domain
|
|
201
|
+
const compatibility = record.compatibilityScore;
|
|
202
|
+
const passed = compatibility >= 0.5;
|
|
203
|
+
return {
|
|
204
|
+
name: 'Agent Applicability',
|
|
205
|
+
category: 'applicability',
|
|
206
|
+
passed,
|
|
207
|
+
score: compatibility,
|
|
208
|
+
message: passed
|
|
209
|
+
? 'Pattern applicable to target agent'
|
|
210
|
+
: 'Pattern may not be suitable for target agent',
|
|
211
|
+
details: { compatibilityScore: compatibility.toFixed(3) },
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Check context preservation
|
|
216
|
+
*/
|
|
217
|
+
async checkContextPreservation(record) {
|
|
218
|
+
// Verify transfer context was recorded
|
|
219
|
+
const registry = this.db.prepare(`
|
|
220
|
+
SELECT * FROM transfer_registry
|
|
221
|
+
WHERE pattern_id = ? AND target_agent = ?
|
|
222
|
+
`).get(record.patternId, record.targetAgent);
|
|
223
|
+
const hasContext = registry && registry.source_agent === record.sourceAgent;
|
|
224
|
+
return {
|
|
225
|
+
name: 'Context Preservation',
|
|
226
|
+
category: 'applicability',
|
|
227
|
+
passed: hasContext,
|
|
228
|
+
score: hasContext ? 1.0 : 0.5,
|
|
229
|
+
message: hasContext
|
|
230
|
+
? 'Transfer context preserved'
|
|
231
|
+
: 'Transfer context incomplete',
|
|
232
|
+
details: { hasRegistry: !!registry },
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Check confidence preservation
|
|
237
|
+
*/
|
|
238
|
+
async checkConfidencePreservation(record) {
|
|
239
|
+
// Get transferred pattern's confidence
|
|
240
|
+
const pattern = this.db.prepare(`
|
|
241
|
+
SELECT confidence FROM patterns
|
|
242
|
+
WHERE id LIKE ? AND agent_id = ?
|
|
243
|
+
`).get(`%${record.patternId}%`, record.targetAgent);
|
|
244
|
+
if (!pattern) {
|
|
245
|
+
return {
|
|
246
|
+
name: 'Confidence Preservation',
|
|
247
|
+
category: 'performance',
|
|
248
|
+
passed: false,
|
|
249
|
+
score: 0,
|
|
250
|
+
message: 'Pattern not found for confidence check',
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
// Expect ~90% confidence retention (10% reduction for transfer)
|
|
254
|
+
const expectedConfidence = 0.5; // Minimum acceptable
|
|
255
|
+
const passed = pattern.confidence >= expectedConfidence;
|
|
256
|
+
return {
|
|
257
|
+
name: 'Confidence Preservation',
|
|
258
|
+
category: 'performance',
|
|
259
|
+
passed,
|
|
260
|
+
score: Math.min(1, pattern.confidence / 0.7),
|
|
261
|
+
message: passed
|
|
262
|
+
? `Confidence preserved: ${(pattern.confidence * 100).toFixed(1)}%`
|
|
263
|
+
: `Confidence too low: ${(pattern.confidence * 100).toFixed(1)}%`,
|
|
264
|
+
details: { confidence: pattern.confidence },
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Check for duplicate transfers
|
|
269
|
+
*/
|
|
270
|
+
async checkDuplicateDetection(record) {
|
|
271
|
+
// Check if same pattern was transferred multiple times
|
|
272
|
+
const duplicates = this.db.prepare(`
|
|
273
|
+
SELECT COUNT(*) as count FROM transfer_registry
|
|
274
|
+
WHERE pattern_id = ? AND target_agent = ?
|
|
275
|
+
`).get(record.patternId, record.targetAgent);
|
|
276
|
+
const noDuplicates = duplicates.count <= 1;
|
|
277
|
+
return {
|
|
278
|
+
name: 'Duplicate Detection',
|
|
279
|
+
category: 'performance',
|
|
280
|
+
passed: noDuplicates,
|
|
281
|
+
score: noDuplicates ? 1.0 : 0.5,
|
|
282
|
+
message: noDuplicates
|
|
283
|
+
? 'No duplicate transfers detected'
|
|
284
|
+
: `Pattern transferred ${duplicates.count} times`,
|
|
285
|
+
details: { transferCount: duplicates.count },
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Check safety constraints
|
|
290
|
+
*/
|
|
291
|
+
async checkSafetyConstraints(record) {
|
|
292
|
+
// Verify no unsafe patterns are being transferred
|
|
293
|
+
const unsafePatterns = [
|
|
294
|
+
'delete', 'drop', 'truncate', 'rm -rf',
|
|
295
|
+
'password', 'secret', 'credential',
|
|
296
|
+
];
|
|
297
|
+
const content = (record.transferredContent || '').toLowerCase();
|
|
298
|
+
const hasUnsafe = unsafePatterns.some(p => content.includes(p));
|
|
299
|
+
return {
|
|
300
|
+
name: 'Safety Constraints',
|
|
301
|
+
category: 'safety',
|
|
302
|
+
passed: !hasUnsafe,
|
|
303
|
+
score: hasUnsafe ? 0.5 : 1.0,
|
|
304
|
+
message: hasUnsafe
|
|
305
|
+
? 'Warning: Pattern contains potentially unsafe content'
|
|
306
|
+
: 'Pattern passes safety checks',
|
|
307
|
+
details: { flagged: hasUnsafe },
|
|
308
|
+
};
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Calculate content similarity
|
|
312
|
+
*/
|
|
313
|
+
calculateContentSimilarity(a, b) {
|
|
314
|
+
if (!a || !b)
|
|
315
|
+
return 0;
|
|
316
|
+
if (a === b)
|
|
317
|
+
return 1;
|
|
318
|
+
// Simple word overlap
|
|
319
|
+
const wordsA = new Set(a.toLowerCase().split(/\s+/));
|
|
320
|
+
const wordsB = new Set(b.toLowerCase().split(/\s+/));
|
|
321
|
+
const intersection = [...wordsA].filter(w => wordsB.has(w));
|
|
322
|
+
const union = new Set([...wordsA, ...wordsB]);
|
|
323
|
+
return intersection.length / union.size;
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Generate recommendations based on validation
|
|
327
|
+
*/
|
|
328
|
+
generateRecommendations(checks, passed) {
|
|
329
|
+
const recommendations = [];
|
|
330
|
+
for (const check of checks) {
|
|
331
|
+
if (!check.passed) {
|
|
332
|
+
switch (check.category) {
|
|
333
|
+
case 'integrity':
|
|
334
|
+
recommendations.push(`Fix ${check.name}: ${check.message}`);
|
|
335
|
+
break;
|
|
336
|
+
case 'applicability':
|
|
337
|
+
recommendations.push(`Review applicability: ${check.message}`);
|
|
338
|
+
break;
|
|
339
|
+
case 'performance':
|
|
340
|
+
recommendations.push(`Optimize: ${check.message}`);
|
|
341
|
+
break;
|
|
342
|
+
case 'safety':
|
|
343
|
+
recommendations.push(`Security review required: ${check.message}`);
|
|
344
|
+
break;
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
if (!passed && recommendations.length === 0) {
|
|
349
|
+
recommendations.push('Overall score below threshold - review transfer parameters');
|
|
350
|
+
}
|
|
351
|
+
return recommendations;
|
|
352
|
+
}
|
|
353
|
+
/**
|
|
354
|
+
* Store validation result
|
|
355
|
+
*/
|
|
356
|
+
async storeValidation(report) {
|
|
357
|
+
const id = `val-${Date.now()}-${Math.random().toString(36).substr(2, 8)}`;
|
|
358
|
+
this.db.prepare(`
|
|
359
|
+
INSERT INTO transfer_validations
|
|
360
|
+
(id, transfer_id, pattern_id, source_agent, target_agent, passed, overall_score, checks, recommendations, validated_at)
|
|
361
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
362
|
+
`).run(id, report.transferId, report.patternId, report.sourceAgent, report.targetAgent, report.passed ? 1 : 0, report.overallScore, JSON.stringify(report.checks), report.recommendations ? JSON.stringify(report.recommendations) : null, report.validatedAt.getTime());
|
|
363
|
+
}
|
|
364
|
+
/**
|
|
365
|
+
* Get validation history for a pattern
|
|
366
|
+
*/
|
|
367
|
+
getValidationHistory(patternId) {
|
|
368
|
+
const rows = this.db.prepare(`
|
|
369
|
+
SELECT * FROM transfer_validations
|
|
370
|
+
WHERE pattern_id = ?
|
|
371
|
+
ORDER BY validated_at DESC
|
|
372
|
+
`).all(patternId);
|
|
373
|
+
return rows.map(row => ({
|
|
374
|
+
transferId: row.transfer_id,
|
|
375
|
+
patternId: row.pattern_id,
|
|
376
|
+
sourceAgent: row.source_agent,
|
|
377
|
+
targetAgent: row.target_agent,
|
|
378
|
+
passed: row.passed === 1,
|
|
379
|
+
overallScore: row.overall_score,
|
|
380
|
+
checks: JSON.parse(row.checks),
|
|
381
|
+
recommendations: row.recommendations ? JSON.parse(row.recommendations) : undefined,
|
|
382
|
+
validatedAt: new Date(row.validated_at),
|
|
383
|
+
}));
|
|
384
|
+
}
|
|
385
|
+
/**
|
|
386
|
+
* Get validation statistics
|
|
387
|
+
*/
|
|
388
|
+
getStats() {
|
|
389
|
+
const stats = this.db.prepare(`
|
|
390
|
+
SELECT
|
|
391
|
+
COUNT(*) as total,
|
|
392
|
+
SUM(CASE WHEN passed = 1 THEN 1 ELSE 0 END) as passed,
|
|
393
|
+
SUM(CASE WHEN passed = 0 THEN 1 ELSE 0 END) as failed,
|
|
394
|
+
AVG(overall_score) as avg_score
|
|
395
|
+
FROM transfer_validations
|
|
396
|
+
`).get();
|
|
397
|
+
return {
|
|
398
|
+
total: stats.total || 0,
|
|
399
|
+
passed: stats.passed || 0,
|
|
400
|
+
failed: stats.failed || 0,
|
|
401
|
+
avgScore: stats.avg_score || 0,
|
|
402
|
+
};
|
|
403
|
+
}
|
|
404
|
+
/**
|
|
405
|
+
* Close database connection
|
|
406
|
+
*/
|
|
407
|
+
close() {
|
|
408
|
+
this.db.close();
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
exports.TransferValidator = TransferValidator;
|
|
412
|
+
exports.default = TransferValidator;
|
|
413
|
+
//# sourceMappingURL=TransferValidator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransferValidator.js","sourceRoot":"","sources":["../../../src/learning/transfer/TransferValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Transfer Module
|
|
3
|
+
*
|
|
4
|
+
* Implements cross-agent pattern transfer for the Nightly-Learner system.
|
|
5
|
+
* Enables knowledge sharing between QE agents.
|
|
6
|
+
*
|
|
7
|
+
* @module src/learning/transfer
|
|
8
|
+
*/
|
|
9
|
+
export { TransferPrototype, TransferTest, TransferResult as PrototypeTransferResult, AgentDomain, } from './TransferPrototype';
|
|
10
|
+
export { TransferProtocol, TransferRequest, TransferResult, TransferDetail, ValidationResult, ValidationTest, TransferProtocolConfig, TransferStats, } from './TransferProtocol';
|
|
11
|
+
export { CompatibilityScorer, CompatibilityReport, CompatibilityBreakdown, AgentProfile, PatternProfile, } from './CompatibilityScorer';
|
|
12
|
+
export { TransferValidator, ValidationConfig, ValidationReport, ValidationCheck, TransferRecord, } from './TransferValidator';
|
|
13
|
+
export { TransferProtocol as default } from './TransferProtocol';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/learning/transfer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,IAAI,uBAAuB,EACzC,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,cAAc,GACf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Transfer Module
|
|
4
|
+
*
|
|
5
|
+
* Implements cross-agent pattern transfer for the Nightly-Learner system.
|
|
6
|
+
* Enables knowledge sharing between QE agents.
|
|
7
|
+
*
|
|
8
|
+
* @module src/learning/transfer
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.default = exports.TransferValidator = exports.CompatibilityScorer = exports.TransferProtocol = exports.TransferPrototype = void 0;
|
|
12
|
+
var TransferPrototype_1 = require("./TransferPrototype");
|
|
13
|
+
Object.defineProperty(exports, "TransferPrototype", { enumerable: true, get: function () { return TransferPrototype_1.TransferPrototype; } });
|
|
14
|
+
var TransferProtocol_1 = require("./TransferProtocol");
|
|
15
|
+
Object.defineProperty(exports, "TransferProtocol", { enumerable: true, get: function () { return TransferProtocol_1.TransferProtocol; } });
|
|
16
|
+
var CompatibilityScorer_1 = require("./CompatibilityScorer");
|
|
17
|
+
Object.defineProperty(exports, "CompatibilityScorer", { enumerable: true, get: function () { return CompatibilityScorer_1.CompatibilityScorer; } });
|
|
18
|
+
var TransferValidator_1 = require("./TransferValidator");
|
|
19
|
+
Object.defineProperty(exports, "TransferValidator", { enumerable: true, get: function () { return TransferValidator_1.TransferValidator; } });
|
|
20
|
+
var TransferProtocol_2 = require("./TransferProtocol");
|
|
21
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return TransferProtocol_2.TransferProtocol; } });
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/learning/transfer/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,yDAK6B;AAJ3B,sHAAA,iBAAiB,OAAA;AAMnB,uDAS4B;AAR1B,oHAAA,gBAAgB,OAAA;AAUlB,6DAM+B;AAL7B,0HAAA,mBAAmB,OAAA;AAOrB,yDAM6B;AAL3B,sHAAA,iBAAiB,OAAA;AAOnB,uDAAiE;AAAxD,2GAAA,gBAAgB,OAAW"}
|
|
@@ -145,6 +145,17 @@ export declare class TaskOrchestrateHandler extends BaseHandler {
|
|
|
145
145
|
private executeAdaptiveWorkflow;
|
|
146
146
|
private executeDependentSteps;
|
|
147
147
|
private executeStep;
|
|
148
|
+
/**
|
|
149
|
+
* Create a proper task payload for the agent based on step type
|
|
150
|
+
*
|
|
151
|
+
* IMPORTANT: Task types must match what each agent's performTask() expects:
|
|
152
|
+
* - QualityAnalyzerAgent: 'code-analysis', 'complexity-analysis', 'metrics-collection', 'security-scan', 'quality-report'
|
|
153
|
+
* - SecurityScannerAgent: 'run-security-scan', 'scan-dependencies', 'scan-containers', 'check-compliance'
|
|
154
|
+
* - PerformanceTesterAgent: 'run-load-test', 'analyze-performance', 'detect-bottlenecks', 'validate-sla'
|
|
155
|
+
* - TestGeneratorAgent: 'generate-tests' (uses payload directly)
|
|
156
|
+
* - TestExecutorAgent: 'execute-tests' (uses payload directly)
|
|
157
|
+
*/
|
|
158
|
+
private createTaskPayloadForStep;
|
|
148
159
|
private generateStepResults;
|
|
149
160
|
private topologicalSort;
|
|
150
161
|
private createInitialProgress;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-orchestrate.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/task-orchestrate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"task-orchestrate.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/task-orchestrate.ts"],"names":[],"mappings":"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"}
|