test-learning-pipeline.jsā¢2.09 kB
#!/usr/bin/env node
import { SemanticEngine } from '../dist/engines/semantic-engine.js';
import { PatternEngine } from '../dist/engines/pattern-engine.js';
import { SQLiteDatabase } from '../dist/storage/sqlite-db.js';
import { IntelligenceTools } from '../dist/mcp-server/tools/intelligence-tools.js';
async function testLearningPipeline() {
console.log('š§ Testing Enhanced Learning Pipeline...\n');
try {
// Initialize components
const database = new SQLiteDatabase('./test-learning.db');
const semanticEngine = new SemanticEngine(database);
const patternEngine = new PatternEngine(database);
const intelligenceTools = new IntelligenceTools(semanticEngine, patternEngine, database);
console.log('ā
Initialized all components');
// Test the comprehensive learning pipeline
console.log('\nš Running comprehensive learning pipeline...');
const result = await intelligenceTools.learnCodebaseIntelligence({
path: './src',
force: true
});
console.log('\nš Learning Pipeline Results:');
console.log(` Success: ${result.success}`);
console.log(` Concepts learned: ${result.conceptsLearned}`);
console.log(` Patterns learned: ${result.patternsLearned}`);
console.log(` Time elapsed: ${result.timeElapsed}ms`);
console.log('\nš” Learning Insights:');
result.insights.forEach(insight => {
console.log(` ${insight}`);
});
// Test without force (should use cached results)
console.log('\nš Testing cached learning (force: false)...');
const cachedResult = await intelligenceTools.learnCodebaseIntelligence({
path: './src',
force: false
});
console.log('\nš Cached Results:');
console.log(` Success: ${cachedResult.success}`);
console.log(` Time elapsed: ${cachedResult.timeElapsed}ms`);
console.log(` Insights: ${cachedResult.insights.join(', ')}`);
} catch (error) {
console.error('ā Test failed:', error);
console.error('Stack:', error.stack);
}
}
testLearningPipeline();