Merge-and-sort discards rank, so where raw scores tie exactly it falls back to lancedb.databases declaration order. Rank and score are independent discriminators, not the same information at different resolution: a single-branch rank-0 candidate and a rank-2 candidate with two both-branch candidates above it can carry the same score. So keep score primary, which is what buys merge-and-sort its recall, and resolve score ties by within-database position instead of by YAML order. That prefers the candidate nothing in its own collection beat, which is signal. Measures whether merge-and-sort's order sensitivity at n=4 (1.49pp against the tie-break's 0.56pp) is reducible without moving to continuous scores. Claude-Session: https://claude.ai/code/session_01WhudUtZm6qqiuv8Y1sbwSc |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| agents.py | ||
| documents.py | ||
| downloads.py | ||
| exceptions.py | ||
| processing.py | ||
| rebuild.py | ||
| scope.py | ||
| search.py | ||
| session.py | ||
| titles.py | ||