'use strict'; const test = require('node:test'); const assert = require('node:assert/strict'); const { createReranker } = require('../src/reranker'); test('reranker: returns LLM-selected candidates', async () => { const llm = { async chat() { return { content: '2,0' }; } }; const candidates = [{ question: 'a' }, { question: 'b' }, { question: 'c' }]; const out = await createReranker(llm).rerank('q', candidates, 2); assert.deepEqual(out.map((x) => x.question), ['c', 'a']); }); test('reranker: short list passes through', async () => { const candidates = [{ question: 'a' }]; const out = await createReranker({ chat: async () => ({ content: '' }) }).rerank('q', candidates, 2); assert.deepEqual(out, candidates); });