The code issue referenced below is leaded by Vamana batch iterator limitations where search parameters always pulled from the parent index:
In the filtered-search path, this temporarily mutates the underlying index’s search parameters (set_search_parameters) inside a const method. This is not thread-safe if the same index instance is searched concurrently (different calls can race and restore the wrong parameters). Prefer an API that passes search parameters directly to the iterator/search, or protect the mutation with synchronization (or clearly document that concurrent searches are unsupported when using filters/params).
Originally posted by @Copilot in #297 (comment)