docs: changelog entry for HNSW integration and Python 3.14 build fix
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
This commit is contained in:
@@ -1,5 +1,31 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## Unreleased
|
||||||
|
|
||||||
|
### New Features
|
||||||
|
- `clawhdf5-agent`: HNSW now backs the vector stage of `hybrid_search`. The
|
||||||
|
`hnsw` feature is **on by default**, so semantic search uses the approximate
|
||||||
|
`clawhdf5-ann` index instead of a linear cosine scan. The index mirrors the
|
||||||
|
memory cache (node id == cache index) and self-heals — it rebuilds whenever it
|
||||||
|
drifts from the cache length, so no mutation path can desync it. Non-indexable
|
||||||
|
stores (no/zero-dim/mixed embeddings) and dimension-mismatched queries fall
|
||||||
|
back to the exact linear scan. Disable with
|
||||||
|
`--no-default-features --features float16` for exact search.
|
||||||
|
- `clawhdf5-ann`: HNSW is now a live, mutable index — added `insert`,
|
||||||
|
`mark_deleted` (soft-delete bitset; deleted nodes are traversed for
|
||||||
|
connectivity but never returned), `compact` (drops deleted vectors and
|
||||||
|
renumbers survivors), and `new` (empty index). Serialization gains a format
|
||||||
|
version tag (`HNSW_FORMAT_VERSION` = 2) and persists the deleted bitset;
|
||||||
|
pre-existing v1 files still load.
|
||||||
|
- `clawhdf5-agent`: `hybrid::merge_vector_keyword` exposes the shared
|
||||||
|
normalize-and-fuse step used by both the linear and HNSW vector paths.
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
- `clawhdf5-py`: upgrade PyO3 and numpy `0.23` → `0.28` so the bindings build on
|
||||||
|
Python 3.14 (PyO3 0.23 capped at 3.13 and hard-failed `cargo build
|
||||||
|
--workspace`). Updated for the removed `PyObject` alias (`Py<PyAny>`) and the
|
||||||
|
`Python::allow_threads` → `Python::detach` rename.
|
||||||
|
|
||||||
## v2.1.0 (2026-04-12)
|
## v2.1.0 (2026-04-12)
|
||||||
|
|
||||||
### New Features
|
### New Features
|
||||||
|
|||||||
Reference in New Issue
Block a user