/** * Injection Candidate Filter (Sprint 24) * * 주입 직전 선별 효율 개선 — effectiveness(matched/injected) 개선 목적. * 1) 정확 중복 제거: 동일 content가 주입 슬롯을 중복 점유하는 것 차단 * (deduplicateByEmbedding은 임베딩 보유 메모리만 커버 — 본 필터가 보완) * 2) 저품질 차단: Dynamic Decay(ADR-017)로 감쇠된 qualityScore < minQuality 제외. * qualityScore가 NULL(미산정)이면 통과 — 신규/미평가 메모리 차단 방지. * * graceful degradation: 품질 게이트가 후보를 전부 제거하면 게이트 미적용 * (중복 제거 결과 유지) — 주입 0건 회귀 방지. */ import type { MemorySearchResult } from '../types/index.js'; export interface InjectionFilterStats { /** 정확 중복으로 제외된 건수 */ contentDuplicates: number; /** 저품질 게이트 제거(시도) 건수 — bypass 시에도 실측값 보고 */ lowQuality: number; /** 품질 게이트 fallback 발동 여부 (전부 제거 → 게이트 미적용) */ qualityGateBypassed: boolean; } export interface InjectionFilterResult { results: MemorySearchResult[]; stats: InjectionFilterStats; } /** * 주입 후보를 필터링합니다. 입력은 점수 내림차순 정렬 가정 * (중복 그룹에서 첫 항목 = 최고 점수 항목이 보존됨). */ export declare function filterInjectionCandidates(results: MemorySearchResult[], minQuality: number): InjectionFilterResult; //# sourceMappingURL=injection-filter.d.ts.map