@mastra/pg 0.3.4 → 0.4.0-alpha.1

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.
@@ -12,29 +12,23 @@ describe('PgVector', () => {
12
12
 
13
13
  beforeAll(async () => {
14
14
  // Initialize PgVector
15
- vectorDB = new PgVector(connectionString);
15
+ vectorDB = new PgVector({ connectionString });
16
16
  });
17
17
 
18
18
  afterAll(async () => {
19
19
  // Clean up test tables
20
- await vectorDB.deleteIndex(testIndexName);
20
+ await vectorDB.deleteIndex({ indexName: testIndexName });
21
21
  await vectorDB.disconnect();
22
22
  });
23
23
 
24
24
  // --- Validation tests ---
25
25
  describe('Validation', () => {
26
- it('throws if connectionString is empty (string)', () => {
27
- expect(() => new PgVector('')).toThrow(/connectionString must be provided and cannot be empty/);
28
- });
29
- it('throws if connectionString is empty (object)', () => {
26
+ it('throws if connectionString is empty', () => {
30
27
  expect(() => new PgVector({ connectionString: '' })).toThrow(
31
28
  /connectionString must be provided and cannot be empty/,
32
29
  );
33
30
  });
34
- it('does not throw on non-empty connection string (string)', () => {
35
- expect(() => new PgVector(connectionString)).not.toThrow();
36
- });
37
- it('does not throw on non-empty connection string (object)', () => {
31
+ it('does not throw on non-empty connection string', () => {
38
32
  expect(() => new PgVector({ connectionString })).not.toThrow();
39
33
  });
40
34
  });
@@ -43,19 +37,19 @@ describe('PgVector', () => {
43
37
  describe('Index Management', () => {
44
38
  describe('createIndex', () => {
45
39
  afterAll(async () => {
46
- await vectorDB.deleteIndex(testIndexName2);
40
+ await vectorDB.deleteIndex({ indexName: testIndexName2 });
47
41
  });
48
42
 
49
43
  it('should create a new vector table with specified dimensions', async () => {
50
44
  await vectorDB.createIndex({ indexName: testIndexName, dimension: 3 });
51
- const stats = await vectorDB.describeIndex(testIndexName);
45
+ const stats = await vectorDB.describeIndex({ indexName: testIndexName });
52
46
  expect(stats?.dimension).toBe(3);
53
47
  expect(stats?.count).toBe(0);
54
48
  });
55
49
 
56
50
  it('should create index with specified metric', async () => {
57
51
  await vectorDB.createIndex({ indexName: testIndexName2, dimension: 3, metric: 'euclidean' });
58
- const stats = await vectorDB.describeIndex(testIndexName2);
52
+ const stats = await vectorDB.describeIndex({ indexName: testIndexName2 });
59
53
  expect(stats.metric).toBe('euclidean');
60
54
  });
61
55
 
@@ -70,7 +64,7 @@ describe('PgVector', () => {
70
64
  metric: 'cosine',
71
65
  indexConfig: { type: 'flat' },
72
66
  });
73
- const stats = await vectorDB.describeIndex(testIndexName2);
67
+ const stats = await vectorDB.describeIndex({ indexName: testIndexName2 });
74
68
  expect(stats.type).toBe('flat');
75
69
  });
76
70
 
@@ -81,7 +75,7 @@ describe('PgVector', () => {
81
75
  metric: 'cosine',
82
76
  indexConfig: { type: 'hnsw', hnsw: { m: 16, efConstruction: 64 } }, // Any reasonable values work
83
77
  });
84
- const stats = await vectorDB.describeIndex(testIndexName2);
78
+ const stats = await vectorDB.describeIndex({ indexName: testIndexName2 });
85
79
  expect(stats.type).toBe('hnsw');
86
80
  expect(stats.config.m).toBe(16);
87
81
  });
@@ -93,7 +87,7 @@ describe('PgVector', () => {
93
87
  metric: 'cosine',
94
88
  indexConfig: { type: 'ivfflat', ivf: { lists: 100 } },
95
89
  });
96
- const stats = await vectorDB.describeIndex(testIndexName2);
90
+ const stats = await vectorDB.describeIndex({ indexName: testIndexName2 });
97
91
  expect(stats.type).toBe('ivfflat');
98
92
  expect(stats.config.lists).toBe(100);
99
93
  });
@@ -106,7 +100,7 @@ describe('PgVector', () => {
106
100
  });
107
101
 
108
102
  afterAll(async () => {
109
- await vectorDB.deleteIndex(indexName);
103
+ await vectorDB.deleteIndex({ indexName });
110
104
  });
111
105
 
112
106
  it('should list all vector tables', async () => {
@@ -115,7 +109,7 @@ describe('PgVector', () => {
115
109
  });
116
110
 
117
111
  it('should not return created index in list if it is deleted', async () => {
118
- await vectorDB.deleteIndex(indexName);
112
+ await vectorDB.deleteIndex({ indexName });
119
113
  const indexes = await vectorDB.listIndexes();
120
114
  expect(indexes).not.toContain(indexName);
121
115
  });
@@ -128,7 +122,7 @@ describe('PgVector', () => {
128
122
  });
129
123
 
130
124
  afterAll(async () => {
131
- await vectorDB.deleteIndex(indexName);
125
+ await vectorDB.deleteIndex({ indexName });
132
126
  });
133
127
 
134
128
  it('should return correct index stats', async () => {
@@ -139,7 +133,7 @@ describe('PgVector', () => {
139
133
  ];
140
134
  await vectorDB.upsert({ indexName, vectors });
141
135
 
142
- const stats = await vectorDB.describeIndex(indexName);
136
+ const stats = await vectorDB.describeIndex({ indexName });
143
137
  expect(stats).toEqual({
144
138
  type: 'ivfflat',
145
139
  config: {
@@ -152,7 +146,7 @@ describe('PgVector', () => {
152
146
  });
153
147
 
154
148
  it('should throw error for non-existent index', async () => {
155
- await expect(vectorDB.describeIndex('non_existent')).rejects.toThrow();
149
+ await expect(vectorDB.describeIndex({ indexName: 'non_existent' })).rejects.toThrow();
156
150
  });
157
151
  });
158
152
 
@@ -163,7 +157,7 @@ describe('PgVector', () => {
163
157
  });
164
158
 
165
159
  afterAll(async () => {
166
- await vectorDB.deleteIndex(indexName);
160
+ await vectorDB.deleteIndex({ indexName });
167
161
  });
168
162
 
169
163
  it('should build index with specified metric and config', async () => {
@@ -173,7 +167,7 @@ describe('PgVector', () => {
173
167
  indexConfig: { type: 'hnsw', hnsw: { m: 16, efConstruction: 64 } },
174
168
  });
175
169
 
176
- const stats = await vectorDB.describeIndex(indexName);
170
+ const stats = await vectorDB.describeIndex({ indexName });
177
171
  expect(stats.type).toBe('hnsw');
178
172
  expect(stats.metric).toBe('cosine');
179
173
  expect(stats.config.m).toBe(16);
@@ -186,7 +180,7 @@ describe('PgVector', () => {
186
180
  indexConfig: { type: 'ivfflat', ivf: { lists: 100 } },
187
181
  });
188
182
 
189
- const stats = await vectorDB.describeIndex(indexName);
183
+ const stats = await vectorDB.describeIndex({ indexName });
190
184
  expect(stats.type).toBe('ivfflat');
191
185
  expect(stats.metric).toBe('euclidean');
192
186
  expect(stats.config.lists).toBe(100);
@@ -202,7 +196,7 @@ describe('PgVector', () => {
202
196
  });
203
197
 
204
198
  afterEach(async () => {
205
- await vectorDB.deleteIndex(testIndexName);
199
+ await vectorDB.deleteIndex({ indexName: testIndexName });
206
200
  });
207
201
 
208
202
  it('should insert new vectors', async () => {
@@ -213,7 +207,7 @@ describe('PgVector', () => {
213
207
  const ids = await vectorDB.upsert({ indexName: testIndexName, vectors });
214
208
 
215
209
  expect(ids).toHaveLength(2);
216
- const stats = await vectorDB.describeIndex(testIndexName);
210
+ const stats = await vectorDB.describeIndex({ indexName: testIndexName });
217
211
  expect(stats.count).toBe(2);
218
212
  });
219
213
 
@@ -267,7 +261,7 @@ describe('PgVector', () => {
267
261
  });
268
262
 
269
263
  afterEach(async () => {
270
- await vectorDB.deleteIndex(testIndexName);
264
+ await vectorDB.deleteIndex({ indexName: testIndexName });
271
265
  });
272
266
 
273
267
  it('should update the vector by id', async () => {
@@ -285,7 +279,7 @@ describe('PgVector', () => {
285
279
  metadata: newMetaData,
286
280
  };
287
281
 
288
- await vectorDB.updateVector(testIndexName, idToBeUpdated, update);
282
+ await vectorDB.updateVector({ indexName: testIndexName, id: idToBeUpdated, update });
289
283
 
290
284
  const results: QueryResult[] = await vectorDB.query({
291
285
  indexName: testIndexName,
@@ -311,7 +305,7 @@ describe('PgVector', () => {
311
305
  metadata: newMetaData,
312
306
  };
313
307
 
314
- await vectorDB.updateVector(testIndexName, idToBeUpdated, update);
308
+ await vectorDB.updateVector({ indexName: testIndexName, id: idToBeUpdated, update });
315
309
 
316
310
  const results: QueryResult[] = await vectorDB.query({
317
311
  indexName: testIndexName,
@@ -335,7 +329,7 @@ describe('PgVector', () => {
335
329
  vector: newVector,
336
330
  };
337
331
 
338
- await vectorDB.updateVector(testIndexName, idToBeUpdated, update);
332
+ await vectorDB.updateVector({ indexName: testIndexName, id: idToBeUpdated, update });
339
333
 
340
334
  const results: QueryResult[] = await vectorDB.query({
341
335
  indexName: testIndexName,
@@ -348,7 +342,9 @@ describe('PgVector', () => {
348
342
  });
349
343
 
350
344
  it('should throw exception when no updates are given', async () => {
351
- await expect(vectorDB.updateVector(testIndexName, 'id', {})).rejects.toThrow('No updates provided');
345
+ await expect(vectorDB.updateVector({ indexName: testIndexName, id: 'id', update: {} })).rejects.toThrow(
346
+ 'No updates provided',
347
+ );
352
348
  });
353
349
  });
354
350
 
@@ -364,7 +360,7 @@ describe('PgVector', () => {
364
360
  });
365
361
 
366
362
  afterEach(async () => {
367
- await vectorDB.deleteIndex(testIndexName);
363
+ await vectorDB.deleteIndex({ indexName: testIndexName });
368
364
  });
369
365
 
370
366
  it('should delete the vector by id', async () => {
@@ -372,7 +368,7 @@ describe('PgVector', () => {
372
368
  expect(ids).toHaveLength(3);
373
369
  const idToBeDeleted = ids[0];
374
370
 
375
- await vectorDB.deleteVector(testIndexName, idToBeDeleted);
371
+ await vectorDB.deleteVector({ indexName: testIndexName, id: idToBeDeleted });
376
372
 
377
373
  const results: QueryResult[] = await vectorDB.query({
378
374
  indexName: testIndexName,
@@ -390,7 +386,7 @@ describe('PgVector', () => {
390
386
  const indexName = `test_query_2_${indexType}`;
391
387
  beforeAll(async () => {
392
388
  try {
393
- await vectorDB.deleteIndex(indexName);
389
+ await vectorDB.deleteIndex({ indexName });
394
390
  } catch {
395
391
  // Ignore if doesn't exist
396
392
  }
@@ -398,7 +394,7 @@ describe('PgVector', () => {
398
394
  });
399
395
 
400
396
  beforeEach(async () => {
401
- await vectorDB.truncateIndex(indexName);
397
+ await vectorDB.truncateIndex({ indexName });
402
398
  const vectors = [
403
399
  [1, 0, 0],
404
400
  [0.8, 0.2, 0],
@@ -413,7 +409,7 @@ describe('PgVector', () => {
413
409
  });
414
410
 
415
411
  afterAll(async () => {
416
- await vectorDB.deleteIndex(indexName);
412
+ await vectorDB.deleteIndex({ indexName });
417
413
  });
418
414
 
419
415
  it('should return closest vectors', async () => {
@@ -451,7 +447,7 @@ describe('PgVector', () => {
451
447
  const indexName = 'test_query_filters';
452
448
  beforeAll(async () => {
453
449
  try {
454
- await vectorDB.deleteIndex(indexName);
450
+ await vectorDB.deleteIndex({ indexName });
455
451
  } catch {
456
452
  // Ignore if doesn't exist
457
453
  }
@@ -459,7 +455,7 @@ describe('PgVector', () => {
459
455
  });
460
456
 
461
457
  beforeEach(async () => {
462
- await vectorDB.truncateIndex(indexName);
458
+ await vectorDB.truncateIndex({ indexName });
463
459
  const vectors = [
464
460
  [1, 0.1, 0],
465
461
  [0.9, 0.2, 0],
@@ -509,7 +505,7 @@ describe('PgVector', () => {
509
505
  });
510
506
 
511
507
  afterAll(async () => {
512
- await vectorDB.deleteIndex(indexName);
508
+ await vectorDB.deleteIndex({ indexName });
513
509
  });
514
510
 
515
511
  // Numeric Comparison Tests
@@ -1346,7 +1342,7 @@ describe('PgVector', () => {
1346
1342
  });
1347
1343
 
1348
1344
  afterAll(async () => {
1349
- await vectorDB.deleteIndex(testIndexName);
1345
+ await vectorDB.deleteIndex({ indexName: testIndexName });
1350
1346
  });
1351
1347
 
1352
1348
  it('should handle non-existent index queries', async () => {
@@ -1379,7 +1375,7 @@ describe('PgVector', () => {
1379
1375
  ).resolves.not.toThrow();
1380
1376
 
1381
1377
  // Cleanup
1382
- await vectorDB.deleteIndex(duplicateIndexName);
1378
+ await vectorDB.deleteIndex({ indexName: duplicateIndexName });
1383
1379
  });
1384
1380
  });
1385
1381
 
@@ -1765,7 +1761,7 @@ describe('PgVector', () => {
1765
1761
  });
1766
1762
 
1767
1763
  afterAll(async () => {
1768
- await vectorDB.deleteIndex(indexName);
1764
+ await vectorDB.deleteIndex({ indexName });
1769
1765
  });
1770
1766
 
1771
1767
  it('should use default ef value', async () => {
@@ -1810,7 +1806,7 @@ describe('PgVector', () => {
1810
1806
  });
1811
1807
 
1812
1808
  afterAll(async () => {
1813
- await vectorDB.deleteIndex(indexName);
1809
+ await vectorDB.deleteIndex({ indexName });
1814
1810
  });
1815
1811
 
1816
1812
  it('should use default probe value', async () => {
@@ -1837,124 +1833,6 @@ describe('PgVector', () => {
1837
1833
  });
1838
1834
  });
1839
1835
  });
1840
- describe('Deprecation Warnings', () => {
1841
- const indexName = 'testdeprecationwarnings';
1842
-
1843
- const indexName2 = 'testdeprecationwarnings2';
1844
-
1845
- let warnSpy;
1846
-
1847
- beforeAll(async () => {
1848
- await vectorDB.createIndex({ indexName: indexName, dimension: 3 });
1849
- });
1850
-
1851
- afterAll(async () => {
1852
- await vectorDB.deleteIndex(indexName);
1853
- await vectorDB.deleteIndex(indexName2);
1854
- });
1855
-
1856
- beforeEach(async () => {
1857
- warnSpy = vi.spyOn(vectorDB['logger'], 'warn');
1858
- });
1859
-
1860
- afterEach(async () => {
1861
- warnSpy.mockRestore();
1862
- await vectorDB.deleteIndex(indexName2);
1863
- });
1864
-
1865
- it('should show deprecation warning when using individual args for createIndex', async () => {
1866
- await vectorDB.createIndex(indexName2, 3, 'cosine');
1867
-
1868
- expect(warnSpy).toHaveBeenCalledWith(
1869
- expect.stringContaining('Deprecation Warning: Passing individual arguments to createIndex() is deprecated'),
1870
- );
1871
- });
1872
-
1873
- it('should show deprecation warning when using individual args for upsert', async () => {
1874
- await vectorDB.upsert(indexName, [[1, 2, 3]], [{ test: 'data' }]);
1875
-
1876
- expect(warnSpy).toHaveBeenCalledWith(
1877
- expect.stringContaining('Deprecation Warning: Passing individual arguments to upsert() is deprecated'),
1878
- );
1879
- });
1880
-
1881
- it('should show deprecation warning when using individual args for query', async () => {
1882
- await vectorDB.query(indexName, [1, 2, 3], 5);
1883
-
1884
- expect(warnSpy).toHaveBeenCalledWith(
1885
- expect.stringContaining('Deprecation Warning: Passing individual arguments to query() is deprecated'),
1886
- );
1887
- });
1888
-
1889
- it('should show deprecation warning when using individual args for buildIndex', async () => {
1890
- await vectorDB.buildIndex(indexName, 'cosine', { type: 'flat' });
1891
-
1892
- expect(warnSpy).toHaveBeenCalledWith(
1893
- expect.stringContaining('Deprecation Warning: Passing individual arguments to buildIndex() is deprecated'),
1894
- );
1895
- });
1896
-
1897
- it('should not show deprecation warning when using object param for buildIndex', async () => {
1898
- await vectorDB.buildIndex({
1899
- indexName: indexName,
1900
- metric: 'cosine',
1901
- indexConfig: { type: 'flat' },
1902
- });
1903
-
1904
- expect(warnSpy).not.toHaveBeenCalled();
1905
- });
1906
-
1907
- it('should not show deprecation warning when using object param for query', async () => {
1908
- await vectorDB.query({
1909
- indexName,
1910
- queryVector: [1, 2, 3],
1911
- topK: 5,
1912
- });
1913
-
1914
- expect(warnSpy).not.toHaveBeenCalled();
1915
- });
1916
-
1917
- it('should not show deprecation warning when using object param for createIndex', async () => {
1918
- await vectorDB.createIndex({
1919
- indexName: indexName2,
1920
- dimension: 3,
1921
- metric: 'cosine',
1922
- });
1923
-
1924
- expect(warnSpy).not.toHaveBeenCalled();
1925
- });
1926
-
1927
- it('should not show deprecation warning when using object param for upsert', async () => {
1928
- await vectorDB.upsert({
1929
- indexName,
1930
- vectors: [[1, 2, 3]],
1931
- metadata: [{ test: 'data' }],
1932
- });
1933
-
1934
- expect(warnSpy).not.toHaveBeenCalled();
1935
- });
1936
-
1937
- it('should maintain backward compatibility with individual args', async () => {
1938
- // Query
1939
- const queryResults = await vectorDB.query(indexName, [1, 2, 3], 5);
1940
- expect(Array.isArray(queryResults)).toBe(true);
1941
-
1942
- // CreateIndex
1943
- await expect(vectorDB.createIndex(indexName2, 3, 'cosine')).resolves.not.toThrow();
1944
-
1945
- // Upsert
1946
- const upsertResults = await vectorDB.upsert({
1947
- indexName,
1948
- vectors: [[1, 2, 3]],
1949
- metadata: [{ test: 'data' }],
1950
- });
1951
- expect(Array.isArray(upsertResults)).toBe(true);
1952
- expect(upsertResults).toHaveLength(1);
1953
-
1954
- // BuildIndex
1955
- await expect(vectorDB.buildIndex(indexName, 'cosine', { type: 'flat' })).resolves.not.toThrow();
1956
- });
1957
- });
1958
1836
 
1959
1837
  describe('Concurrent Operations', () => {
1960
1838
  it('should handle concurrent index creation attempts', async () => {
@@ -1970,10 +1848,10 @@ describe('PgVector', () => {
1970
1848
  await expect(Promise.all(promises)).resolves.not.toThrow();
1971
1849
 
1972
1850
  // Verify only one index was actually created
1973
- const stats = await vectorDB.describeIndex(indexName);
1851
+ const stats = await vectorDB.describeIndex({ indexName });
1974
1852
  expect(stats.dimension).toBe(dimension);
1975
1853
 
1976
- await vectorDB.deleteIndex(indexName);
1854
+ await vectorDB.deleteIndex({ indexName });
1977
1855
  });
1978
1856
 
1979
1857
  it('should handle concurrent buildIndex attempts', async () => {
@@ -1992,10 +1870,10 @@ describe('PgVector', () => {
1992
1870
 
1993
1871
  await expect(Promise.all(promises)).resolves.not.toThrow();
1994
1872
 
1995
- const stats = await vectorDB.describeIndex(indexName);
1873
+ const stats = await vectorDB.describeIndex({ indexName });
1996
1874
  expect(stats.type).toBe('ivfflat');
1997
1875
 
1998
- await vectorDB.deleteIndex(indexName);
1876
+ await vectorDB.deleteIndex({ indexName });
1999
1877
  });
2000
1878
  });
2001
1879
 
@@ -2006,7 +1884,7 @@ describe('PgVector', () => {
2006
1884
 
2007
1885
  beforeAll(async () => {
2008
1886
  // Initialize default vectorDB first
2009
- vectorDB = new PgVector(connectionString);
1887
+ vectorDB = new PgVector({ connectionString });
2010
1888
 
2011
1889
  // Create schema using the default vectorDB connection
2012
1890
  const client = await vectorDB['pool'].connect();
@@ -2030,7 +1908,7 @@ describe('PgVector', () => {
2030
1908
  afterAll(async () => {
2031
1909
  // Clean up test tables and schema
2032
1910
  try {
2033
- await customSchemaVectorDB.deleteIndex('schema_test_vectors');
1911
+ await customSchemaVectorDB.deleteIndex({ indexName: 'schema_test_vectors' });
2034
1912
  } catch {
2035
1913
  // Ignore errors if index doesn't exist
2036
1914
  }
@@ -2053,11 +1931,6 @@ describe('PgVector', () => {
2053
1931
  });
2054
1932
 
2055
1933
  describe('Constructor', () => {
2056
- it('should accept connectionString directly', () => {
2057
- const db = new PgVector(connectionString);
2058
- expect(db).toBeInstanceOf(PgVector);
2059
- });
2060
-
2061
1934
  it('should accept config object with connectionString', () => {
2062
1935
  const db = new PgVector({ connectionString });
2063
1936
  expect(db).toBeInstanceOf(PgVector);
@@ -2075,12 +1948,12 @@ describe('PgVector', () => {
2075
1948
  beforeEach(async () => {
2076
1949
  // Clean up any existing indexes
2077
1950
  try {
2078
- await customSchemaVectorDB.deleteIndex(testIndexName);
1951
+ await customSchemaVectorDB.deleteIndex({ indexName: testIndexName });
2079
1952
  } catch {
2080
1953
  // Ignore if doesn't exist
2081
1954
  }
2082
1955
  try {
2083
- await vectorDB.deleteIndex(testIndexName);
1956
+ await vectorDB.deleteIndex({ indexName: testIndexName });
2084
1957
  } catch {
2085
1958
  // Ignore if doesn't exist
2086
1959
  }
@@ -2089,12 +1962,12 @@ describe('PgVector', () => {
2089
1962
  afterEach(async () => {
2090
1963
  // Clean up indexes after each test
2091
1964
  try {
2092
- await customSchemaVectorDB.deleteIndex(testIndexName);
1965
+ await customSchemaVectorDB.deleteIndex({ indexName: testIndexName });
2093
1966
  } catch {
2094
1967
  // Ignore if doesn't exist
2095
1968
  }
2096
1969
  try {
2097
- await vectorDB.deleteIndex(testIndexName);
1970
+ await vectorDB.deleteIndex({ indexName: testIndexName });
2098
1971
  } catch {
2099
1972
  // Ignore if doesn't exist
2100
1973
  }
@@ -2150,7 +2023,7 @@ describe('PgVector', () => {
2150
2023
  // Insert a vector
2151
2024
  await customSchemaVectorDB.upsert({ indexName: testIndexName, vectors: [[1, 2, 3]] });
2152
2025
  // Describe the index
2153
- const stats = await customSchemaVectorDB.describeIndex(testIndexName);
2026
+ const stats = await customSchemaVectorDB.describeIndex({ indexName: testIndexName });
2154
2027
  expect(stats).toMatchObject({
2155
2028
  dimension: 3,
2156
2029
  metric: 'dotproduct',
@@ -2198,7 +2071,7 @@ describe('PgVector', () => {
2198
2071
  await customSchemaVectorDB.createIndex({ indexName: testIndexName, dimension: 3 });
2199
2072
 
2200
2073
  // Test index operations
2201
- const stats = await customSchemaVectorDB.describeIndex(testIndexName);
2074
+ const stats = await customSchemaVectorDB.describeIndex({ indexName: testIndexName });
2202
2075
  expect(stats.dimension).toBe(3);
2203
2076
 
2204
2077
  // Test list operation
@@ -2215,7 +2088,7 @@ describe('PgVector', () => {
2215
2088
  });
2216
2089
 
2217
2090
  // Test delete operation
2218
- await customSchemaVectorDB.deleteVector(testIndexName, id!);
2091
+ await customSchemaVectorDB.deleteVector({ indexName: testIndexName, id: id! });
2219
2092
 
2220
2093
  // Verify deletion
2221
2094
  const results = await customSchemaVectorDB.query({