Skip to content

refactor(index): align naming and clarify HNSW internals - #173

Merged
gouyt13 merged 3 commits into
mainfrom
refactor/index-naming-consistency
Oct 28, 2026
Merged

gouyt13 merged 3 commits into
mainfrom
refactor/index-naming-consistency

Conversation

@gouyt13

@gouyt13 gouyt13 commented Oct 28, 2026

Copy link
Copy Markdown
Member

Summary

Use consistent names for shared concepts across IVF, HNSW and SymphonyQG while retaining algorithm-specific terminology. Add an index naming glossary and synchronize public C++ parameter documentation.

Also clarify HNSW's internal const access and PID types, remove unused candidate state/private helpers, and add context to candidate-ID errors. Public method names, parameter types/order/defaults, Python keywords and persisted layouts are unchanged. Renamed public C++ parameters are documented consistently.

Testing

Local Linux x86-64 validation with Clang 23 and native optimization disabled:

  • Full CTest: 409 passed, 1 conditional skip; the separate OpenMP binding check passed.
  • Rebuilt and installed Python package: 799 passed, 2 platform-specific skips, including mypy/Pyright checks.
  • Installed CMake consumers: 3 passed.
  • Full clang-tidy (46 translation units), formatting, Python lint and strict MkDocs build passed.
  • 20 IVF/HNSW/SymphonyQG metric/storage cases preserved exact search results, counts, updates and saved bytes against the pre-naming baseline.
  • Independent final review found no blocking issues; focused OpenMP checks preserved the requested team size.

Full txtai/zvec application integration was not rerun; installed CMake consumers and the Python suite are the downstream-facing checks performed here. Use matching headers and libraries when rebuilding.

No performance claim. The final naming snapshot was not rerun under sanitizers or on ARM/macOS/Windows. An earlier sanitizer run reproduced 13 existing Eigen AVX-512 GemmKernel.h:815 UBSan failures on unmodified HEAD; vendor code is unchanged.

@github-actions github-actions Bot added the release:maintenance Release category managed from the PR title label Oct 28, 2026
@gouyt13
gouyt13 merged commit ce484e7 into main Oct 28, 2026
53 checks passed
@gouyt13
gouyt13 deleted the refactor/index-naming-consistency branch October 28, 2026 16:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release:maintenance Release category managed from the PR title

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant