GitNexus/gitnexus/test/unit/exact-search.test.ts
Gergő Magyar 2a0c97c178
fix: add platform-aware semantic fallback (#1150)
* fix: add platform-aware semantic fallback

Make VECTOR an optional capability so Windows analysis remains stable while semantic embeddings can fall back to exact scan when native vector indexing is unavailable.

Made-with: Cursor

* fix: remove stale vector pool import

Keep the merge with main lint-clean after VECTOR loading moved out of the read pool.
2026-04-28 12:21:25 +01:00

23 lines
699 B
TypeScript

import { describe, expect, it } from 'vitest';
import { rankExactEmbeddingRows } from '../../src/core/embeddings/exact-search.js';
describe('rankExactEmbeddingRows', () => {
it('orders rows by cosine distance and applies the limit', () => {
const rows = [
{ nodeId: 'Function:b', chunkIndex: 0, startLine: 1, endLine: 1, embedding: [0, 1] },
{ nodeId: 'Function:a', chunkIndex: 0, startLine: 1, endLine: 1, embedding: [1, 0] },
];
const ranked = rankExactEmbeddingRows(rows, [1, 0], 1, 2);
expect(ranked).toEqual([
{
nodeId: 'Function:a',
chunkIndex: 0,
startLine: 1,
endLine: 1,
distance: 0,
},
]);
});
});