test(search): strengthen stability test to detect broken tie-break

The "results are stable" test queried "budget", a single-match query,
so the sort had nothing to reorder and would pass even with a broken
or removed ascending-id tie-break. Switch to "muller", where docs 1
and 5 tie on score, so the assertion actually exercises the tie-break.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
Lucas Winther
2026-09-24 08:55:59 +02:00
co-authored by Claude Opus 5
parent a630944a3c
commit 2b82800c23
+9 -2
View File
@@ -77,8 +77,15 @@ describe("Search recall", () => {
});
test("results are stable across repeated identical searches", () => {
const first = rankRecords(CORPUS, "budget", FIELDS).map((r) => r.record.id);
const second = rankRecords(CORPUS, "budget", FIELDS).map((r) => r.record.id);
// Uses "muller" deliberately: docs 1 and 5 share the identical person
// string, so both score exactly 0.33 and the ORDER is decided purely by
// the ascending-id tie-break. A single-result query (e.g. "budget") would
// pass this assertion even if the tie-break were removed entirely, since
// a one-element array cannot be reordered.
const first = rankRecords(CORPUS, "muller", FIELDS).map((r) => r.record.id);
const second = rankRecords(CORPUS, "muller", FIELDS).map((r) => r.record.id);
expect(first).toHaveLength(2);
expect(first).toEqual([1, 5]);
expect(first).toEqual(second);
});