A vector index built on TurboQuant, written in Rust with Python bindings
This report summarizes scanner evidence for RyanCodrai/turbovec, a Rust project with 17,372 GitHub stars. SynthScan examined 111,219 lines of code across 710 source files, recording 1498 pattern matches distributed across 15 syntactic categories. The legacy adjusted pattern signal is 16.0 (Elevated pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 1253 finding(s).
Are imports declared and package/API names verified? 54 finding(s).
Are wrappers, guards, and repeated structures necessary? 900 finding(s).
Which changes need focused human review? 1498 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1498 distinct pattern matches across 15 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | turbovec-python/python/turbovec/llama_index.py | 210 | def _legacy_split_persist_base(persist_path: str | Path) -> tuple[Path, Path]: | CODE |
| LOW | turbovec-python/python/turbovec/haystack.py | 469 | def count_documents_by_filter(self, filters: Dict[str, Any]) -> int: | CODE |
| LOW | turbovec-python/python/turbovec/haystack.py | 479 | def count_unique_metadata_by_filter( | CODE |
| LOW | turbovec-python/python/turbovec/haystack.py | 515 | def get_metadata_field_min_max(self, metadata_field: str) -> Dict[str, Any]: | CODE |
| LOW | turbovec-python/python/turbovec/haystack.py | 535 | def get_metadata_field_unique_values( | CODE |
| LOW | turbovec-python/python/turbovec/haystack.py | 721 | async def delete_all_documents_async(self) -> None: | CODE |
| LOW⚡ | turbovec-python/python/turbovec/haystack.py | 733 | async def count_documents_by_filter_async(self, filters: Dict[str, Any]) -> int: | CODE |
| LOW⚡ | turbovec-python/python/turbovec/haystack.py | 738 | async def count_unique_metadata_by_filter_async( | CODE |
| LOW⚡ | turbovec-python/python/turbovec/haystack.py | 748 | async def get_metadata_fields_info_async(self) -> Dict[str, Dict[str, str]]: | CODE |
| LOW⚡ | turbovec-python/python/turbovec/haystack.py | 753 | async def get_metadata_field_min_max_async( | CODE |
| LOW⚡ | turbovec-python/python/turbovec/haystack.py | 761 | async def get_metadata_field_unique_values_async( | CODE |
| LOW⚡ | turbovec-python/python/turbovec/haystack.py | 771 | async def embedding_retrieval_async( | CODE |
| LOW | turbovec-python/python/turbovec/agno.py | 699 | def _handles_for_content_hash(self, content_hash: str) -> List[int]: | CODE |
| LOW | turbovec-python/python/turbovec/agno.py | 776 | def _resolve_filter_to_handles( | CODE |
| LOW | turbovec-python/python/turbovec/agno.py | 1041 | def get_supported_search_types(self) -> List[SearchType]: | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 157 | def _select_relevance_score_fn(self) -> Callable[[float], float]: | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 207 | def _validate_query_embedding(self, embedded: Any) -> np.ndarray: | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 492 | def similarity_search_with_score( | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 502 | async def asimilarity_search_with_score( | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 514 | def similarity_search_by_vector( | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 524 | async def asimilarity_search_by_vector( | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 537 | def similarity_search_with_score_by_vector( | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 551 | async def asimilarity_search_with_score_by_vector( | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 704 | def max_marginal_relevance_search( | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 714 | def max_marginal_relevance_search_by_vector( | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 726 | async def amax_marginal_relevance_search( | CODE |
| LOW | turbovec-python/tests/test_rayon_env.py | 56 | def test_huge_rayon_num_threads_does_not_panic(): | STRING |
| LOW⚡ | turbovec-python/tests/test_rayon_env.py | 74 | def test_huge_rayon_num_threads_warns_naming_the_variable(): | STRING |
| LOW⚡ | turbovec-python/tests/test_rayon_env.py | 80 | def test_small_rayon_num_threads_matches_unset_results(): | STRING |
| LOW⚡ | turbovec-python/tests/test_rayon_env.py | 90 | def test_unset_and_zero_emit_no_warning(): | STRING |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 54 | def test_index_to_bytes_round_trips_and_matches_file(tmp_path): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 120 | def test_lazy_index_bytes_round_trip(): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 248 | def test_llama_pickle_round_trips_data(): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 332 | def test_langchain_deepcopy_is_independent(): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 387 | def test_langchain_copy_does_not_bleed(): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 397 | def test_haystack_copy_does_not_bleed(): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 406 | def test_llama_copy_does_not_bleed(): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 415 | def test_agno_copy_does_not_bleed(): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 569 | def test_agno_getstate_snapshot_isolated_from_update_metadata(): | CODE |
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 629 | def test_unpickled_langchain_store_lock_serializes_writes(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 73 | def test_id_map_to_bytes_round_trips_and_matches_file(tmp_path): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 93 | def test_from_bytes_accepts_bytearray(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 100 | def test_from_bytes_rejects_corrupt_and_wrong_type(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 273 | def test_langchain_pickle_round_trips_data(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 288 | def test_haystack_pickle_round_trips_data(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 304 | def test_agno_pickle_round_trips_data(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 316 | def test_agno_uncreated_store_pickles(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 346 | def test_haystack_deepcopy_is_independent(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 357 | def test_llama_deepcopy_is_independent(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 370 | def test_agno_deepcopy_is_independent(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 468 | def test_langchain_mode_survives_pickle_and_deepcopy(mode): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 482 | def test_haystack_mode_survives_pickle_and_deepcopy(mode): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 504 | def test_llama_mode_survives_pickle_and_deepcopy(mode): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 530 | def test_agno_mode_survives_pickle_and_deepcopy(mode_name): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 603 | def test_haystack_getstate_snapshot_isolated_from_update_by_filter(): | CODE |
| LOW | turbovec-python/tests/test_pickle_copy.py | 681 | def test_spawned_child_searches_pickled_store(maker, child, expected): | CODE |
| LOW⚡ | turbovec-python/tests/test_llama_index.py | 72 | def test_lazy_dim_locked_on_first_add(): | CODE |
| LOW⚡ | turbovec-python/tests/test_llama_index.py | 79 | def test_from_params_without_dim_is_lazy(): | CODE |
| LOW⚡ | turbovec-python/tests/test_llama_index.py | 84 | def test_persist_and_load_lazy_uncommitted_store(tmp_path): | CODE |
| LOW⚡ | turbovec-python/tests/test_llama_index.py | 127 | def test_ref_doc_id_preserved_through_query(): | CODE |
| 647 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | turbovec/tests/from_parts.rs | 47 | // ─── happy path ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | turbovec/tests/from_parts.rs | 130 | // ─── every invariant → its named error ────────────────────────────────────── | COMMENT |
| MEDIUM | turbovec/tests/from_parts.rs | 297 | // ─── overflow-safe size math ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | turbovec/tests/from_parts.rs | 315 | // ─── value validation: parity with the .tv loader ─────────────────────────── | COMMENT |
| MEDIUM | turbovec/tests/from_parts.rs | 419 | // ─── property: accepted ⇒ survives its own write → load round-trip ────────── | COMMENT |
| MEDIUM | turbovec/tests/from_parts.rs | 549 | // ─── error is a proper std::error::Error with a readable message ───────────── | COMMENT |
| MEDIUM | turbovec/examples/kernel_xtest.rs | 96 | // ─── Tiny deterministic PRNG (xoshiro256** seeded via splitmix64) ──────── | COMMENT |
| MEDIUM | turbovec/src/encode.rs | 859 | // ─── Per-vector norm ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | turbovec/src/encode.rs | 990 | // ─── Fused quantize + scale + pack (aarch64) ──────────────────────────────── | COMMENT |
| MEDIUM | turbovec/src/encode.rs | 1202 | // ─── Fused quantize + scale + pack (x86_64) ───────────────────────────────── | COMMENT |
| MEDIUM | turbovec/src/encode.rs | 1391 | // ─── Fused quantize + scale + pack (fallback) ─────────────────────────────── | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 49 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 51 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 128 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 130 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 242 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 245 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 327 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 329 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 381 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 384 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 424 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 432 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 561 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 566 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 624 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_pickle_copy.py | 626 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_pickle_copy.py | 652 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_pickle_copy.py | 655 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_async_offload.py | 98 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_async_offload.py | 100 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_async_offload.py | 263 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_async_offload.py | 265 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_async_offload.py | 327 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_async_offload.py | 329 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_agno.py | 1753 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_agno.py | 1755 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 56 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 58 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 94 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 96 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 168 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 170 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 202 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 246 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 248 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 316 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_object_model.py | 318 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM | turbovec-python/tests/test_object_model.py | 190 | # -------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_similarity_modes.py | 428 | # ===================================================================== | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_similarity_modes.py | 430 | # ===================================================================== | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_similarity_modes.py | 582 | # ===================================================================== | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_similarity_modes.py | 584 | # ===================================================================== | COMMENT |
| MEDIUM | turbovec-python/tests/test_similarity_modes.py | 80 | # ===================================================================== | COMMENT |
| MEDIUM | turbovec-python/tests/test_similarity_modes.py | 82 | # ===================================================================== | COMMENT |
| MEDIUM | turbovec-python/tests/test_similarity_modes.py | 288 | # ===================================================================== | COMMENT |
| MEDIUM | turbovec-python/tests/test_similarity_modes.py | 290 | # ===================================================================== | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_interruptible.py | 45 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_interruptible.py | 47 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_interruptible.py | 120 | # --------------------------------------------------------------------------- | COMMENT |
| 104 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | deny.toml | 1 | # cargo-deny configuration — supply-chain gate for the Rust crate. | COMMENT |
| LOW | deny.toml | 41 | # legal/compliance concern rather than a security one, and an allow-list is the | COMMENT |
| LOW | turbovec/Cargo.toml | 1 | [package] | COMMENT |
| LOW | turbovec/Cargo.toml | 41 | rand = "0.8" | COMMENT |
| LOW | turbovec/Cargo.toml | 61 | # directly and production code no longer calls `inverse_cdf` at all, so the | COMMENT |
| LOW | turbovec/tests/warning_hook.rs | 1 | //! The post-commit durability shortfall (#365) must reach the caller | COMMENT |
| LOW | turbovec/tests/warning_hook.rs | 41 | COMMENT | |
| LOW | turbovec/tests/adversarial_load_memory.rs | 181 | ); | COMMENT |
| LOW | turbovec/tests/input_validation_reporting.rs | 1 | //! The invalid-coordinate scan reports *which* coordinate was bad, and | COMMENT |
| LOW | turbovec/tests/concurrent_search.rs | 1 | //! Integration tests for concurrent search on a shared `TurboQuantIndex`. | COMMENT |
| LOW | turbovec/tests/concurrent_search.rs | 341 | fn tied_scores_agree_across_search_paths() { | COMMENT |
| LOW | turbovec/tests/crate_api.rs | 1 | //! The crate's surface as a downstream dependency (#351). | COMMENT |
| LOW | turbovec/tests/crate_api.rs | 181 | /// a panic in any *other* test has its diagnostics swallowed. This repo | COMMENT |
| LOW | turbovec/tests/single_query_pool.rs | 1 | //! One query searched on a pool takes a different path through the staged | COMMENT |
| LOW | turbovec/tests/filtering.rs | 1 | //! Correctness tests for slot-mask filtering on `TurboQuantIndex` and the | COMMENT |
| LOW | turbovec/tests/filtering.rs | 401 | } | COMMENT |
| LOW | turbovec/tests/filtering.rs | 521 | /// threshold (#336) cannot silently move these tests off the path they | COMMENT |
| LOW | turbovec/tests/filtering.rs | 641 | } | COMMENT |
| LOW | turbovec/tests/input_validation.rs | 1 | //! Input-validation tests for `TurboQuantIndex` and `IdMapIndex`. | COMMENT |
| LOW | turbovec/tests/adversarial_gen_reuse.rs | 1 | //! Deterministic reproducer: a v7 commit generation is reused after a | COMMENT |
| LOW | turbovec/tests/swap_remove.rs | 1 | //! Correctness of `TurboQuantIndex::swap_remove`. | COMMENT |
| LOW | turbovec/tests/kernel_correctness.rs | 1 | //! Correctness harness for the SIMD scoring kernels. | COMMENT |
| LOW | turbovec/tests/kernel_correctness.rs | 341 | } | COMMENT |
| LOW | turbovec/tests/allocation_hot_paths.rs | 1 | //! Allocation-shape gates for the two hot paths in issue #409. | COMMENT |
| LOW | turbovec/tests/lazy_init.rs | 1 | //! Tests for lazy index construction on `TurboQuantIndex` and `IdMapIndex`. | COMMENT |
| LOW | turbovec/tests/adversarial_durability.rs | 1 | //! Adversarial durability probes: a power-loss model coarser than the | COMMENT |
| LOW | turbovec/tests/codebook_determinism.rs | 1 | //! Golden pin for the Lloyd-Max codebook. | COMMENT |
| LOW | turbovec/tests/codebook_determinism.rs | 21 | //! exact-pinned for the same reason — `rand_chacha` at `=0.3.1` | COMMENT |
| LOW | turbovec/tests/explicit_calibration.rs | 1 | //! Explicit TQ+ calibration: `calibrate_2d` / `calibrate`. | COMMENT |
| LOW | turbovec/tests/explicit_calibration.rs | 61 | COMMENT | |
| LOW | turbovec/tests/explicit_calibration.rs | 241 | let mut trickled = TurboQuantIndex::new(dim, 2).unwrap(); | COMMENT |
| LOW | turbovec/tests/explicit_calibration.rs | 281 | // but no recovery. If this assertion ever *fails upward*, refit has | COMMENT |
| LOW | turbovec/tests/query_scale_invariance.rs | 1 | //! Ranking must be invariant to positive uniform scaling of the query (#335). | COMMENT |
| LOW | turbovec/tests/query_scale_invariance.rs | 41 | for (d, t) in tmp.iter().enumerate() { | COMMENT |
| LOW | turbovec/tests/query_scale_invariance.rs | 101 | // for those queries the top-k id *set* legitimately differs across | COMMENT |
| LOW | turbovec/tests/query_scale_invariance.rs | 121 | // other* while both satisfy the condition above. If that pair | COMMENT |
| LOW | turbovec/tests/recall_sanity.rs | 1 | //! Recall floor for the v5 block-Hadamard rotation. | COMMENT |
| LOW | turbovec/tests/rotation.rs | 1 | //! Correctness tests for the deterministic block-Hadamard rotation. | COMMENT |
| LOW | turbovec/tests/tmp_sweep.rs | 1 | //! Stale-temp sweep, driven through a real save (#299, #488). | COMMENT |
| LOW | turbovec/tests/tmp_sweep.rs | 21 | //! overlapping. Nothing here waits on the product's mutex; the tests | COMMENT |
| LOW | turbovec/tests/tmp_sweep.rs | 101 | /// Save through `sync()` — the v7 container — serialized like the rest. | COMMENT |
| LOW | turbovec/tests/tmp_sweep.rs | 161 | /// permanent no-op and a crash-looping writer's temps accumulated | COMMENT |
| LOW | turbovec/tests/tmp_sweep.rs | 261 | /// name 1-3 bytes short of NAME_MAX, because `tmp_sibling` walks back to | COMMENT |
| LOW | turbovec/tests/sync_v7.rs | 541 | ); | COMMENT |
| LOW | turbovec/tests/bytes_io.rs | 1 | //! In-memory serialization API: `to_bytes` / `from_bytes` / | COMMENT |
| LOW | turbovec/tests/avx512_tail_simulation.rs | 1 | //! Differential simulation of the AVX-512BW paired-block kernel's | COMMENT |
| LOW | turbovec/tests/encode_fingerprint.rs | 1 | //! Absolute golden anchor for every stage that decides an encoded byte. | COMMENT |
| LOW | turbovec/tests/encode_fingerprint.rs | 21 | //! `inverse_cdf` moved `tqplus_shift`/`tqplus_scale` by ~5e-4 | COMMENT |
| LOW | turbovec/tests/encode_fingerprint.rs | 41 | //! The six columns below pin all of it: not "this build agrees with | COMMENT |
| LOW | turbovec/tests/encode_fingerprint.rs | 61 | //! | COMMENT |
| LOW | turbovec/tests/encode_fingerprint.rs | 221 | /// caller could reasonably predict or work around. | COMMENT |
| LOW | turbovec/tests/encode_fingerprint.rs | 241 | #[test] | COMMENT |
| LOW | turbovec/tests/common/fingerprint.rs | 1 | //! The encode fingerprint: one six-column hash row per `(dim, bits)` cell. | COMMENT |
| LOW | turbovec/tests/common/fingerprint.rs | 21 | //! a `#[path]` module. | COMMENT |
| LOW | turbovec/tests/common/fingerprint.rs | 161 | let vectors = lcg_vectors(N, dim, cell_seed(dim, bits)); | COMMENT |
| LOW | turbovec/examples/kernel_roofline.rs | 1 | //! What rate can this machine actually sustain on the search kernel's inner | COMMENT |
| LOW | turbovec/examples/probe_2bit_vnni.rs | 1 | //! P6 — price the x86 2-bit formulations: shipped vpermb-LUT against a | COMMENT |
| LOW | turbovec/examples/kernel_roofline_neon.rs | 1 | //! The aarch64 counterpart to `kernel_roofline`: what rate can this machine | COMMENT |
| LOW | turbovec/examples/kernel_roofline_neon.rs | 141 | println!("Real kernel, nq=100 dim=768 N=200k:"); | COMMENT |
| LOW | turbovec/examples/kernel_roofline_neon.rs | 221 | sink = sink.wrapping_add(vaddvq_u16(*v) as u64); | COMMENT |
| 446 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | turbovec-python/python/turbovec/_interruptible.py | 82 | CODE | |
| LOW | turbovec-python/python/turbovec/llama_index.py | 18 | CODE | |
| LOW | turbovec-python/python/turbovec/_similarity.py | 23 | CODE | |
| LOW | turbovec-python/python/turbovec/haystack.py | 16 | CODE | |
| LOW | turbovec-python/python/turbovec/_persist.py | 23 | CODE | |
| LOW | turbovec-python/python/turbovec/agno.py | 24 | CODE | |
| LOW | turbovec-python/python/turbovec/agno.py | 32 | CODE | |
| LOW | turbovec-python/python/turbovec/__init__.py | 1 | CODE | |
| LOW | turbovec-python/python/turbovec/__init__.py | 1 | CODE | |
| LOW | turbovec-python/python/turbovec/langchain.py | 21 | CODE | |
| LOW | turbovec-python/python/turbovec/_dedup.py | 20 | CODE | |
| LOW | turbovec-python/tests/test_rayon_env.py | 12 | CODE | |
| LOW | turbovec-python/tests/test_pickle_copy.py | 15 | CODE | |
| LOW | turbovec-python/tests/test_llama_index.py | 1 | CODE | |
| LOW | turbovec-python/tests/test_version.py | 2 | CODE | |
| LOW | turbovec-python/tests/test_argument_errors.py | 11 | CODE | |
| LOW | turbovec-python/tests/test_dedup.py | 2 | CODE | |
| LOW | turbovec-python/tests/test_haystack.py | 2 | CODE | |
| LOW | turbovec-python/tests/test_security.py | 9 | CODE | |
| LOW | turbovec-python/tests/test_gil_release.py | 17 | CODE | |
| LOW | turbovec-python/tests/test_id_map.py | 2 | CODE | |
| LOW | turbovec-python/tests/test_async_offload.py | 27 | CODE | |
| LOW | turbovec-python/tests/test_agno.py | 2 | CODE | |
| LOW | turbovec-python/tests/test_persist.py | 2 | CODE | |
| LOW | turbovec-python/tests/test_langchain.py | 1 | CODE | |
| LOW | turbovec-python/tests/test_remove_fast_path.py | 57 | CODE | |
| LOW | turbovec-python/tests/test_object_model.py | 13 | CODE | |
| LOW | turbovec-python/tests/test_object_model.py | 18 | CODE | |
| LOW | turbovec-python/tests/test_object_model.py | 19 | CODE | |
| LOW | turbovec-python/tests/test_object_model.py | 20 | CODE | |
| LOW | turbovec-python/tests/test_index.py | 7 | CODE | |
| LOW | turbovec-python/tests/test_similarity_modes.py | 27 | CODE | |
| LOW | turbovec-python/tests/test_interruptible.py | 21 | CODE | |
| LOW | turbovec-python/tests/test_fork_safety.py | 26 | CODE | |
| LOW | turbovec-python/tests/test_store_thread_safety.py | 26 | CODE | |
| LOW | turbovec-python/tests/test_filtering.py | 2 | CODE | |
| LOW | benchmarks/hillclimb/cells_2bit.py | 23 | CODE | |
| LOW | benchmarks/hillclimb/mt_roofline_nq1.py | 15 | CODE | |
| LOW | benchmarks/hillclimb/recall_h72.py | 3 | CODE | |
| LOW | benchmarks/hillclimb/sweep_paired.py | 17 | CODE | |
| LOW | benchmarks/hillclimb/sweep_paired.py | 19 | CODE | |
| LOW | benchmarks/hillclimb/sweep_2bit.py | 15 | CODE | |
| LOW | benchmarks/hillclimb/cells.py | 16 | CODE | |
| LOW | benchmarks/hillclimb/cells.py | 19 | CODE | |
| LOW | benchmarks/hillclimb/r3_rig/r3gate.py | 3 | CODE | |
| LOW | benchmarks/hillclimb/r3_rig/pr/kx.py | 3 | CODE | |
| LOW | benchmarks/hillclimb/r3_rig/pr/rnd.py | 1 | CODE | |
| LOW | benchmarks/hillclimb/r3_rig/pr/selfq.py | 1 | CODE | |
| LOW | benchmarks/hillclimb/r4_rig/h1gate.py | 3 | CODE | |
| LOW | .github/scripts/test_changelog_gate.py | 18 | CODE | |
| LOW | .github/scripts/escape_hatch.py | 35 | CODE | |
| LOW | .github/scripts/dep_floors.py | 21 | CODE | |
| LOW | .github/scripts/changelog_gate.py | 49 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | turbovec-python/python/turbovec/_interruptible.py | 203 | except (TypeError, ValueError): | CODE |
| HIGH | turbovec-python/python/turbovec/_interruptible.py | 191 | except AttributeError: | CODE |
| HIGH | turbovec-python/python/turbovec/_persist.py | 137 | except OSError: | CODE |
| HIGH | turbovec-python/python/turbovec/_persist.py | 170 | except OSError: # pragma: no cover - filesystem refuses dir fsync | CODE |
| HIGH | turbovec-python/tests/test_llama_index.py | 227 | except TypeError: | CODE |
| HIGH | turbovec-python/tests/test_agno.py | 1852 | except asyncio.CancelledError: | CODE |
| HIGH | turbovec-python/tests/test_persist.py | 358 | except FileNotFoundError: | CODE |
| HIGH | turbovec-python/tests/test_index.py | 377 | except PermissionError: | CODE |
| HIGH | turbovec-python/tests/test_index.py | 461 | except PermissionError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | turbovec/tests/kernel_correctness.rs | 23 | /// which makes the self-query invariant below robust. | COMMENT |
| MEDIUM | turbovec/src/planes_tests.rs | 1233 | /// id agreement on real corpora is the #562 harness's job.) | COMMENT |
| MEDIUM | turbovec-python/tests/test_fork_safety.py | 39 | # Self-contained harness executed in a fresh interpreter per scenario. It | COMMENT |
| MEDIUM | turbovec-python/tests/test_fork_safety.py | 42 | # Every child wait is bounded (select + SIGKILL) so the harness cannot hang | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_store_thread_safety.py | 60 | # Stress-harness core (threads + classified exceptions) | COMMENT |
| MEDIUM | benchmarks/hillclimb/whm_persist.py | 70 | # cell (the _st variants, or cells carried over from another harness). | COMMENT |
| MEDIUM | benchmarks/hillclimb/sweep_2bit.py | 28 | # Cells-grade precision on every point. The cells harness reproduces | COMMENT |
| MEDIUM | benchmarks/hillclimb/sweep_2bit.py | 30 | # sub-run processes; the first sweep harness used a fraction of that | COMMENT |
| MEDIUM | benchmarks/hillclimb/r3_rig/r3soak.sh | 2 | # Round 3 soak: PASSES balanced ABBA passes of the full 4-cell harness; a label "tag:planes" runs tag.so with TURBOVEC_2 | COMMENT |
| MEDIUM | .github/workflows/pr-review.yml | 273 | # harness's record of the agent's final message. So the agent can veto | COMMENT |
| MEDIUM | .github/workflows/pr-review.yml | 363 | # the harness after the session ends, so its shape cannot be forged | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | benchmarks/suite/speed_sync_d1536_2bit_arm_st.py | 0 | a file already in v7 sync form, index bound to it, no pending ops. | STRING |
| HIGH | benchmarks/suite/speed_sync_d1536_2bit_x86_mt.py | 0 | a file already in v7 sync form, index bound to it, no pending ops. | STRING |
| HIGH | benchmarks/suite/speed_sync_d1536_2bit_arm_mt.py | 0 | a file already in v7 sync form, index bound to it, no pending ops. | STRING |
| HIGH | benchmarks/suite/speed_sync_d1536_2bit_x86_st.py | 0 | a file already in v7 sync form, index bound to it, no pending ops. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | turbovec-python/python/turbovec/llama_index.py | 335 | CODE | |
| LOW | turbovec-python/python/turbovec/llama_index.py | 786 | CODE | |
| LOW | turbovec-python/python/turbovec/haystack.py | 499 | CODE | |
| LOW | turbovec-python/python/turbovec/haystack.py | 578 | CODE | |
| LOW | turbovec-python/python/turbovec/_persist.py | 217 | CODE | |
| LOW | turbovec-python/python/turbovec/agno.py | 471 | CODE | |
| LOW | turbovec-python/python/turbovec/agno.py | 1129 | CODE | |
| LOW | turbovec-python/python/turbovec/langchain.py | 357 | CODE | |
| LOW | turbovec-python/python/turbovec/langchain.py | 563 | CODE | |
| LOW | turbovec-python/tests/test_fork_safety.py | 570 | CODE | |
| LOW | turbovec-python/tests/test_store_thread_safety.py | 85 | CODE | |
| LOW | turbovec-python/tests/test_store_thread_safety.py | 890 | CODE | |
| LOW | turbovec-python/tests/test_store_thread_safety.py | 112 | CODE | |
| LOW | turbovec-python/tests/test_store_thread_safety.py | 113 | CODE | |
| LOW | benchmarks/create_diagrams.py | 55 | CODE | |
| LOW | benchmarks/hillclimb/whm_mutate.py | 48 | CODE | |
| LOW | benchmarks/hillclimb/sweep_paired.py | 30 | CODE | |
| LOW | .github/scripts/changelog_gate.py | 113 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | turbovec/src/pack.rs | 67 | // Step 1: Extract packed nibble bytes per vector per group | COMMENT |
| LOW⚡ | turbovec/src/pack.rs | 70 | // Step 2: Pack into platform-specific layout | COMMENT |
| LOW | benchmarks/hillclimb/LOG_search.md | 5586 | ### Step 1: reachable from stable Rust | COMMENT |
| LOW | benchmarks/hillclimb/LOG_search.md | 5598 | ### Step 2: 6.36x the issue rate, and the denominator took two tries | COMMENT |
| LOW | benchmarks/hillclimb/LOG_search.md | 5624 | ### Step 3: the tile-load cost is real and almost entirely amortizable | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | turbovec-python/python/turbovec/llama_index.py | 1210 | __all__ = ["TurboQuantVectorStore"] | CODE |
| LOW | turbovec-python/python/turbovec/_similarity.py | 53 | __all__ = [ | CODE |
| LOW | turbovec-python/python/turbovec/haystack.py | 1081 | __all__ = ["TurboQuantDocumentStore"] | CODE |
| LOW | turbovec-python/python/turbovec/_persist.py | 524 | __all__ = ["check_persisted_handles", "check_schema_version", "check_sidecar_keysets"] | CODE |
| LOW | turbovec-python/python/turbovec/agno.py | 1129 | def update_metadata(self, content_id: str, metadata: Dict[str, Any]) -> None: | CODE |
| LOW | turbovec-python/python/turbovec/agno.py | 1368 | __all__ = ["TurboQuantVectorDb"] | CODE |
| LOW | turbovec-python/python/turbovec/__init__.py | 24 | __all__ = ["BATCH_CHUNK_SIZE", "IdMapIndex", "TurboQuantIndex", "__version__"] | CODE |
| LOW | turbovec-python/python/turbovec/langchain.py | 994 | __all__ = ["TurboQuantVectorStore"] | CODE |
| LOW | turbovec-python/python/turbovec/_dedup.py | 71 | __all__ = ["DuplicatePolicy", "resolve_duplicates"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | turbovec-python/tests/test_llama_index.py | 1330 | # store into a LlamaIndex pipeline (RAG, query engine, etc.), so it | COMMENT |
| MEDIUM⚡ | turbovec-python/tests/test_langchain.py | 574 | # Tier 4: dim is inferred from the embedding model, no explicit param. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | turbovec-python/tests/test_persist.py | 448 | # them to null, serde_json/JSON.parse reject the file). Both now fail | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | turbovec-python/tests/test_pickle_copy.py | 638 | except Exception as exc: # pragma: no cover - failure path | CODE |
| MEDIUM | turbovec-python/tests/test_persist.py | 103 | def save_loop(index, payload): | CODE |
| LOW | turbovec-python/tests/test_persist.py | 108 | except Exception: # noqa: BLE001 — recorded for the assert | CODE |
| LOW | turbovec-python/tests/test_fork_safety.py | 272 | except Exception: | CODE |
| LOW | benchmarks/hillclimb/faiss_nq1.py | 39 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | turbovec/src/pack.rs | 67 | // Step 1: Extract packed nibble bytes per vector per group | COMMENT |
| LOW⚡ | turbovec/src/pack.rs | 70 | // Step 2: Pack into platform-specific layout | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | turbovec-python/python/turbovec/agno.py | 143 | CODE | |
| LOW | turbovec-python/tests/test_llama_index.py | 1403 | CODE |