jedarden
0de5f01d32
P2.2: Pluggable MergeStrategy trait + RRF scoring + full benchmark re-run
- Extract MergeStrategy trait with merge()/name() methods
- Implement RrfStrategy with configurable k (default 60)
- Refactor scatter_gather_search to accept &dyn MergeStrategy
- Add RRF simulation to benchmark script (simulate_distributed_search_rrf)
- Re-run full benchmark (3989 queries) with updated comparison reports
- Add topology unit tests (NodeId, NodeStatus, Node helpers)
Benchmark results:
Score-based merge: avg tau = 0.798 (FAIL, common-term tau = 0.152)
RRF merge: avg tau = 0.134 (FAIL, rank-only loses score signal)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>