indexer-cli 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import type { ProjectId, SnapshotId, VectorRecord, VectorSearchFilters, VectorSearchResult, VectorStore } from '../core/types.js';
1
+ import type { ProjectId, SnapshotId, VectorRecord, VectorSearchFilters, VectorSearchResult, VectorStore } from "../core/types.js";
2
2
  export interface LanceDbVectorStoreOptions {
3
3
  dbPath: string;
4
4
  vectorSize: number;
@@ -35,20 +35,20 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.LanceDbVectorStore = exports.REQUIRED_COLUMNS = void 0;
37
37
  const node_fs_1 = require("node:fs");
38
- const lancedb = __importStar(require("vectordb"));
38
+ const lancedb = __importStar(require("@lancedb/lancedb"));
39
39
  const logger_js_1 = require("../core/logger.js");
40
- const logger = new logger_js_1.SystemLogger('vector-lancedb');
40
+ const logger = new logger_js_1.SystemLogger("vector-lancedb");
41
41
  exports.REQUIRED_COLUMNS = [
42
- 'project_id',
43
- 'chunk_id',
44
- 'snapshot_id',
45
- 'file_path',
46
- 'start_line',
47
- 'end_line',
48
- 'content_hash',
49
- 'chunk_type',
50
- 'primary_symbol',
51
- 'vector',
42
+ "project_id",
43
+ "chunk_id",
44
+ "snapshot_id",
45
+ "file_path",
46
+ "start_line",
47
+ "end_line",
48
+ "content_hash",
49
+ "chunk_type",
50
+ "primary_symbol",
51
+ "vector",
52
52
  ];
53
53
  const COPY_VECTORS_QUERY_LIMIT = 1_000_000;
54
54
  class LanceDbVectorStore {
@@ -64,7 +64,7 @@ class LanceDbVectorStore {
64
64
  constructor(options) {
65
65
  this.dbPath = options.dbPath;
66
66
  this.vectorSize = options.vectorSize;
67
- this.tableName = options.tableName ?? 'vectors';
67
+ this.tableName = options.tableName ?? "vectors";
68
68
  this.cacheTTL = options.cacheTTL ?? 5 * 60 * 1000;
69
69
  }
70
70
  async initialize() {
@@ -94,7 +94,7 @@ class LanceDbVectorStore {
94
94
  }
95
95
  async upsert(vectors) {
96
96
  await this.runSerialized(async () => {
97
- await this.withTransientIoRetry('upsert', async () => {
97
+ await this.withTransientIoRetry("upsert", async () => {
98
98
  if (vectors.length === 0) {
99
99
  return;
100
100
  }
@@ -112,8 +112,8 @@ class LanceDbVectorStore {
112
112
  start_line: vector.startLine,
113
113
  end_line: vector.endLine,
114
114
  content_hash: vector.contentHash,
115
- chunk_type: vector.chunkType ?? '',
116
- primary_symbol: vector.primarySymbol ?? '',
115
+ chunk_type: vector.chunkType ?? "",
116
+ primary_symbol: vector.primarySymbol ?? "",
117
117
  vector: Array.from(vector.embedding),
118
118
  }));
119
119
  await this.table.add(data);
@@ -123,9 +123,9 @@ class LanceDbVectorStore {
123
123
  }
124
124
  async search(queryEmbedding, topK, filters) {
125
125
  return this.runSerialized(async () => {
126
- return this.withTransientIoRetry('search', async () => {
126
+ return this.withTransientIoRetry("search", async () => {
127
127
  if (!filters.projectId) {
128
- throw new Error('projectId is required in filters for search');
128
+ throw new Error("projectId is required in filters for search");
129
129
  }
130
130
  if (!this.initialized) {
131
131
  await this.initialize();
@@ -135,42 +135,45 @@ class LanceDbVectorStore {
135
135
  const prefilter = await this.buildPrefilter(filters);
136
136
  let results;
137
137
  if (prefilter &&
138
- (typeof this.table.query === 'function' || typeof this.table.filter === 'function')) {
139
- const rows = typeof this.table.query === 'function'
138
+ (typeof this.table.query === "function" ||
139
+ typeof this.table.filter === "function")) {
140
+ const rows = typeof this.table.query === "function"
140
141
  ? await this.table
141
142
  .query()
142
143
  .where(prefilter)
143
144
  .limit(COPY_VECTORS_QUERY_LIMIT)
144
145
  .select([
145
- 'chunk_id',
146
- 'snapshot_id',
147
- 'file_path',
148
- 'start_line',
149
- 'end_line',
150
- 'content_hash',
151
- 'chunk_type',
152
- 'primary_symbol',
153
- 'vector',
146
+ "chunk_id",
147
+ "snapshot_id",
148
+ "file_path",
149
+ "start_line",
150
+ "end_line",
151
+ "content_hash",
152
+ "chunk_type",
153
+ "primary_symbol",
154
+ "vector",
154
155
  ])
155
156
  .toArray({ batchSize: 1024 })
156
157
  : await this.table
157
158
  .filter(prefilter)
158
159
  .limit(COPY_VECTORS_QUERY_LIMIT)
159
160
  .select([
160
- 'chunk_id',
161
- 'snapshot_id',
162
- 'file_path',
163
- 'start_line',
164
- 'end_line',
165
- 'content_hash',
166
- 'chunk_type',
167
- 'primary_symbol',
168
- 'vector',
161
+ "chunk_id",
162
+ "snapshot_id",
163
+ "file_path",
164
+ "start_line",
165
+ "end_line",
166
+ "content_hash",
167
+ "chunk_type",
168
+ "primary_symbol",
169
+ "vector",
169
170
  ])
170
- .execute();
171
+ .toArray();
171
172
  results = rows
172
173
  .map((row) => {
173
- const vector = Array.isArray(row.vector) ? row.vector : Array.from(row.vector ?? []);
174
+ const vector = Array.isArray(row.vector)
175
+ ? row.vector
176
+ : Array.from(row.vector ?? []);
174
177
  return {
175
178
  ...row,
176
179
  _distance: this.euclideanDistance(queryEmbedding, vector),
@@ -182,8 +185,8 @@ class LanceDbVectorStore {
182
185
  else {
183
186
  const searchQuery = this.table.search(queryEmbedding).limit(topK);
184
187
  results = prefilter
185
- ? await searchQuery.where(prefilter).execute()
186
- : await searchQuery.execute();
188
+ ? await searchQuery.where(prefilter).toArray()
189
+ : await searchQuery.toArray();
187
190
  }
188
191
  return results.map((result) => ({
189
192
  chunkId: result.chunk_id,
@@ -192,19 +195,24 @@ class LanceDbVectorStore {
192
195
  startLine: result.start_line,
193
196
  endLine: result.end_line,
194
197
  contentHash: result.content_hash,
195
- chunkType: typeof result.chunk_type === 'string' ? result.chunk_type : undefined,
196
- primarySymbol: typeof result.primary_symbol === 'string' ? result.primary_symbol : undefined,
197
- score: 1 / (1 + (typeof result._distance === 'number' ? result._distance : 0)),
198
- distance: typeof result._distance === 'number' ? result._distance : 0,
198
+ chunkType: typeof result.chunk_type === "string"
199
+ ? result.chunk_type
200
+ : undefined,
201
+ primarySymbol: typeof result.primary_symbol === "string"
202
+ ? result.primary_symbol
203
+ : undefined,
204
+ score: 1 /
205
+ (1 + (typeof result._distance === "number" ? result._distance : 0)),
206
+ distance: typeof result._distance === "number" ? result._distance : 0,
199
207
  }));
200
208
  });
201
209
  });
202
210
  }
203
211
  async countVectors(filters) {
204
212
  return this.runSerialized(async () => {
205
- return this.withTransientIoRetry('countVectors', async () => {
213
+ return this.withTransientIoRetry("countVectors", async () => {
206
214
  if (!filters.projectId) {
207
- throw new Error('projectId is required in filters for countVectors');
215
+ throw new Error("projectId is required in filters for countVectors");
208
216
  }
209
217
  if (!this.initialized) {
210
218
  await this.initialize();
@@ -212,39 +220,44 @@ class LanceDbVectorStore {
212
220
  await this.refreshCacheIfNeeded();
213
221
  await this.reopenTableIfNeeded();
214
222
  const prefilter = await this.buildPrefilter(filters);
215
- if (typeof this.table.countRows === 'function') {
216
- return prefilter ? await this.table.countRows(prefilter) : await this.table.countRows();
223
+ if (typeof this.table.countRows === "function") {
224
+ return prefilter
225
+ ? await this.table.countRows(prefilter)
226
+ : await this.table.countRows();
217
227
  }
218
- if (typeof this.table.filter === 'function') {
219
- logger.warn('[LanceDB] countRows not available, falling back to filter-based count');
228
+ if (typeof this.table.filter === "function") {
229
+ logger.warn("[LanceDB] countRows not available, falling back to filter-based count");
220
230
  const results = await this.table
221
- .filter(prefilter || '1 = 1')
231
+ .filter(prefilter || "1 = 1")
222
232
  .limit(COPY_VECTORS_QUERY_LIMIT)
223
- .select(['chunk_id'])
224
- .execute();
233
+ .select(["chunk_id"])
234
+ .toArray();
225
235
  return results.length;
226
236
  }
227
- if (typeof this.table.query === 'function') {
228
- logger.warn('[LanceDB] countRows not available, falling back to query-based count');
237
+ if (typeof this.table.query === "function") {
238
+ logger.warn("[LanceDB] countRows not available, falling back to query-based count");
229
239
  const query = this.table.query();
230
240
  const results = prefilter
231
241
  ? await query
232
242
  .where(prefilter)
233
243
  .limit(COPY_VECTORS_QUERY_LIMIT)
234
- .select(['chunk_id'])
244
+ .select(["chunk_id"])
235
245
  .toArray({ batchSize: 1024 })
236
- : await query.limit(COPY_VECTORS_QUERY_LIMIT).select(['chunk_id']).toArray({
246
+ : await query
247
+ .limit(COPY_VECTORS_QUERY_LIMIT)
248
+ .select(["chunk_id"])
249
+ .toArray({
237
250
  batchSize: 1024,
238
251
  });
239
252
  return results.length;
240
253
  }
241
- throw new Error('[LanceDB] countVectors requires countRows(), filter(), or query() support for exhaustive results');
254
+ throw new Error("[LanceDB] countVectors requires countRows(), filter(), or query() support for exhaustive results");
242
255
  });
243
256
  });
244
257
  }
245
258
  async deleteBySnapshot(projectId, snapshotId) {
246
259
  await this.runSerialized(async () => {
247
- await this.withTransientIoRetry('deleteBySnapshot', async () => {
260
+ await this.withTransientIoRetry("deleteBySnapshot", async () => {
248
261
  void projectId;
249
262
  if (!this.initialized) {
250
263
  await this.initialize();
@@ -255,53 +268,53 @@ class LanceDbVectorStore {
255
268
  }
256
269
  async copyVectors(projectId, fromSnapshotId, toSnapshotId, excludeFilePaths) {
257
270
  await this.runSerialized(async () => {
258
- await this.withTransientIoRetry('copyVectors', async () => {
271
+ await this.withTransientIoRetry("copyVectors", async () => {
259
272
  if (!this.initialized) {
260
273
  await this.initialize();
261
274
  }
262
275
  await this.refreshCacheIfNeeded();
263
276
  await this.reopenTableIfNeeded();
264
277
  const filter = `snapshot_id = '${this.escapeSqlLiteral(fromSnapshotId.toString())}'`;
265
- const results = typeof this.table.query === 'function'
278
+ const results = typeof this.table.query === "function"
266
279
  ? await this.table
267
280
  .query()
268
281
  .where(filter)
269
282
  .limit(COPY_VECTORS_QUERY_LIMIT)
270
283
  .select([
271
- 'project_id',
272
- 'chunk_id',
273
- 'snapshot_id',
274
- 'file_path',
275
- 'start_line',
276
- 'end_line',
277
- 'content_hash',
278
- 'chunk_type',
279
- 'primary_symbol',
280
- 'vector',
284
+ "project_id",
285
+ "chunk_id",
286
+ "snapshot_id",
287
+ "file_path",
288
+ "start_line",
289
+ "end_line",
290
+ "content_hash",
291
+ "chunk_type",
292
+ "primary_symbol",
293
+ "vector",
281
294
  ])
282
295
  .toArray({ batchSize: 1024 })
283
- : typeof this.table.filter === 'function'
296
+ : typeof this.table.filter === "function"
284
297
  ? await this.table
285
298
  .filter(filter)
286
299
  .limit(COPY_VECTORS_QUERY_LIMIT)
287
300
  .select([
288
- 'project_id',
289
- 'chunk_id',
290
- 'snapshot_id',
291
- 'file_path',
292
- 'start_line',
293
- 'end_line',
294
- 'content_hash',
295
- 'chunk_type',
296
- 'primary_symbol',
297
- 'vector',
301
+ "project_id",
302
+ "chunk_id",
303
+ "snapshot_id",
304
+ "file_path",
305
+ "start_line",
306
+ "end_line",
307
+ "content_hash",
308
+ "chunk_type",
309
+ "primary_symbol",
310
+ "vector",
298
311
  ])
299
- .execute()
312
+ .toArray()
300
313
  : await this.table
301
314
  .search(Array(this.vectorSize).fill(0))
302
315
  .limit(COPY_VECTORS_QUERY_LIMIT)
303
316
  .where(filter)
304
- .execute();
317
+ .toArray();
305
318
  const filtered = results.filter((row) => !excludeFilePaths.includes(String(row.file_path)));
306
319
  if (filtered.length === 0) {
307
320
  return;
@@ -314,8 +327,8 @@ class LanceDbVectorStore {
314
327
  start_line: row.start_line,
315
328
  end_line: row.end_line,
316
329
  content_hash: row.content_hash,
317
- chunk_type: row.chunk_type ?? '',
318
- primary_symbol: row.primary_symbol ?? '',
330
+ chunk_type: row.chunk_type ?? "",
331
+ primary_symbol: row.primary_symbol ?? "",
319
332
  vector: row.vector,
320
333
  })));
321
334
  });
@@ -323,7 +336,7 @@ class LanceDbVectorStore {
323
336
  }
324
337
  async deleteByProject(projectId) {
325
338
  await this.runSerialized(async () => {
326
- await this.withTransientIoRetry('deleteByProject', async () => {
339
+ await this.withTransientIoRetry("deleteByProject", async () => {
327
340
  void projectId;
328
341
  await this.close();
329
342
  if (!(0, node_fs_1.existsSync)(this.dbPath)) {
@@ -340,10 +353,10 @@ class LanceDbVectorStore {
340
353
  }
341
354
  isTransientIoError(error) {
342
355
  const message = error instanceof Error ? error.message : String(error);
343
- return (message.includes('LanceError(IO)') &&
344
- (message.includes('Not found:') ||
345
- message.includes('Did not find any data files') ||
346
- message.includes('/vectors.lance/data/')));
356
+ return (message.includes("LanceError(IO)") &&
357
+ (message.includes("Not found:") ||
358
+ message.includes("Did not find any data files") ||
359
+ message.includes("/vectors.lance/data/")));
347
360
  }
348
361
  async withTransientIoRetry(operationName, operation) {
349
362
  try {
@@ -397,10 +410,10 @@ class LanceDbVectorStore {
397
410
  .filter((chunkType) => chunkType.length > 0)
398
411
  .map((chunkType) => `'${this.escapeSqlLiteral(chunkType)}'`);
399
412
  if (normalizedChunkTypes.length > 0) {
400
- conditions.push(`chunk_type IN (${normalizedChunkTypes.join(', ')})`);
413
+ conditions.push(`chunk_type IN (${normalizedChunkTypes.join(", ")})`);
401
414
  }
402
415
  }
403
- return conditions.join(' AND ');
416
+ return conditions.join(" AND ");
404
417
  }
405
418
  euclideanDistance(a, b) {
406
419
  const length = Math.min(a.length, b.length);
@@ -414,15 +427,15 @@ class LanceDbVectorStore {
414
427
  async createTable() {
415
428
  this.table = await this.db.createTable(this.tableName, [
416
429
  {
417
- project_id: '',
418
- chunk_id: '',
419
- snapshot_id: '',
420
- file_path: '',
430
+ project_id: "",
431
+ chunk_id: "",
432
+ snapshot_id: "",
433
+ file_path: "",
421
434
  start_line: 0,
422
435
  end_line: 0,
423
- content_hash: '',
424
- chunk_type: '',
425
- primary_symbol: '',
436
+ content_hash: "",
437
+ chunk_type: "",
438
+ primary_symbol: "",
426
439
  vector: Array(this.vectorSize).fill(0),
427
440
  },
428
441
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"vectors.js","sourceRoot":"","sources":["../../src/storage/vectors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vectors.js","sourceRoot":"","sources":["../../src/storage/vectors.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "indexer-cli",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Lightweight CLI project indexer with semantic search via Ollama",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -10,6 +10,7 @@
10
10
  "files": [
11
11
  "bin",
12
12
  "dist",
13
+ "scripts",
13
14
  "README.md"
14
15
  ],
15
16
  "engines": {
@@ -30,8 +31,8 @@
30
31
  "postinstall": "node scripts/postinstall.js"
31
32
  },
32
33
  "dependencies": {
33
- "@apache-arrow/ts": "^14.0.2",
34
- "apache-arrow": "^14.0.2",
34
+ "@apache-arrow/ts": "^18.1.0",
35
+ "apache-arrow": "^18.1.0",
35
36
  "better-sqlite3": "^12.0.0",
36
37
  "commander": "^12.1.0",
37
38
  "p-limit": "^4.0.0",
@@ -41,7 +42,7 @@
41
42
  "tree-sitter-python": "^0.21.0",
42
43
  "tree-sitter-ruby": "^0.23.1",
43
44
  "ts-morph": "^21.0.0",
44
- "vectordb": "^0.21.2"
45
+ "@lancedb/lancedb": "^0.27.2"
45
46
  },
46
47
  "devDependencies": {
47
48
  "@types/better-sqlite3": "^7.6.12",
@@ -0,0 +1,15 @@
1
+ try {
2
+ require("better-sqlite3");
3
+ } catch {
4
+ console.error(
5
+ [
6
+ "",
7
+ "\u26A0 indexer-cli: native modules could not be loaded.",
8
+ " This usually means build tools (python3, make, C++ compiler) are missing.",
9
+ "",
10
+ " Install build tools, then run:",
11
+ " npm install -g indexer-cli",
12
+ "",
13
+ ].join("\n"),
14
+ );
15
+ }
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ echo "→ Building..."
5
+ npm run build
6
+
7
+ echo "→ Running tests..."
8
+ npm test
9
+
10
+ echo "→ Bumping patch version..."
11
+ npm version patch -m "chore(release): %s"
12
+
13
+ echo "→ Publishing to npm..."
14
+ npm publish --access public
15
+
16
+ VERSION=$(node -p "require('./package.json').version")
17
+ echo "✓ Published indexer-cli@${VERSION}"