search_collection now ranks results by relevance, returns every owned pressing instead of collapsing them, and supports pagination through large result sets.
What’s new
- Pagination on
search_collection. Pass apageparameter to walk through large result sets; the truncation warning at the bottom of each response tells you the next page number to request. - Optional
group_pressings: truefor callers who want one row per album instead of one row per owned pressing.
Fixes
- Owning multiple pressings of an album (e.g. a vinyl reissue and the original CD) now returns each as its own row with its own release_id and instance_id. Previously they collapsed into one row with merged formats.
- Multi-token queries like “Best Of Genesis” or “muddy waters folk singer” return results ranked by relevance. Tangential tag matches no longer drown out literal artist/title hits.
- Album titles containing words like “new” or “old” (e.g. Search For The New Land) no longer trigger date-added sort.
- Result lists now flag truncation to the calling agent instead of silently capping at the top N.
Under the hood
- MiniSearch added as the relevance-ranking layer for non-mood queries. Pure ESM, zero deps, ~6 KB gzipped.