sqlite-vec/tests
Alex Garcia b00865429b Filter deleted nodes from DiskANN search results and add delete tests
DiskANN's delete repair only fixes forward edges (nodes the deleted
node pointed to). Stale reverse edges can cause deleted rowids to
appear in search results. Fix: track a 'confirmed' flag on each
search candidate, set when the full-precision vector is successfully
read during re-ranking. Only confirmed candidates are included in
output. Zero additional SQL queries — piggybacks on the existing
re-rank vector read.

Also adds delete hardening tests:
- Rescore: interleaved delete+KNN, rowid_in after deletes, full
  delete+reinsert cycle
- DiskANN: delete+reinsert cycles with KNN verification, interleaved
  delete+KNN

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 17:13:29 -07:00
..
__snapshots__ Fix SQLITE_DONE leak in ClearMetadata that broke DELETE on long text metadata (#274) (#275) 2026-03-30 16:39:59 -07:00
afbd Metadata filtering (#124) 2024-11-20 00:59:34 -08:00
correctness Add ANN search support for vec0 virtual table (#273) 2026-03-31 01:03:32 -07:00
fuzz Add DiskANN index for vec0 virtual table 2026-03-31 01:21:54 -07:00
leak-fixtures fuzz work 2024-07-25 11:16:06 -07:00
minimum properly check SQLITE_THREADSAFE for static compilation 2024-08-09 13:23:18 -07:00
.gitignore Initial commit 2024-04-20 13:38:58 -07:00
.python-version PARTITION KEY support (#122) 2024-11-20 00:02:04 -08:00
build.rs Update test-unit.c and unittest.rs functions to enforce pre-existing behavior 2026-03-02 17:46:11 -08:00
Cargo.lock Initial commit 2024-04-20 13:38:58 -07:00
Cargo.toml Initial commit 2024-04-20 13:38:58 -07:00
conftest.py Hide IVF behind SQLITE_VEC_EXPERIMENTAL_IVF_ENABLE, default off 2026-03-31 01:18:47 -07:00
fuzz.py docs and fuzz 2024-07-16 22:28:15 -07:00
helpers.py Extract shared Python test utilities into tests/helpers.py 2026-03-02 20:05:21 -08:00
pyproject.toml PARTITION KEY support (#122) 2024-11-20 00:02:04 -08:00
skip.test-correctness.py PARTITION KEY support (#122) 2024-11-20 00:02:04 -08:00
sqlite-vec-internal.h Add DiskANN index for vec0 virtual table 2026-03-31 01:21:54 -07:00
test-auxiliary.py Extract shared Python test utilities into tests/helpers.py 2026-03-02 20:05:21 -08:00
test-diskann.py Filter deleted nodes from DiskANN search results and add delete tests 2026-03-31 17:13:29 -07:00
test-general.py Extract shared Python test utilities into tests/helpers.py 2026-03-02 20:05:21 -08:00
test-insert-delete.py Redact version from info table snapshot to avoid test failures on version bumps 2026-03-17 00:09:28 -07:00
test-ivf-mutations.py Temporarily block vector UPDATE for DiskANN and IVF indexes 2026-03-31 14:08:08 -07:00
test-ivf-quantization.py Reject IVF binary quantizer when dimensions not divisible by 8 2026-03-31 14:51:27 -07:00
test-ivf.py Add IVF index for vec0 virtual table 2026-03-31 01:18:47 -07:00
test-knn-distance-constraints.py Extract shared Python test utilities into tests/helpers.py 2026-03-02 20:05:21 -08:00
test-loadable.py Fix int16 overflow in l2_sqr_int8_neon SIMD distance 2026-03-31 14:55:37 -07:00
test-metadata.py Fix SQLITE_DONE leak in ClearMetadata that broke DELETE on long text metadata (#274) (#275) 2026-03-30 16:39:59 -07:00
test-partition-keys.py Extract shared Python test utilities into tests/helpers.py 2026-03-02 20:05:21 -08:00
test-rescore-mutations.py Filter deleted nodes from DiskANN search results and add delete tests 2026-03-31 17:13:29 -07:00
test-rescore.py Add NULL checks after sqlite3_column_blob in rescore and DiskANN 2026-03-31 14:31:49 -07:00
test-unit.c Add DiskANN index for vec0 virtual table 2026-03-31 01:21:54 -07:00
test-wasm.mjs fmt 2024-07-31 12:55:46 -07:00
unittest.rs Update test-unit.c and unittest.rs functions to enforce pre-existing behavior 2026-03-02 17:46:11 -08:00
utils.py Initial commit 2024-04-20 13:38:58 -07:00
uv.lock PARTITION KEY support (#122) 2024-11-20 00:02:04 -08:00