v30.2
the-dev-tools/dev-toolsv30.2Apr 19, 2026by kishorenc
AI Summary
This release fixes critical bugs related to filter handling, highlighting, and API key handling, as well as improving performance during bulk inserts.
Key Highlights
- Fixed incorrect handling of numeric `!=` filters.
- Fixed highlighting for single-token phrase matches.
- Fixed missing curation fields in GET responses.
- Fixed union search deduplication for pinned hits.
- Fixed `/health` responsiveness during heavy bulk inserts.
New Features
- Numeric filter handling fixes
- Highlighting and race condition fixes
- Curation field restoration
- Diversity search edge case fixes
- Union search deduplication fixes
- Reference faceting bug fixes
- Vector search behavior fixes
- Scoped API key handling fixes
- Conversation search error handling fixes
- Search cache keying fixes
- JSON response escaping fixes
- HTTP/2 async import fixes
Full Release Notes
This release fixes some important bugs identified in `v30.1`. ### Bug Fixes - **[v30.2]** Fixed incorrect handling of numeric `!=` filters in both lazy and eager filter execution, including explicit not-equals lists on range-indexed numeric fields. - **[v30.2]** Fixed highlighting to correctly mark single-token phrase matches and to avoid race conditions during union searches that run alongside concurrent writes. - **[v30.2]** Fixed missing `synonyms`, `stem`, and `stemming_dictionary` fields in curation GET responses. - **[v30.2]** Fixed a number of edge cases in diversity search. - **[v30.2]** Fixed union search deduplication so curated pinned hits are no longer collapsed. - **[v30.2]** Fixed a bug related to reference faceting. - **[v30.2]** Fixed vector search behavior so zero-match phrase queries still preserve vector search results. - **[v30.2]** Fixed scoped API key handling so embedded collection parameters can supply a missing collection in multi-search requests. - **[v30.2]** Fixed conversation search error handling so failed searches do not incorrectly reuse the first search collection. - **[v30.2]** Fixed search cache keying so scoped API key parameters and request-specific embedded params do not collide in the cache. - **[v30.2]** Fixed JSON response escaping by using `nlohmann::json::dump()` when serializing response payloads. - **[v30.2]** Fixed `/health` responsiveness during heavy bulk inserts by routing health checks to the meta thread pool. - **[v30.2]** Fixed HTTP/2 async import teardown on early exit.