mirror of
https://github.com/basicmachines-co/basic-memory
synced 2026-06-21 13:47:35 +00:00
f5a0e942b0
RRF compressed all fused scores to ~0.016, destroying ranking differentiation. The new formula `max(vec, fts) + FUSION_BONUS * min(vec, fts)` preserves dominant signals and rewards dual-source agreement. Changes: - Remove RRF_K constant; add FUSION_BONUS (0.3) and FTS_GATE_THRESHOLD (0.0) - Use raw vector similarity scores instead of re-normalizing by vec_max - Zero-score results now produce zero fused score (no 0.1 weight floor) - Rename test_hybrid_rrf.py → test_hybrid_fusion.py with updated assertions - Update docs and docstrings to reflect score-based fusion Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: phernandez <paul@basicmachines.co>