/** * Coverage Learner * ADR-023: Quality Feedback Loop System * * Learns from coverage improvement sessions to identify effective strategies. */ import type { CoverageSession, CoverageStrategy, CoverageTechnique, FeedbackConfig } from './types.js'; import type { RealQEReasoningBank } from '../learning/real-qe-reasoning-bank.js'; /** * Learns from coverage improvement sessions */ export declare class CoverageLearner { private sessionStore; private strategies; private reasoningBank; private config; constructor(config?: Partial); /** * Connect to ReasoningBank for pattern storage */ connectReasoningBank(bank: RealQEReasoningBank): void; /** * Learn from a completed coverage session */ learnFromSession(session: CoverageSession): Promise; /** * Calculate overall coverage improvement */ private calculateOverallImprovement; /** * Extract a reusable strategy from a successful session */ private extractStrategy; /** * Extract file pattern from path */ private extractFilePattern; /** * Generate human-readable strategy description */ private generateStrategyDescription; /** * Store strategy as a ReasoningBank pattern */ private storeStrategyAsPattern; /** * Get recommended strategy for a file */ getRecommendedStrategy(filePath: string): CoverageStrategy | null; /** * Get all strategies */ getAllStrategies(): CoverageStrategy[]; /** * Get strategies by technique */ getStrategiesByTechnique(technique: CoverageTechnique): CoverageStrategy[]; /** * Get session statistics */ getSessionStats(): { totalSessions: number; successfulSessions: number; avgImprovement: number; byTechnique: Map; strategiesLearned: number; }; /** * Analyze gap resolution effectiveness */ analyzeGapResolution(): { totalGapsTargeted: number; gapsAddressed: number; resolutionRate: number; byGapType: Map; }; /** * Export sessions for persistence */ exportSessions(): CoverageSession[]; /** * Import sessions from persistence */ importSessions(sessions: CoverageSession[]): void; /** * Export strategies for persistence */ exportStrategies(): CoverageStrategy[]; /** * Import strategies from persistence */ importStrategies(strategies: CoverageStrategy[]): void; /** * Clear all data */ clear(): void; /** * Get learner statistics */ getLearnerStats(): { totalSessions: number; totalStrategies: number; hasReasoningBank: boolean; minImprovementThreshold: number; }; } /** * Create a new coverage learner */ export declare function createCoverageLearner(config?: Partial): CoverageLearner; //# sourceMappingURL=coverage-learner.d.ts.map