microsoft / microsoft/DiskANN

Indexing unit tests should go in `diskann`

Open
#853 0 comments 1 reaction 2 assignees View on GitHub

@harsha-simhadri is already working on this.

Since Mar 19, 2026.

chores
Dominant language
Rust
Stars
1.9k
Forks
454
Avg merge
3d 22h
Merged PRs (30d)
35

Description

For historical reasons, unit tests exercising search and its various flavors (range, multihop filtered etc) live outside of the core diskann crate and instead live in diskann-providers in the large diskann_async.rs and are implemented using the inmem providers.

Further, these tests perform basic recall checks, but do not provide much visibility into more useful metrics like exact neighbors returned, number of get-vector calls etc.

These tests should be ported to the baseline testing infrastructure in diskann and all future such tests should be written there instead of diskann-providers. Ideally, I'd like the diskann crate on its own to have high test coverage and not be dependent on diskann-providers for its testing needs.

Any infrastructure developed within the diskann crate to achieve this can likely be reused to make writing future tests even easier.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.