search: add semantic deduplication to reduce query redundancy

- Implement Jaccard word-level similarity in Search.ts
- Add 15 unit tests for query quality metrics and deduplication
- Introduce optional searchSettings.semanticDedup config flag
- Backward-compatible, default enabled (threshold 0.65)
- Tests: 17/17 pass, typecheck clean, risk: low
This commit is contained in:
2025-11-03 21:36:05 +01:00
parent 39b62a4190
commit a1163976a6
4 changed files with 309 additions and 1 deletions

View File

@@ -54,6 +54,7 @@ export interface ConfigSearchSettings {
retryMobileSearchAmount: number;
localFallbackCount?: number; // Number of local fallback queries to sample when trends fail
extraFallbackRetries?: number; // Additional mini-retry loops with fallback terms
semanticDedup?: boolean; // Filter queries with high semantic similarity (default: true)
}
export interface ConfigSearchDelay {