[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] 40d9edfc8b118c7e8e0d68a9f03c3a17b199e96b
[INFO] testing KaruTest/rust-codebase-search against 1.94.0 for beta-1.95-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKaruTest%2Frust-codebase-search" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-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-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/KaruTest/rust-codebase-search on toolchain 1.94.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "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" "+1.94.0" "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-json v0.24.8
[INFO] [stderr]   Downloaded monostate v0.1.18
[INFO] [stderr]   Downloaded macro_rules_attribute-proc_macro v0.2.2
[INFO] [stderr]   Downloaded levenshtein v1.0.5
[INFO] [stderr]   Downloaded hmac-sha256 v1.1.14
[INFO] [stderr]   Downloaded monostate-impl v0.1.18
[INFO] [stderr]   Downloaded macro_rules_attribute v0.2.2
[INFO] [stderr]   Downloaded socks v0.3.4
[INFO] [stderr]   Downloaded rayon-cond v0.3.0
[INFO] [stderr]   Downloaded base64ct v1.8.3
[INFO] [stderr]   Downloaded native-tls v0.2.18
[INFO] [stderr]   Downloaded hf-hub v0.3.2
[INFO] [stderr]   Downloaded memmap2 v0.9.10
[INFO] [stderr]   Downloaded ort-sys v2.0.0-rc.11
[INFO] [stderr]   Downloaded unicode-normalization-alignments v0.1.12
[INFO] [stderr]   Downloaded tree-sitter-javascript v0.23.1
[INFO] [stderr]   Downloaded tree-sitter-go v0.23.4
[INFO] [stderr]   Downloaded ureq v3.2.0
[INFO] [stderr]   Downloaded webpki-root-certs v1.0.6
[INFO] [stderr]   Downloaded esaxx-rs v0.1.10
[INFO] [stderr]   Downloaded tree-sitter v0.24.7
[INFO] [stderr]   Downloaded tokenizers v0.19.1
[INFO] [stderr]   Downloaded ort v2.0.0-rc.11
[INFO] [stderr]   Downloaded rusqlite v0.31.0
[INFO] [stderr]   Downloaded tree-sitter-c v0.23.4
[INFO] [stderr]   Downloaded lzma-rust2 v0.15.7
[INFO] [stderr]   Downloaded tree-sitter-java v0.23.5
[INFO] [stderr]   Downloaded tree-sitter-python v0.23.6
[INFO] [stderr]   Downloaded tree-sitter-yaml v0.7.2
[INFO] [stderr]   Downloaded tree-sitter-rust v0.23.3
[INFO] [stderr]   Downloaded ureq-proto v0.5.3
[INFO] [stderr]   Downloaded streaming-iterator v0.1.9
[INFO] [stderr]   Downloaded tree-sitter-bash v0.23.3
[INFO] [stderr]   Downloaded spm_precompiled v0.1.4
[INFO] [stderr]   Downloaded tree-sitter-ruby v0.23.1
[INFO] [stderr]   Downloaded tree-sitter-typescript v0.23.2
[INFO] [stderr]   Downloaded tree-sitter-cpp v0.23.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0bcc9e86facb59e14c4cd8bae2572aa6f77074d7404715306354cfa0d6afb95a
[INFO] running `Command { std: "docker" "start" "-a" "0bcc9e86facb59e14c4cd8bae2572aa6f77074d7404715306354cfa0d6afb95a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0bcc9e86facb59e14c4cd8bae2572aa6f77074d7404715306354cfa0d6afb95a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0bcc9e86facb59e14c4cd8bae2572aa6f77074d7404715306354cfa0d6afb95a", kill_on_drop: false }`
[INFO] [stdout] 0bcc9e86facb59e14c4cd8bae2572aa6f77074d7404715306354cfa0d6afb95a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4b1592ed283e8bb0f5c266aa6e515d4506e31f34847efdc622ab233b22966e76
[INFO] running `Command { std: "docker" "start" "-a" "4b1592ed283e8bb0f5c266aa6e515d4506e31f34847efdc622ab233b22966e76", kill_on_drop: false }`
[INFO] [stderr]    Compiling tree-sitter-language v0.1.7
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling clap_builder v4.5.60
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling number_prefix v0.4.0
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling streaming-iterator v0.1.9
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]    Compiling tree-sitter-java v0.23.5
[INFO] [stderr]    Compiling tree-sitter-go v0.23.4
[INFO] [stderr]    Compiling tree-sitter-cpp v0.23.4
[INFO] [stderr]    Compiling tree-sitter-rust v0.23.3
[INFO] [stderr]    Compiling tree-sitter v0.24.7
[INFO] [stderr]    Compiling tree-sitter-c v0.23.4
[INFO] [stderr]    Compiling tree-sitter-json v0.24.8
[INFO] [stderr]    Compiling tree-sitter-yaml v0.7.2
[INFO] [stderr]    Compiling tree-sitter-bash v0.23.3
[INFO] [stderr]    Compiling tree-sitter-javascript v0.23.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tree-sitter-ruby v0.23.1
[INFO] [stderr]    Compiling tree-sitter-python v0.23.6
[INFO] [stderr]    Compiling tree-sitter-typescript v0.23.2
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling socket2 v0.6.2
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling indicatif v0.17.11
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling ndarray v0.17.2
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling directories v5.0.1
[INFO] [stderr]    Compiling memmap2 v0.9.10
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling levenshtein v1.0.5
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling clap v4.5.60
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling 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]     |                                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[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: `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 49.08s
[INFO] running `Command { std: "docker" "inspect" "4b1592ed283e8bb0f5c266aa6e515d4506e31f34847efdc622ab233b22966e76", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4b1592ed283e8bb0f5c266aa6e515d4506e31f34847efdc622ab233b22966e76", kill_on_drop: false }`
[INFO] [stdout] 4b1592ed283e8bb0f5c266aa6e515d4506e31f34847efdc622ab233b22966e76
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6b44ced4c0432c8e040c7effbf4c929fbac85226cabaaab0d20ae6d98bc7e88b
[INFO] running `Command { std: "docker" "start" "-a" "6b44ced4c0432c8e040c7effbf4c929fbac85226cabaaab0d20ae6d98bc7e88b", kill_on_drop: false }`
[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 zerocopy-derive v0.8.39
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling ndarray v0.17.2
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling tempfile v3.25.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling 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]     |                                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[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: `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: `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]     |                                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[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 `test` profile [unoptimized + debuginfo] target(s) in 30.59s
[INFO] running `Command { std: "docker" "inspect" "6b44ced4c0432c8e040c7effbf4c929fbac85226cabaaab0d20ae6d98bc7e88b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6b44ced4c0432c8e040c7effbf4c929fbac85226cabaaab0d20ae6d98bc7e88b", kill_on_drop: false }`
[INFO] [stdout] 6b44ced4c0432c8e040c7effbf4c929fbac85226cabaaab0d20ae6d98bc7e88b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 0322ffc77b633812a1cf2856f710c10e4ab21ebbd403ca31217d916e64ea60ce
[INFO] running `Command { std: "docker" "start" "-a" "0322ffc77b633812a1cf2856f710c10e4ab21ebbd403ca31217d916e64ea60ce", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `list_indexed_codebases`
[INFO] [stderr]  --> src/cli.rs:5:23
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::indexing::{list_indexed_codebases, Indexer, IndexingOptions};
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stderr]  --> src/performance/hnsw.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::collections::BinaryHeap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cmp::Reverse`
[INFO] [stderr]  --> src/performance/hnsw.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::cmp::Reverse;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `database::DATA_DIR`: Use config.database.data_dir instead
[INFO] [stderr]    --> src/lib.rs:111:58
[INFO] [stderr]     |
[INFO] [stderr] 111 |     get_codebase_metadata, list_codebases_with_metadata, DATA_DIR, DB_NAME,
[INFO] [stderr]     |                                                          ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `database::DB_NAME`: Use config.database.db_name instead
[INFO] [stderr]    --> src/lib.rs:111:68
[INFO] [stderr]     |
[INFO] [stderr] 111 |     get_codebase_metadata, list_codebases_with_metadata, DATA_DIR, DB_NAME,
[INFO] [stderr]     |                                                                    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `splitter::DEFAULT_CHUNK_SIZE`: Use config.chunking.chunk_size instead
[INFO] [stderr]    --> src/lib.rs:129:78
[INFO] [stderr]     |
[INFO] [stderr] 129 |     detect_language, generate_chunk_id, language_map, split_file, CodeChunk, DEFAULT_CHUNK_SIZE,
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `splitter::DEFAULT_OVERLAP`: Use config.chunking.chunk_overlap instead
[INFO] [stderr]    --> src/lib.rs:130:5
[INFO] [stderr]     |
[INFO] [stderr] 130 |     DEFAULT_OVERLAP,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `enable_ltr`
[INFO] [stderr]    --> src/cli.rs:302:9
[INFO] [stderr]     |
[INFO] [stderr] 302 |     let enable_ltr = !no_ltr && config.search.enable_ltr;
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enable_ltr`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `from_pos`
[INFO] [stderr]    --> src/context_enriched.rs:169:33
[INFO] [stderr]     |
[INFO] [stderr] 169 |                     if let Some(from_pos) = trimmed.get(7..).and_then(|s| s.find(" from")) {
[INFO] [stderr]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_pos`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `docstring_char` is never read
[INFO] [stderr]    --> src/context_enriched.rs:425:38
[INFO] [stderr]     |
[INFO] [stderr] 425 |             let mut docstring_char = '"';
[INFO] [stderr]     |                                      ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `query_terms`
[INFO] [stderr]    --> src/database.rs:596:9
[INFO] [stderr]     |
[INFO] [stderr] 596 |     let query_terms: Vec<&str> = query_text.split_whitespace().collect();
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_query_terms`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tags`
[INFO] [stderr]    --> src/mcp.rs:411:13
[INFO] [stderr]     |
[INFO] [stderr] 411 |         let tags = args.get("tags").and_then(|v| v.as_str());
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_tags`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `completed`
[INFO] [stderr]    --> src/performance/batch.rs:211:13
[INFO] [stderr]     |
[INFO] [stderr] 211 |         let completed = ((batch_idx + 1) * batch.len()).min(total_items);
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_completed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `query`
[INFO] [stderr]    --> src/performance/distributed.rs:176:9
[INFO] [stderr]     |
[INFO] [stderr] 176 |         query: &str,
[INFO] [stderr]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `limit`
[INFO] [stderr]    --> src/performance/distributed.rs:178:9
[INFO] [stderr]     |
[INFO] [stderr] 178 |         limit: usize,
[INFO] [stderr]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_limit`
[INFO] [stderr] 
[INFO] [stderr] warning: function `reciprocal_rank_fusion` is never used
[INFO] [stderr]    --> src/database.rs:672:4
[INFO] [stderr]     |
[INFO] [stderr] 672 | fn reciprocal_rank_fusion(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `access_count` and `timestamp` are never read
[INFO] [stderr]   --> src/performance/cache.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | struct CacheEntry {
[INFO] [stderr]    |        ---------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 14 |     access_count: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 15 |     timestamp: std::time::Instant,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `routing_cache` is never read
[INFO] [stderr]   --> src/performance/distributed.rs:78:5
[INFO] [stderr]    |
[INFO] [stderr] 75 | pub struct ShardRouter {
[INFO] [stderr]    |            ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 78 |     routing_cache: RwLock<HashMap<String, usize>>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `model` is never read
[INFO] [stderr]    --> src/performance/distributed.rs:162:5
[INFO] [stderr]     |
[INFO] [stderr] 160 | pub struct DistributedQueryRouter {
[INFO] [stderr]     |            ---------------------- field in this struct
[INFO] [stderr] 161 |     router: Arc<ShardRouter>,
[INFO] [stderr] 162 |     model: String,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `code-search` (lib) generated 19 warnings (run `cargo fix --lib -p code-search` to apply 10 suggestions)
[INFO] [stderr] warning: unused variable: `emb1`
[INFO] [stderr]    --> src/performance/cache.rs:238:13
[INFO] [stderr]     |
[INFO] [stderr] 238 |         let emb1 = cache.get("test", Some("codebase1"));
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_emb1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `emb2`
[INFO] [stderr]    --> src/performance/cache.rs:239:13
[INFO] [stderr]     |
[INFO] [stderr] 239 |         let emb2 = cache.get("test", Some("codebase2"));
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_emb2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `emb3`
[INFO] [stderr]    --> src/performance/cache.rs:240:13
[INFO] [stderr]     |
[INFO] [stderr] 240 |         let emb3 = cache.get("test", None);
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_emb3`
[INFO] [stderr] 
[INFO] [stderr] warning: `code-search` (lib test) generated 22 warnings (19 duplicates) (run `cargo fix --lib -p code-search --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.37s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/code_search-af5ae4d2d92d6f62)
[INFO] [stdout] 
[INFO] [stdout] running 84 tests
[INFO] [stdout] test cli::tests::test_parse_cli_index ... ok
[INFO] [stdout] test cli::tests::test_parse_cli_config ... ok
[INFO] [stdout] test cli::tests::test_parse_cli_delete ... ok
[INFO] [stdout] test cli::tests::test_parse_cli_config_path ... ok
[INFO] [stdout] test cli::tests::test_parse_cli_status ... ok
[INFO] [stdout] test config::tests::test_config_path ... ok
[INFO] [stdout] test config::tests::test_legacy_accessors ... ok
[INFO] [stdout] test config::tests::test_extensions_contain_common_languages ... ok
[INFO] [stdout] test config::tests::test_config_partial_deserialization ... ok
[INFO] [stdout] test config::tests::test_config_serialization ... ok
[INFO] [stdout] test cli::tests::test_parse_cli_search ... ok
[INFO] [stdout] test config::tests::test_skip_dirs_contain_common ... ok
[INFO] [stdout] test config::tests::test_skip_files_contain_common ... ok
[INFO] [stdout] test context_enriched::tests::test_estimate_tokens ... ok
[INFO] [stdout] test context_enriched::tests::test_extract_doc_comments_python ... ok
[INFO] [stdout] test context_enriched::tests::test_enrich_chunk ... ok
[INFO] [stdout] test context_enriched::tests::test_extract_function_signatures_rust ... ok
[INFO] [stdout] test context_enriched::tests::test_extract_python_imports ... ok
[INFO] [stdout] test context_enriched::tests::test_extract_rust_imports ... ok
[INFO] [stdout] test embedding::tests::test_get_model_dimension ... ok
[INFO] [stdout] test embedding::tests::test_fallback_embedding ... ok
[INFO] [stdout] test embedding::tests::test_hash_to_embedding ... ok
[INFO] [stdout] test embedding::tests::test_l2_normalize_zero_vector ... ok
[INFO] [stdout] test embedding::tests::test_l2_normalize ... ok
[INFO] [stdout] test embedding::tests::test_model_dimensions ... ok
[INFO] [stdout] test embedding::tests::test_model_prefixes ... ok
[INFO] [stdout] test embedding::tests::test_model_type_from_str ... ok
[INFO] [stdout] test embedding::tests::test_zero_embedding ... ok
[INFO] [stdout] test indexing::tests::test_default_config ... ok
[INFO] [stdout] test mcp::tests::test_server_initialization ... ok
[INFO] [stdout] test indexing::tests::test_should_skip_file ... ok
[INFO] [stdout] test performance::batch::tests::test_batch_processing_empty ... ok
[INFO] [stdout] test performance::batch::tests::test_gpu_detection ... ok
[INFO] [stdout] test mcp::tests::test_tools_list ... ok
[INFO] [stdout] test performance::cache::tests::test_cache_basic ... ok
[INFO] [stdout] test performance::batch::tests::test_optimal_batch_size ... ok
[INFO] [stdout] test performance::cache::tests::test_cache_with_codebase_filter ... ok
[INFO] [stdout] test performance::distributed::tests::test_result_merging ... ok
[INFO] [stdout] test performance::cache::tests::test_cache_invalidation ... ok
[INFO] [stdout] test performance::distributed::tests::test_shard_router ... ok
[INFO] [stdout] test performance::hnsw::tests::test_distance_to_similarity ... ok
[INFO] [stdout] test query_expansion::tests::test_expand_query_database ... ok
[INFO] [stdout] test query_expansion::tests::test_get_synonyms ... ok
[INFO] [stdout] test query_expansion::tests::test_expand_query_fts ... ok
[INFO] [stdout] test gitignore::tests::test_create_matcher ... ok
[INFO] [stdout] test query_expansion::tests::test_correct_typos ... ok
[INFO] [stdout] test query_expansion::tests::test_token_budget ... ok
[INFO] [stdout] test search::tests::test_format_results_empty ... ok
[INFO] [stdout] test query_expansion::tests::test_expand_query_auth ... ok
[INFO] [stdout] test gitignore::tests::test_absolute_paths ... ok
[INFO] [stdout] test query_expansion::tests::test_process_query ... ok
[INFO] [stdout] test query_expansion::tests::test_correct_typos_no_change ... ok
[INFO] [stdout] test performance::batch::tests::test_batch_processing ... ok
[INFO] [stdout] test gitignore::tests::test_is_ignored_patterns ... ok
[INFO] [stdout] test session::tests::test_search_session_creation ... ok
[INFO] [stdout] test gitignore::tests::test_is_ignored_target ... ok
[INFO] [stdout] test gitignore::tests::test_is_not_ignored_source ... ok
[INFO] [stdout] test gitignore::tests::test_filter_paths ... ok
[INFO] [stdout] test search::tests::test_search_empty_query ... ok
[INFO] [stdout] test query_expansion::tests::test_token_budget_chars ... ok
[INFO] [stdout] test session::tests::test_add_step ... ok
[INFO] [stdout] test session::tests::test_relevant_files ... ok
[INFO] [stdout] test session::tests::test_select_result ... ok
[INFO] [stdout] test splitter::tests::test_generate_chunk_id ... ok
[INFO] [stdout] test session::tests::test_session_manager_delete ... ok
[INFO] [stdout] test performance::hnsw::tests::test_hnsw_insert_and_search ... ok
[INFO] [stdout] test splitter::tests::test_language_map ... ok
[INFO] [stdout] test session::tests::test_session_manager_create ... ok
[INFO] [stdout] test gitignore::tests::test_nested_gitignore ... ok
[INFO] [stdout] test query_expansion::tests::test_token_budget_from_str ... ok
[INFO] [stdout] test syntax_aware::tests::test_get_language_config_rust ... ok
[INFO] [stdout] test syntax_aware::tests::test_is_language_supported ... ok
[INFO] [stdout] test splitter::tests::test_split_file_empty ... ok
[INFO] [stdout] test splitter::tests::test_split_file_basic ... ok
[INFO] [stdout] test splitter::tests::test_split_file_small ... ok
[INFO] [stdout] test syntax_aware::tests::test_get_language_config_python ... ok
[INFO] [stdout] test tests::test_zero_embedding ... ok
[INFO] [stdout] test syntax_aware::tests::test_split_file_syntax_aware_rust ... ok
[INFO] [stdout] test tests::test_code_chunking ... ok
[INFO] [stdout] test splitter::tests::test_detect_language ... ok
[INFO] [stdout] test tests::test_language_detection ... ok
[INFO] [stdout] test syntax_aware::tests::test_split_file_syntax_aware_unsupported ... ok
[INFO] [stdout] test config::tests::test_default_config ... ok
[INFO] [stdout] test session::tests::test_session_manager ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 84 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/code_search-7477af8f690d0c9f)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-18ebfa2cb12a3a73)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test integration_tests::test_chunk_overlap ... ok
[INFO] [stdout] test integration_tests::test_file_hashing ... ok
[INFO] [stdout] test integration_tests::test_chunk_id_generation ... ok
[INFO] [stdout] test integration_tests::test_codebase_hash ... ok
[INFO] [stdout] test integration_tests::test_chunk_size_boundaries ... ok
[INFO] [stdout] test integration_tests::test_empty_file_handling ... ok
[INFO] [stdout] test integration_tests::test_language_detection_comprehensive ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests code_search
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test src/lib.rs - (line 19) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 54) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 37) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "0322ffc77b633812a1cf2856f710c10e4ab21ebbd403ca31217d916e64ea60ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0322ffc77b633812a1cf2856f710c10e4ab21ebbd403ca31217d916e64ea60ce", kill_on_drop: false }`
[INFO] [stdout] 0322ffc77b633812a1cf2856f710c10e4ab21ebbd403ca31217d916e64ea60ce
