[INFO] cloning repository https://github.com/KaruTest/rust-codebase-search
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/KaruTest/rust-codebase-search" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKaruTest%2Frust-codebase-search", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKaruTest%2Frust-codebase-search'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ff0a585823193847aa70804964341687e9d7a83d
[INFO] checking KaruTest/rust-codebase-search against dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8 for pr-133502-26
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKaruTest%2Frust-codebase-search" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/KaruTest/rust-codebase-search
[INFO] finished tweaking git repo https://github.com/KaruTest/rust-codebase-search
[INFO] tweaked toml for git repo https://github.com/KaruTest/rust-codebase-search written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/KaruTest/rust-codebase-search on toolchain dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/KaruTest/rust-codebase-search already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tree-sitter-language v0.1.7
[INFO] [stderr]   Downloaded tree-sitter-yaml v0.7.2
[INFO] [stderr]   Downloaded tree-sitter-json v0.24.8
[INFO] [stderr]   Downloaded rayon-cond v0.3.0
[INFO] [stderr]   Downloaded derive_builder_macro v0.20.2
[INFO] [stderr]   Downloaded macro_rules_attribute v0.2.2
[INFO] [stderr]   Downloaded monostate-impl v0.1.18
[INFO] [stderr]   Downloaded socks v0.3.4
[INFO] [stderr]   Downloaded hmac-sha256 v1.1.14
[INFO] [stderr]   Downloaded macro_rules_attribute-proc_macro v0.2.2
[INFO] [stderr]   Downloaded monostate v0.1.18
[INFO] [stderr]   Downloaded plotters-backend v0.3.7
[INFO] [stderr]   Downloaded derive_builder_core v0.20.2
[INFO] [stderr]   Downloaded globset v0.4.18
[INFO] [stderr]   Downloaded hf-hub v0.3.2
[INFO] [stderr]   Downloaded onig v6.5.1
[INFO] [stderr]   Downloaded plotters-svg v0.3.7
[INFO] [stderr]   Downloaded ort-sys v2.0.0-rc.11
[INFO] [stderr]   Downloaded oorandom v11.1.5
[INFO] [stderr]   Downloaded derive_builder v0.20.2
[INFO] [stderr]   Downloaded ignore v0.4.25
[INFO] [stderr]   Downloaded ureq-proto v0.5.3
[INFO] [stderr]   Downloaded clap v4.5.60
[INFO] [stderr]   Downloaded rustls-webpki v0.103.9
[INFO] [stderr]   Downloaded unicode-normalization-alignments v0.1.12
[INFO] [stderr]   Downloaded tree-sitter-go v0.23.4
[INFO] [stderr]   Downloaded tree-sitter-javascript v0.23.1
[INFO] [stderr]   Downloaded ort v2.0.0-rc.11
[INFO] [stderr]   Downloaded ureq v3.2.0
[INFO] [stderr]   Downloaded plotters v0.3.7
[INFO] [stderr]   Downloaded rusqlite v0.31.0
[INFO] [stderr]   Downloaded tree-sitter-java v0.23.5
[INFO] [stderr]   Downloaded tokenizers v0.19.1
[INFO] [stderr]   Downloaded tree-sitter-python v0.23.6
[INFO] [stderr]   Downloaded webpki-root-certs v1.0.6
[INFO] [stderr]   Downloaded clap_builder v4.5.60
[INFO] [stderr]   Downloaded esaxx-rs v0.1.10
[INFO] [stderr]   Downloaded tree-sitter v0.24.7
[INFO] [stderr]   Downloaded ndarray v0.17.2
[INFO] [stderr]   Downloaded tree-sitter-c v0.23.4
[INFO] [stderr]   Downloaded lzma-rust2 v0.15.7
[INFO] [stderr]   Downloaded tree-sitter-rust v0.23.3
[INFO] [stderr]   Downloaded bstr v1.12.1
[INFO] [stderr]   Downloaded rustls v0.23.36
[INFO] [stderr]   Downloaded tree-sitter-bash v0.23.3
[INFO] [stderr]   Downloaded tree-sitter-ruby v0.23.1
[INFO] [stderr]   Downloaded spm_precompiled v0.1.4
[INFO] [stderr]   Downloaded onig_sys v69.9.1
[INFO] [stderr]   Downloaded tree-sitter-typescript v0.23.2
[INFO] [stderr]   Downloaded tree-sitter-cpp v0.23.4
[INFO] [stderr]   Downloaded libsqlite3-sys v0.28.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca
[INFO] running `Command { std: "docker" "start" "2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca" "/opt/rustwide/cargo-home/bin/cargo" "+dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca" "/opt/rustwide/cargo-home/bin/cargo" "+dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling tree-sitter-language v0.1.7
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking regex-syntax v0.8.9
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]     Checking clap_lex v1.0.0
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]    Compiling tree-sitter-yaml v0.7.2
[INFO] [stderr]    Compiling tree-sitter-rust v0.23.3
[INFO] [stderr]     Checking clap_builder v4.5.60
[INFO] [stderr]    Compiling tree-sitter-cpp v0.23.4
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling tree-sitter-javascript v0.23.1
[INFO] [stderr]    Compiling tree-sitter-python v0.23.6
[INFO] [stderr]    Compiling tree-sitter-bash v0.23.3
[INFO] [stderr]    Compiling tree-sitter v0.24.7
[INFO] [stderr]    Compiling tree-sitter-typescript v0.23.2
[INFO] [stderr]    Compiling tree-sitter-go v0.23.4
[INFO] [stderr]    Compiling tree-sitter-ruby v0.23.1
[INFO] [stderr]    Compiling tree-sitter-c v0.23.4
[INFO] [stderr]    Compiling tree-sitter-java v0.23.5
[INFO] [stderr]    Compiling tree-sitter-json v0.24.8
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking option-ext v0.2.0
[INFO] [stderr]     Checking winnow v0.7.14
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]     Checking toml_write v0.1.2
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking fallible-iterator v0.3.0
[INFO] [stderr]     Checking streaming-iterator v0.1.9
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking indicatif v0.17.11
[INFO] [stderr]     Checking ndarray v0.17.2
[INFO] [stderr]     Checking directories v5.0.1
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking levenshtein v1.0.5
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.39
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking globset v0.4.18
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking ignore v0.4.25
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking tempfile v3.25.0
[INFO] [stderr]     Checking clap v4.5.60
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking hashlink v0.9.1
[INFO] [stderr]     Checking rusqlite v0.31.0
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking code-search v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `list_indexed_codebases`
[INFO] [stdout]  --> src/cli.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::indexing::{list_indexed_codebases, Indexer, IndexingOptions};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stdout]  --> src/performance/hnsw.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::BinaryHeap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Reverse`
[INFO] [stdout]  --> src/performance/hnsw.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp::Reverse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `database::DATA_DIR`: Use config.database.data_dir instead
[INFO] [stdout]    --> src/lib.rs:111:58
[INFO] [stdout]     |
[INFO] [stdout] 111 |     get_codebase_metadata, list_codebases_with_metadata, DATA_DIR, DB_NAME,
[INFO] [stdout]     |                                                          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `database::DB_NAME`: Use config.database.db_name instead
[INFO] [stdout]    --> src/lib.rs:111:68
[INFO] [stdout]     |
[INFO] [stdout] 111 |     get_codebase_metadata, list_codebases_with_metadata, DATA_DIR, DB_NAME,
[INFO] [stdout]     |                                                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `splitter::DEFAULT_CHUNK_SIZE`: Use config.chunking.chunk_size instead
[INFO] [stdout]    --> src/lib.rs:129:78
[INFO] [stdout]     |
[INFO] [stdout] 129 |     detect_language, generate_chunk_id, language_map, split_file, CodeChunk, DEFAULT_CHUNK_SIZE,
[INFO] [stdout]     |                                                                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `splitter::DEFAULT_OVERLAP`: Use config.chunking.chunk_overlap instead
[INFO] [stdout]    --> src/lib.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     DEFAULT_OVERLAP,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enable_ltr`
[INFO] [stdout]    --> src/cli.rs:302:9
[INFO] [stdout]     |
[INFO] [stdout] 302 |     let enable_ltr = !no_ltr && config.search.enable_ltr;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enable_ltr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_pos`
[INFO] [stdout]    --> src/context_enriched.rs:169:33
[INFO] [stdout]     |
[INFO] [stdout] 169 |                     if let Some(from_pos) = trimmed.get(7..).and_then(|s| s.find(" from")) {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `docstring_char` is never read
[INFO] [stdout]    --> src/context_enriched.rs:425:38
[INFO] [stdout]     |
[INFO] [stdout] 425 |               let mut docstring_char = '"';
[INFO] [stdout]     |                                        ^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 431 | /                     docstring_char = if trimmed.starts_with("\"\"\"") {
[INFO] [stdout] 432 | |                         '"'
[INFO] [stdout] 433 | |                     } else {
[INFO] [stdout] 434 | |                         '\''
[INFO] [stdout] 435 | |                     };
[INFO] [stdout]     | |_____________________- `docstring_char` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query_terms`
[INFO] [stdout]    --> src/database.rs:596:9
[INFO] [stdout]     |
[INFO] [stdout] 596 |     let query_terms: Vec<&str> = query_text.split_whitespace().collect();
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_query_terms`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `list_indexed_codebases`
[INFO] [stdout]  --> src/cli.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::indexing::{list_indexed_codebases, Indexer, IndexingOptions};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: duplicated attribute
[INFO] [stdout]    --> src/embedding.rs:863:5
[INFO] [stdout]     |
[INFO] [stdout] 863 |     #[test]
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(duplicate_macro_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stdout]  --> src/performance/hnsw.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::BinaryHeap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Reverse`
[INFO] [stdout]  --> src/performance/hnsw.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp::Reverse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `database::DATA_DIR`: Use config.database.data_dir instead
[INFO] [stdout]    --> src/lib.rs:111:58
[INFO] [stdout]     |
[INFO] [stdout] 111 |     get_codebase_metadata, list_codebases_with_metadata, DATA_DIR, DB_NAME,
[INFO] [stdout]     |                                                          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `database::DB_NAME`: Use config.database.db_name instead
[INFO] [stdout]    --> src/lib.rs:111:68
[INFO] [stdout]     |
[INFO] [stdout] 111 |     get_codebase_metadata, list_codebases_with_metadata, DATA_DIR, DB_NAME,
[INFO] [stdout]     |                                                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `splitter::DEFAULT_CHUNK_SIZE`: Use config.chunking.chunk_size instead
[INFO] [stdout]    --> src/lib.rs:129:78
[INFO] [stdout]     |
[INFO] [stdout] 129 |     detect_language, generate_chunk_id, language_map, split_file, CodeChunk, DEFAULT_CHUNK_SIZE,
[INFO] [stdout]     |                                                                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `splitter::DEFAULT_OVERLAP`: Use config.chunking.chunk_overlap instead
[INFO] [stdout]    --> src/lib.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     DEFAULT_OVERLAP,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tags`
[INFO] [stdout]    --> src/mcp.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |         let tags = args.get("tags").and_then(|v| v.as_str());
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_tags`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `completed`
[INFO] [stdout]    --> src/performance/batch.rs:211:13
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let completed = ((batch_idx + 1) * batch.len()).min(total_items);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_completed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]    --> src/performance/distributed.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         query: &str,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limit`
[INFO] [stdout]    --> src/performance/distributed.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |         limit: usize,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_limit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reciprocal_rank_fusion` is never used
[INFO] [stdout]    --> src/database.rs:672:4
[INFO] [stdout]     |
[INFO] [stdout] 672 | fn reciprocal_rank_fusion(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `access_count` and `timestamp` are never read
[INFO] [stdout]   --> src/performance/cache.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct CacheEntry {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     access_count: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 15 |     timestamp: std::time::Instant,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `routing_cache` is never read
[INFO] [stdout]   --> src/performance/distributed.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct ShardRouter {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     routing_cache: RwLock<HashMap<String, usize>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `model` is never read
[INFO] [stdout]    --> src/performance/distributed.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub struct DistributedQueryRouter {
[INFO] [stdout]     |            ---------------------- field in this struct
[INFO] [stdout] 161 |     router: Arc<ShardRouter>,
[INFO] [stdout] 162 |     model: String,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Chunk`
[INFO] [stdout]    --> benches/benchmark.rs:143:32
[INFO] [stdout]     |
[INFO] [stdout] 143 |     use code_search::{init_db, Chunk};
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_path`
[INFO] [stdout]    --> benches/benchmark.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |             let db_path = temp_dir.path().join("test.db");
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_path`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enable_ltr`
[INFO] [stdout]    --> src/cli.rs:302:9
[INFO] [stdout]     |
[INFO] [stdout] 302 |     let enable_ltr = !no_ltr && config.search.enable_ltr;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enable_ltr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_pos`
[INFO] [stdout]    --> src/context_enriched.rs:169:33
[INFO] [stdout]     |
[INFO] [stdout] 169 |                     if let Some(from_pos) = trimmed.get(7..).and_then(|s| s.find(" from")) {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `docstring_char` is never read
[INFO] [stdout]    --> src/context_enriched.rs:425:38
[INFO] [stdout]     |
[INFO] [stdout] 425 |               let mut docstring_char = '"';
[INFO] [stdout]     |                                        ^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 431 | /                     docstring_char = if trimmed.starts_with("\"\"\"") {
[INFO] [stdout] 432 | |                         '"'
[INFO] [stdout] 433 | |                     } else {
[INFO] [stdout] 434 | |                         '\''
[INFO] [stdout] 435 | |                     };
[INFO] [stdout]     | |_____________________- `docstring_char` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query_terms`
[INFO] [stdout]    --> src/database.rs:596:9
[INFO] [stdout]     |
[INFO] [stdout] 596 |     let query_terms: Vec<&str> = query_text.split_whitespace().collect();
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_query_terms`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tags`
[INFO] [stdout]    --> src/mcp.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |         let tags = args.get("tags").and_then(|v| v.as_str());
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_tags`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb1`
[INFO] [stdout]    --> src/performance/cache.rs:238:13
[INFO] [stdout]     |
[INFO] [stdout] 238 |         let emb1 = cache.get("test", Some("codebase1"));
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_emb1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb2`
[INFO] [stdout]    --> src/performance/cache.rs:239:13
[INFO] [stdout]     |
[INFO] [stdout] 239 |         let emb2 = cache.get("test", Some("codebase2"));
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_emb2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb3`
[INFO] [stdout]    --> src/performance/cache.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let emb3 = cache.get("test", None);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_emb3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `completed`
[INFO] [stdout]    --> src/performance/batch.rs:211:13
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let completed = ((batch_idx + 1) * batch.len()).min(total_items);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_completed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]    --> src/performance/distributed.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         query: &str,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limit`
[INFO] [stdout]    --> src/performance/distributed.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |         limit: usize,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_limit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reciprocal_rank_fusion` is never used
[INFO] [stdout]    --> src/database.rs:672:4
[INFO] [stdout]     |
[INFO] [stdout] 672 | fn reciprocal_rank_fusion(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `access_count` and `timestamp` are never read
[INFO] [stdout]   --> src/performance/cache.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct CacheEntry {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     access_count: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 15 |     timestamp: std::time::Instant,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `routing_cache` is never read
[INFO] [stdout]   --> src/performance/distributed.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct ShardRouter {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     routing_cache: RwLock<HashMap<String, usize>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `model` is never read
[INFO] [stdout]    --> src/performance/distributed.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub struct DistributedQueryRouter {
[INFO] [stdout]     |            ---------------------- field in this struct
[INFO] [stdout] 161 |     router: Arc<ShardRouter>,
[INFO] [stdout] 162 |     model: String,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 03s
[INFO] running `Command { std: "docker" "inspect" "2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca", kill_on_drop: false }`
[INFO] [stdout] 2dba38cc06aff4cf4c44c8f7a3b8f441aab1d52e41b0e798500e33333c81e5ca
