/** * Forgen Meta-Learning — Matcher Weight Tuner (Feature 2) * * Analyzes which scoring component (TF-IDF, BM25, Bigram) best discriminates * reflected vs. non-reflected solutions and adjusts ensemble weights. * * Algorithm: * 1. Load all non-retired solutions with evidence.injected > 0 * 2. Partition into "effective" (reflected/injected > median) vs "ineffective" * 3. For each component: compute discrimination ratio (effective_mean / ineffective_mean) * 4. Shift weights toward the component with highest discrimination * 5. Apply guardrails: clamp [floor, ceiling], max delta per cycle, normalize to 1.0 * * Cold-start: requires 10+ solutions with injected > 0, 3+ with reflected > 0. */ import type { MatcherWeights, MetaLearningConfig } from './types.js'; /** * Tune matcher ensemble weights based on solution effectiveness data. * Returns null if cold-start conditions are not met. */ export declare function tuneMatcherWeights(config: MetaLearningConfig): MatcherWeights | null;