[INFO] fetching crate ruvllm-esp32 0.3.2...
[INFO] testing ruvllm-esp32-0.3.2 against 1.95.0 for beta-1.96-2
[INFO] extracting crate ruvllm-esp32 0.3.2 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate ruvllm-esp32 0.3.2
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate ruvllm-esp32 0.3.2
[INFO] tweaked toml for crates.io crate ruvllm-esp32 0.3.2 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate ruvllm-esp32 0.3.2 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ruvllm-esp32 0.3.2 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libredox v0.1.11
[INFO] [stderr]   Downloaded normpath v1.5.0
[INFO] [stderr]   Downloaded build-time v0.1.3
[INFO] [stderr]   Downloaded embedded-svc v0.28.1
[INFO] [stderr]   Downloaded redox_syscall v0.6.0
[INFO] [stderr]   Downloaded embassy-sync v0.6.2
[INFO] [stderr]   Downloaded zmij v0.1.9
[INFO] [stderr]   Downloaded esp-idf-sys v0.35.0
[INFO] [stderr]   Downloaded serde_json v1.0.147
[INFO] [stderr]   Downloaded esp-idf-hal v0.44.1
[INFO] [stderr]   Downloaded fixed v1.29.0
[INFO] [stderr]   Downloaded esp-idf-svc v0.49.1
[INFO] [stderr]   Downloaded embuild v0.32.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5937ec538ab16fc7775ba337944583a92e09b7696a5b29e43b4df8cb305063cb
[INFO] running `Command { std: "docker" "start" "-a" "5937ec538ab16fc7775ba337944583a92e09b7696a5b29e43b4df8cb305063cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5937ec538ab16fc7775ba337944583a92e09b7696a5b29e43b4df8cb305063cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5937ec538ab16fc7775ba337944583a92e09b7696a5b29e43b4df8cb305063cb", kill_on_drop: false }`
[INFO] [stdout] 5937ec538ab16fc7775ba337944583a92e09b7696a5b29e43b4df8cb305063cb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ba1884d68977feb10fa9f83718a4ccbe028ef44c02a6edcdaa5ae7be65c57d4c
[INFO] running `Command { std: "docker" "start" "-a" "ba1884d68977feb10fa9f83718a4ccbe028ef44c02a6edcdaa5ae7be65c57d4c", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling az v1.2.1
[INFO] [stderr]    Compiling fixed v1.29.0
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling heapless v0.8.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling bytemuck v1.24.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling hash32 v0.3.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling cobs v0.3.0
[INFO] [stderr]    Compiling postcard v1.1.3
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ruvllm-esp32 v0.3.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `QuantParams` and `QuantizationType`
[INFO] [stdout]  --> src/micro_inference.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::quantized::{QuantizationType, matmul_int8, QuantParams};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^               ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `frozen`
[INFO] [stdout]    --> src/optimizations/micro_lora.rs:178:15
[INFO] [stdout]     |
[INFO] [stdout] 178 |     #[cfg(not(feature = "frozen"))]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `frozen` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `frozen`
[INFO] [stdout]    --> src/federation/coordinator.rs:280:15
[INFO] [stdout]     |
[INFO] [stdout] 280 |     #[cfg(not(feature = "frozen"))]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `frozen` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::protocol::ChipId`
[INFO] [stdout]   --> src/federation/massive_scale.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use super::protocol::ChipId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `euclidean_distance_i8`
[INFO] [stdout]   --> src/ruvector/micro_hnsw.rs:22:42
[INFO] [stdout]    |
[INFO] [stdout] 22 | use super::{MicroVector, DistanceMetric, euclidean_distance_i8, MAX_NEIGHBORS};
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SearchResult`
[INFO] [stdout]   --> src/ruvector/semantic_memory.rs:34:36
[INFO] [stdout]    |
[INFO] [stdout] 34 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SearchResult`
[INFO] [stdout]   --> src/ruvector/rag.rs:45:36
[INFO] [stdout]    |
[INFO] [stdout] 45 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `euclidean_distance_i8`
[INFO] [stdout]   --> src/ruvector/anomaly.rs:32:65
[INFO] [stdout]    |
[INFO] [stdout] 32 | use super::{MicroHNSW, HNSWConfig, MicroVector, DistanceMetric, euclidean_distance_i8};
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ruvector/anomaly.rs:306:30
[INFO] [stdout]     |
[INFO] [stdout] 306 |         self.avg_distance += (delta / n as i32);
[INFO] [stdout]     |                              ^                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 306 -         self.avg_distance += (delta / n as i32);
[INFO] [stdout] 306 +         self.avg_distance += delta / n as i32;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_VECTORS`
[INFO] [stdout]   --> src/ruvector/federated_search.rs:40:79
[INFO] [stdout]    |
[INFO] [stdout] 40 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric, MAX_VECTORS};
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/diagnostics.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |     let mut issues = heapless::Vec::new();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         query: &[i8],
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `keys`
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |         keys: &[&[i8]],
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_keys`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bisection`
[INFO] [stdout]    --> src/federation/massive_scale.rs:221:13
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let bisection = self.config.topology.bisection_bandwidth();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bisection`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chips`
[INFO] [stdout]    --> src/federation/massive_scale.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let chips = 1 << power;
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_chips`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cluster_distance`
[INFO] [stdout]    --> src/ruvector/anomaly.rs:252:31
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let (nearest_cluster, cluster_distance) = self.find_nearest_cluster(embedding);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_distance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> src/ruvector/federated_search.rs:207:13
[INFO] [stdout]     |
[INFO] [stdout] 207 |         let start = 0u32; // Would use actual timer on ESP32
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `num_heads` is never read
[INFO] [stdout]   --> src/attention.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct MicroAttention {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     num_heads: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `feature_dim` is never read
[INFO] [stdout]    --> src/attention.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct LinearAttention {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 137 |     /// Feature dimension for kernel
[INFO] [stdout] 138 |     feature_dim: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `scale` is never read
[INFO] [stdout]   --> src/embedding.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct EmbeddingTable<const VOCAB: usize, const DIM: usize> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     scale: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dim` is never read
[INFO] [stdout]   --> src/optimizations/binary_quant.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct BinaryEmbedding<const VOCAB: usize, const DIM_BYTES: usize> {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     dim: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input_scale` is never read
[INFO] [stdout]   --> src/optimizations/lookup_tables.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct SoftmaxLUT {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     input_scale: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `a_params` and `b_params` are never read
[INFO] [stdout]   --> src/optimizations/micro_lora.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct MicroLoRA {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 50 |     a_params: QuantParams,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 51 |     /// Quantization params for B
[INFO] [stdout] 52 |     b_params: QuantParams,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current_step` is never read
[INFO] [stdout]    --> src/optimizations/pruning.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout]  94 | pub struct LayerPruner {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 100 |     current_step: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input_buffer` is never read
[INFO] [stdout]    --> src/federation/pipeline.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct PipelineNode {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 151 |     input_buffer: HVec<i8, 256>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `output_buffer` is never read
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct TensorParallelNode {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     output_buffer: HVec<i32, 256>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_master` and `topology` are never read
[INFO] [stdout]   --> src/federation/coordinator.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct FederationCoordinator {
[INFO] [stdout]    |            --------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 75 |     is_master: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     topology: ClusterTopology,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `node_id`, `siblings`, `level`, and `total_levels` are never read
[INFO] [stdout]    --> src/federation/massive_scale.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 340 | pub struct DistributedCoordinator {
[INFO] [stdout]     |            ---------------------- fields in this struct
[INFO] [stdout] 341 |     /// This node's ID
[INFO] [stdout] 342 |     node_id: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 |     siblings: HVec<u32, MAX_CHILDREN>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 349 |     /// Current level in hierarchy
[INFO] [stdout] 350 |     level: u8,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 351 |     /// Total levels
[INFO] [stdout] 352 |     total_levels: u8,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `round` is never read
[INFO] [stdout]    --> src/federation/massive_scale.rs:520:5
[INFO] [stdout]     |
[INFO] [stdout] 514 | pub struct GossipProtocol {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 520 |     round: u32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `variance` is never read
[INFO] [stdout]    --> src/ruvector/anomaly.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | struct Cluster {
[INFO] [stdout]     |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 114 |     variance: i32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Cluster` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `std`
[INFO] [stdout]    --> src/main.rs:256:7
[INFO] [stdout]     |
[INFO] [stdout] 256 | #[cfg(feature = "std")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `std` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `std`
[INFO] [stdout]    --> src/main.rs:319:7
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[cfg(feature = "std")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `std` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_variant` is never used
[INFO] [stdout]    --> src/main.rs:245:4
[INFO] [stdout]     |
[INFO] [stdout] 245 | fn detect_variant() -> Esp32Variant {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 33.81s
[INFO] running `Command { std: "docker" "inspect" "ba1884d68977feb10fa9f83718a4ccbe028ef44c02a6edcdaa5ae7be65c57d4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ba1884d68977feb10fa9f83718a4ccbe028ef44c02a6edcdaa5ae7be65c57d4c", kill_on_drop: false }`
[INFO] [stdout] ba1884d68977feb10fa9f83718a4ccbe028ef44c02a6edcdaa5ae7be65c57d4c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d0b289f5b3bc572952f9868ae4361e83e239b8f68806ecf837eb0b199f080cf3
[INFO] running `Command { std: "docker" "start" "-a" "d0b289f5b3bc572952f9868ae4361e83e239b8f68806ecf837eb0b199f080cf3", kill_on_drop: false }`
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling serde_json v1.0.147
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling zmij v0.1.9
[INFO] [stderr]    Compiling itoa v1.0.16
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling clap_builder v4.5.53
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling clap v4.5.53
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling postcard v1.1.3
[INFO] [stderr]    Compiling heapless v0.8.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ruvllm-esp32 v0.3.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `QuantParams` and `QuantizationType`
[INFO] [stdout]  --> src/micro_inference.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::quantized::{QuantizationType, matmul_int8, QuantParams};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^               ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `frozen`
[INFO] [stdout]    --> src/optimizations/micro_lora.rs:178:15
[INFO] [stdout]     |
[INFO] [stdout] 178 |     #[cfg(not(feature = "frozen"))]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `frozen` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `frozen`
[INFO] [stdout]    --> src/federation/coordinator.rs:280:15
[INFO] [stdout]     |
[INFO] [stdout] 280 |     #[cfg(not(feature = "frozen"))]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `frozen` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::protocol::ChipId`
[INFO] [stdout]   --> src/federation/massive_scale.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use super::protocol::ChipId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `euclidean_distance_i8`
[INFO] [stdout]   --> src/ruvector/micro_hnsw.rs:22:42
[INFO] [stdout]    |
[INFO] [stdout] 22 | use super::{MicroVector, DistanceMetric, euclidean_distance_i8, MAX_NEIGHBORS};
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SearchResult`
[INFO] [stdout]   --> src/ruvector/semantic_memory.rs:34:36
[INFO] [stdout]    |
[INFO] [stdout] 34 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SearchResult`
[INFO] [stdout]   --> src/ruvector/rag.rs:45:36
[INFO] [stdout]    |
[INFO] [stdout] 45 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `euclidean_distance_i8`
[INFO] [stdout]   --> src/ruvector/anomaly.rs:32:65
[INFO] [stdout]    |
[INFO] [stdout] 32 | use super::{MicroHNSW, HNSWConfig, MicroVector, DistanceMetric, euclidean_distance_i8};
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ruvector/anomaly.rs:306:30
[INFO] [stdout]     |
[INFO] [stdout] 306 |         self.avg_distance += (delta / n as i32);
[INFO] [stdout]     |                              ^                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 306 -         self.avg_distance += (delta / n as i32);
[INFO] [stdout] 306 +         self.avg_distance += delta / n as i32;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_VECTORS`
[INFO] [stdout]   --> src/ruvector/federated_search.rs:40:79
[INFO] [stdout]    |
[INFO] [stdout] 40 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric, MAX_VECTORS};
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/diagnostics.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |     let mut issues = heapless::Vec::new();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         query: &[i8],
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `keys`
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |         keys: &[&[i8]],
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_keys`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bisection`
[INFO] [stdout]    --> src/federation/massive_scale.rs:221:13
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let bisection = self.config.topology.bisection_bandwidth();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bisection`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chips`
[INFO] [stdout]    --> src/federation/massive_scale.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let chips = 1 << power;
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_chips`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cluster_distance`
[INFO] [stdout]    --> src/ruvector/anomaly.rs:252:31
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let (nearest_cluster, cluster_distance) = self.find_nearest_cluster(embedding);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_distance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> src/ruvector/federated_search.rs:207:13
[INFO] [stdout]     |
[INFO] [stdout] 207 |         let start = 0u32; // Would use actual timer on ESP32
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `num_heads` is never read
[INFO] [stdout]   --> src/attention.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct MicroAttention {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     num_heads: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `feature_dim` is never read
[INFO] [stdout]    --> src/attention.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct LinearAttention {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 137 |     /// Feature dimension for kernel
[INFO] [stdout] 138 |     feature_dim: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `scale` is never read
[INFO] [stdout]   --> src/embedding.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct EmbeddingTable<const VOCAB: usize, const DIM: usize> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     scale: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dim` is never read
[INFO] [stdout]   --> src/optimizations/binary_quant.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct BinaryEmbedding<const VOCAB: usize, const DIM_BYTES: usize> {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     dim: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input_scale` is never read
[INFO] [stdout]   --> src/optimizations/lookup_tables.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct SoftmaxLUT {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     input_scale: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `a_params` and `b_params` are never read
[INFO] [stdout]   --> src/optimizations/micro_lora.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct MicroLoRA {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 50 |     a_params: QuantParams,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 51 |     /// Quantization params for B
[INFO] [stdout] 52 |     b_params: QuantParams,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current_step` is never read
[INFO] [stdout]    --> src/optimizations/pruning.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout]  94 | pub struct LayerPruner {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 100 |     current_step: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input_buffer` is never read
[INFO] [stdout]    --> src/federation/pipeline.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct PipelineNode {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 151 |     input_buffer: HVec<i8, 256>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `output_buffer` is never read
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct TensorParallelNode {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     output_buffer: HVec<i32, 256>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_master` and `topology` are never read
[INFO] [stdout]   --> src/federation/coordinator.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct FederationCoordinator {
[INFO] [stdout]    |            --------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 75 |     is_master: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     topology: ClusterTopology,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `node_id`, `siblings`, `level`, and `total_levels` are never read
[INFO] [stdout]    --> src/federation/massive_scale.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 340 | pub struct DistributedCoordinator {
[INFO] [stdout]     |            ---------------------- fields in this struct
[INFO] [stdout] 341 |     /// This node's ID
[INFO] [stdout] 342 |     node_id: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 |     siblings: HVec<u32, MAX_CHILDREN>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 349 |     /// Current level in hierarchy
[INFO] [stdout] 350 |     level: u8,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 351 |     /// Total levels
[INFO] [stdout] 352 |     total_levels: u8,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `round` is never read
[INFO] [stdout]    --> src/federation/massive_scale.rs:520:5
[INFO] [stdout]     |
[INFO] [stdout] 514 | pub struct GossipProtocol {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 520 |     round: u32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `variance` is never read
[INFO] [stdout]    --> src/ruvector/anomaly.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | struct Cluster {
[INFO] [stdout]     |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 114 |     variance: i32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Cluster` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `std`
[INFO] [stdout]    --> src/main.rs:256:7
[INFO] [stdout]     |
[INFO] [stdout] 256 | #[cfg(feature = "std")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `std` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `std`
[INFO] [stdout]    --> src/main.rs:319:7
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[cfg(feature = "std")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `std` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_variant` is never used
[INFO] [stdout]    --> src/main.rs:245:4
[INFO] [stdout]     |
[INFO] [stdout] 245 | fn detect_variant() -> Esp32Variant {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SlidingWindowAttention`
[INFO] [stdout]   --> tests/simulation_tests.rs:12:64
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ruvllm_esp32::attention::{MicroAttention, LinearAttention, SlidingWindowAttention};
[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 imports: `MEDIUM_SCALE_MAX`, `MEDIUM_SCALE_MIN`, and `MEDIUM_SCALE_OPTIMAL`
[INFO] [stdout]   --> examples/medium_scale_demo.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     MEDIUM_SCALE_MIN, MEDIUM_SCALE_MAX, MEDIUM_SCALE_OPTIMAL,
[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: `ScaleProjection`
[INFO] [stdout]  --> examples/massive_scale_demo.rs:7:65
[INFO] [stdout]   |
[INFO] [stdout] 7 |     MassiveTopology, MassiveScaleConfig, MassiveScaleSimulator, ScaleProjection,
[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: `ruvllm_esp32::prelude::*`
[INFO] [stdout]  --> examples/embedding_demo.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ruvllm_esp32::prelude::*;
[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: `result`
[INFO] [stdout]    --> tests/simulation_tests.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 355 |     let result = engine.generate(&long_prompt, &InferenceConfig { max_tokens: 1, ..Default::default() });
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClusterTopology`, `FederationMessage`, and `PipelineRole`
[INFO] [stdout]   --> examples/federation_demo.rs:8:35
[INFO] [stdout]    |
[INFO] [stdout]  8 |     PipelineConfig, PipelineNode, PipelineRole,
[INFO] [stdout]    |                                   ^^^^^^^^^^^^
[INFO] [stdout]  9 |     FederationCoordinator, ClusterTopology,
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     ChipId, FederationMessage,
[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 imports: `AttentionPattern`, `LayerPruner`, `LoRAConfig`, `MicroLoRA`, `PruningConfig`, and `SparseAttention`
[INFO] [stdout]   --> examples/federation_demo.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     MicroLoRA, LoRAConfig,
[INFO] [stdout]    |     ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 16 |     SparseAttention, AttentionPattern,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     LayerPruner, PruningConfig,
[INFO] [stdout]    |     ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> examples/optimization_demo.rs:160:49
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let mut weights: Vec<i8> = (0..256).map(|i| ((i % 127) as i8 - 64)).collect();
[INFO] [stdout]     |                                                 ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 160 -     let mut weights: Vec<i8> = (0..256).map(|i| ((i % 127) as i8 - 64)).collect();
[INFO] [stdout] 160 +     let mut weights: Vec<i8> = (0..256).map(|i| (i % 127) as i8 - 64).collect();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `std`
[INFO] [stdout]    --> src/main.rs:256:7
[INFO] [stdout]     |
[INFO] [stdout] 256 | #[cfg(feature = "std")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `std` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `std`
[INFO] [stdout]    --> src/main.rs:319:7
[INFO] [stdout]     |
[INFO] [stdout] 319 | #[cfg(feature = "std")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `std` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/federation_demo.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |     let mut drafter = SpeculativeDecoder::new(spec_config.clone(), ChipId(0));
[INFO] [stdout]     |         ----^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]   --> examples/federation_demo.rs:78:13
[INFO] [stdout]    |
[INFO] [stdout] 78 |     for (i, node) in pipeline_nodes.iter().enumerate() {
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `drafter`
[INFO] [stdout]    --> examples/federation_demo.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |     let mut drafter = SpeculativeDecoder::new(spec_config.clone(), ChipId(0));
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_drafter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spec_time`
[INFO] [stdout]    --> examples/federation_demo.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 175 |     let spec_time = start.elapsed();
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spec_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/optimization_demo.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let mut weights: Vec<i8> = (0..256).map(|i| ((i % 127) as i8 - 64)).collect();
[INFO] [stdout]     |         ----^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_variant` is never used
[INFO] [stdout]    --> src/main.rs:245:4
[INFO] [stdout]     |
[INFO] [stdout] 245 | fn detect_variant() -> Esp32Variant {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VOCAB_TEST` is never used
[INFO] [stdout]   --> examples/optimization_demo.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 |     const VOCAB_TEST: usize = 256;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `QuantParams`
[INFO] [stdout]  --> src/micro_inference.rs:6:55
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::quantized::{QuantizationType, matmul_int8, QuantParams};
[INFO] [stdout]   |                                                       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `frozen`
[INFO] [stdout]    --> src/optimizations/micro_lora.rs:178:15
[INFO] [stdout]     |
[INFO] [stdout] 178 |     #[cfg(not(feature = "frozen"))]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `frozen` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `frozen`
[INFO] [stdout]    --> src/federation/coordinator.rs:280:15
[INFO] [stdout]     |
[INFO] [stdout] 280 |     #[cfg(not(feature = "frozen"))]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stdout]     = help: consider adding `frozen` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::protocol::ChipId`
[INFO] [stdout]   --> src/federation/massive_scale.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use super::protocol::ChipId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `euclidean_distance_i8`
[INFO] [stdout]   --> src/ruvector/micro_hnsw.rs:22:42
[INFO] [stdout]    |
[INFO] [stdout] 22 | use super::{MicroVector, DistanceMetric, euclidean_distance_i8, MAX_NEIGHBORS};
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SearchResult`
[INFO] [stdout]   --> src/ruvector/semantic_memory.rs:34:36
[INFO] [stdout]    |
[INFO] [stdout] 34 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SearchResult`
[INFO] [stdout]   --> src/ruvector/rag.rs:45:36
[INFO] [stdout]    |
[INFO] [stdout] 45 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `euclidean_distance_i8`
[INFO] [stdout]   --> src/ruvector/anomaly.rs:32:65
[INFO] [stdout]    |
[INFO] [stdout] 32 | use super::{MicroHNSW, HNSWConfig, MicroVector, DistanceMetric, euclidean_distance_i8};
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ruvector/anomaly.rs:306:30
[INFO] [stdout]     |
[INFO] [stdout] 306 |         self.avg_distance += (delta / n as i32);
[INFO] [stdout]     |                              ^                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 306 -         self.avg_distance += (delta / n as i32);
[INFO] [stdout] 306 +         self.avg_distance += delta / n as i32;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_VECTORS`
[INFO] [stdout]   --> src/ruvector/federated_search.rs:40:79
[INFO] [stdout]    |
[INFO] [stdout] 40 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric, MAX_VECTORS};
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> examples/model_sizing_demo.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[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: `heads`
[INFO] [stdout]   --> examples/model_sizing_demo.rs:72:46
[INFO] [stdout]    |
[INFO] [stdout] 72 |     for (name, vocab, embed, hidden, layers, heads) in &configs {
[INFO] [stdout]    |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_heads`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/optimizations/product_quant.rs:327:13
[INFO] [stdout]     |
[INFO] [stdout] 327 |         let mut vector = [10i8; 32];
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/diagnostics.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |     let mut issues = heapless::Vec::new();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         query: &[i8],
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `keys`
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |         keys: &[&[i8]],
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_keys`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bisection`
[INFO] [stdout]    --> src/federation/massive_scale.rs:221:13
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let bisection = self.config.topology.bisection_bandwidth();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bisection`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chips`
[INFO] [stdout]    --> src/federation/massive_scale.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let chips = 1 << power;
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_chips`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cluster_distance`
[INFO] [stdout]    --> src/ruvector/anomaly.rs:252:31
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let (nearest_cluster, cluster_distance) = self.find_nearest_cluster(embedding);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_distance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> src/ruvector/federated_search.rs:207:13
[INFO] [stdout]     |
[INFO] [stdout] 207 |         let start = 0u32; // Would use actual timer on ESP32
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `num_heads` is never read
[INFO] [stdout]   --> src/attention.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct MicroAttention {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     num_heads: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `feature_dim` is never read
[INFO] [stdout]    --> src/attention.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct LinearAttention {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 137 |     /// Feature dimension for kernel
[INFO] [stdout] 138 |     feature_dim: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `scale` is never read
[INFO] [stdout]   --> src/embedding.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct EmbeddingTable<const VOCAB: usize, const DIM: usize> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     scale: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dim` is never read
[INFO] [stdout]   --> src/optimizations/binary_quant.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct BinaryEmbedding<const VOCAB: usize, const DIM_BYTES: usize> {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     dim: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input_scale` is never read
[INFO] [stdout]   --> src/optimizations/lookup_tables.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct SoftmaxLUT {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     input_scale: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `a_params` and `b_params` are never read
[INFO] [stdout]   --> src/optimizations/micro_lora.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct MicroLoRA {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 50 |     a_params: QuantParams,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 51 |     /// Quantization params for B
[INFO] [stdout] 52 |     b_params: QuantParams,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current_step` is never read
[INFO] [stdout]    --> src/optimizations/pruning.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout]  94 | pub struct LayerPruner {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 100 |     current_step: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input_buffer` is never read
[INFO] [stdout]    --> src/federation/pipeline.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct PipelineNode {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 151 |     input_buffer: HVec<i8, 256>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `output_buffer` is never read
[INFO] [stdout]   --> src/federation/tensor_parallel.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct TensorParallelNode {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     output_buffer: HVec<i32, 256>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_master` and `topology` are never read
[INFO] [stdout]   --> src/federation/coordinator.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct FederationCoordinator {
[INFO] [stdout]    |            --------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 75 |     is_master: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     topology: ClusterTopology,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `node_id`, `siblings`, `level`, and `total_levels` are never read
[INFO] [stdout]    --> src/federation/massive_scale.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 340 | pub struct DistributedCoordinator {
[INFO] [stdout]     |            ---------------------- fields in this struct
[INFO] [stdout] 341 |     /// This node's ID
[INFO] [stdout] 342 |     node_id: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 348 |     siblings: HVec<u32, MAX_CHILDREN>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 349 |     /// Current level in hierarchy
[INFO] [stdout] 350 |     level: u8,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 351 |     /// Total levels
[INFO] [stdout] 352 |     total_levels: u8,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `round` is never read
[INFO] [stdout]    --> src/federation/massive_scale.rs:520:5
[INFO] [stdout]     |
[INFO] [stdout] 514 | pub struct GossipProtocol {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 520 |     round: u32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `variance` is never read
[INFO] [stdout]    --> src/ruvector/anomaly.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | struct Cluster {
[INFO] [stdout]     |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 114 |     variance: i32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Cluster` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 55.18s
[INFO] running `Command { std: "docker" "inspect" "d0b289f5b3bc572952f9868ae4361e83e239b8f68806ecf837eb0b199f080cf3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d0b289f5b3bc572952f9868ae4361e83e239b8f68806ecf837eb0b199f080cf3", kill_on_drop: false }`
[INFO] [stdout] d0b289f5b3bc572952f9868ae4361e83e239b8f68806ecf837eb0b199f080cf3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 509343c8967be440a352699b2adc7e6dbd4e03ccca2ab5ed90dd3a0655b759b5
[INFO] running `Command { std: "docker" "start" "-a" "509343c8967be440a352699b2adc7e6dbd4e03ccca2ab5ed90dd3a0655b759b5", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `QuantParams` and `QuantizationType`
[INFO] [stderr]  --> src/micro_inference.rs:6:24
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::quantized::{QuantizationType, matmul_int8, QuantParams};
[INFO] [stderr]   |                        ^^^^^^^^^^^^^^^^               ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `frozen`
[INFO] [stderr]    --> src/optimizations/micro_lora.rs:178:15
[INFO] [stderr]     |
[INFO] [stderr] 178 |     #[cfg(not(feature = "frozen"))]
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stderr]     = help: consider adding `frozen` as a feature in `Cargo.toml`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `frozen`
[INFO] [stderr]    --> src/federation/coordinator.rs:280:15
[INFO] [stderr]     |
[INFO] [stderr] 280 |     #[cfg(not(feature = "frozen"))]
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stderr]     = help: consider adding `frozen` as a feature in `Cargo.toml`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::protocol::ChipId`
[INFO] [stderr]   --> src/federation/massive_scale.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | use super::protocol::ChipId;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `euclidean_distance_i8`
[INFO] [stderr]   --> src/ruvector/micro_hnsw.rs:22:42
[INFO] [stderr]    |
[INFO] [stderr] 22 | use super::{MicroVector, DistanceMetric, euclidean_distance_i8, MAX_NEIGHBORS};
[INFO] [stderr]    |                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `SearchResult`
[INFO] [stderr]   --> src/ruvector/semantic_memory.rs:34:36
[INFO] [stderr]    |
[INFO] [stderr] 34 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric};
[INFO] [stderr]    |                                    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `SearchResult`
[INFO] [stderr]   --> src/ruvector/rag.rs:45:36
[INFO] [stderr]    |
[INFO] [stderr] 45 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric};
[INFO] [stderr]    |                                    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `euclidean_distance_i8`
[INFO] [stderr]   --> src/ruvector/anomaly.rs:32:65
[INFO] [stderr]    |
[INFO] [stderr] 32 | use super::{MicroHNSW, HNSWConfig, MicroVector, DistanceMetric, euclidean_distance_i8};
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/ruvector/anomaly.rs:306:30
[INFO] [stderr]     |
[INFO] [stderr] 306 |         self.avg_distance += (delta / n as i32);
[INFO] [stderr]     |                              ^                ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 306 -         self.avg_distance += (delta / n as i32);
[INFO] [stderr] 306 +         self.avg_distance += delta / n as i32;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MAX_VECTORS`
[INFO] [stderr]   --> src/ruvector/federated_search.rs:40:79
[INFO] [stderr]    |
[INFO] [stderr] 40 | use super::{MicroHNSW, HNSWConfig, SearchResult, MicroVector, DistanceMetric, MAX_VECTORS};
[INFO] [stderr]    |                                                                               ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/diagnostics.rs:251:9
[INFO] [stderr]     |
[INFO] [stderr] 251 |     let mut issues = heapless::Vec::new();
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `query`
[INFO] [stderr]   --> src/federation/tensor_parallel.rs:80:9
[INFO] [stderr]    |
[INFO] [stderr] 80 |         query: &[i8],
[INFO] [stderr]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `keys`
[INFO] [stderr]   --> src/federation/tensor_parallel.rs:81:9
[INFO] [stderr]    |
[INFO] [stderr] 81 |         keys: &[&[i8]],
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_keys`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bisection`
[INFO] [stderr]    --> src/federation/massive_scale.rs:221:13
[INFO] [stderr]     |
[INFO] [stderr] 221 |         let bisection = self.config.topology.bisection_bandwidth();
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bisection`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `chips`
[INFO] [stderr]    --> src/federation/massive_scale.rs:306:17
[INFO] [stderr]     |
[INFO] [stderr] 306 |             let chips = 1 << power;
[INFO] [stderr]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_chips`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cluster_distance`
[INFO] [stderr]    --> src/ruvector/anomaly.rs:252:31
[INFO] [stderr]     |
[INFO] [stderr] 252 |         let (nearest_cluster, cluster_distance) = self.find_nearest_cluster(embedding);
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_distance`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `start`
[INFO] [stderr]    --> src/ruvector/federated_search.rs:207:13
[INFO] [stderr]     |
[INFO] [stderr] 207 |         let start = 0u32; // Would use actual timer on ESP32
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stderr] 
[INFO] [stderr] warning: field `num_heads` is never read
[INFO] [stderr]   --> src/attention.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct MicroAttention {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 15 |     num_heads: usize,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `feature_dim` is never read
[INFO] [stderr]    --> src/attention.rs:138:5
[INFO] [stderr]     |
[INFO] [stderr] 136 | pub struct LinearAttention {
[INFO] [stderr]     |            --------------- field in this struct
[INFO] [stderr] 137 |     /// Feature dimension for kernel
[INFO] [stderr] 138 |     feature_dim: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `scale` is never read
[INFO] [stderr]   --> src/embedding.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct EmbeddingTable<const VOCAB: usize, const DIM: usize> {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 21 |     scale: f32,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `dim` is never read
[INFO] [stderr]   --> src/optimizations/binary_quant.rs:78:5
[INFO] [stderr]    |
[INFO] [stderr] 72 | pub struct BinaryEmbedding<const VOCAB: usize, const DIM_BYTES: usize> {
[INFO] [stderr]    |            --------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 78 |     dim: usize,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `input_scale` is never read
[INFO] [stderr]   --> src/optimizations/lookup_tables.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct SoftmaxLUT {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 14 |     input_scale: i32,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `a_params` and `b_params` are never read
[INFO] [stderr]   --> src/optimizations/micro_lora.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 42 | pub struct MicroLoRA {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 50 |     a_params: QuantParams,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 51 |     /// Quantization params for B
[INFO] [stderr] 52 |     b_params: QuantParams,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `current_step` is never read
[INFO] [stderr]    --> src/optimizations/pruning.rs:100:5
[INFO] [stderr]     |
[INFO] [stderr]  94 | pub struct LayerPruner {
[INFO] [stderr]     |            ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 100 |     current_step: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `input_buffer` is never read
[INFO] [stderr]    --> src/federation/pipeline.rs:151:5
[INFO] [stderr]     |
[INFO] [stderr] 137 | pub struct PipelineNode {
[INFO] [stderr]     |            ------------ field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 151 |     input_buffer: HVec<i8, 256>,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `output_buffer` is never read
[INFO] [stderr]   --> src/federation/tensor_parallel.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 55 | pub struct TensorParallelNode {
[INFO] [stderr]    |            ------------------ field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 60 |     output_buffer: HVec<i32, 256>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `is_master` and `topology` are never read
[INFO] [stderr]   --> src/federation/coordinator.rs:75:5
[INFO] [stderr]    |
[INFO] [stderr] 71 | pub struct FederationCoordinator {
[INFO] [stderr]    |            --------------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 75 |     is_master: bool,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 79 |     topology: ClusterTopology,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `node_id`, `siblings`, `level`, and `total_levels` are never read
[INFO] [stderr]    --> src/federation/massive_scale.rs:342:5
[INFO] [stderr]     |
[INFO] [stderr] 340 | pub struct DistributedCoordinator {
[INFO] [stderr]     |            ---------------------- fields in this struct
[INFO] [stderr] 341 |     /// This node's ID
[INFO] [stderr] 342 |     node_id: u32,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 348 |     siblings: HVec<u32, MAX_CHILDREN>,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 349 |     /// Current level in hierarchy
[INFO] [stderr] 350 |     level: u8,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 351 |     /// Total levels
[INFO] [stderr] 352 |     total_levels: u8,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `round` is never read
[INFO] [stderr]    --> src/federation/massive_scale.rs:520:5
[INFO] [stderr]     |
[INFO] [stderr] 514 | pub struct GossipProtocol {
[INFO] [stderr]     |            -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 520 |     round: u32,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `variance` is never read
[INFO] [stderr]    --> src/ruvector/anomaly.rs:114:5
[INFO] [stderr]     |
[INFO] [stderr] 106 | struct Cluster {
[INFO] [stderr]     |        ------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 114 |     variance: i32,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `Cluster` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: `ruvllm-esp32` (lib) generated 30 warnings (run `cargo fix --lib -p ruvllm-esp32` to apply 15 suggestions)
[INFO] [stderr] warning: unexpected `cfg` condition value: `std`
[INFO] [stderr]    --> src/main.rs:256:7
[INFO] [stderr]     |
[INFO] [stderr] 256 | #[cfg(feature = "std")]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stderr]     = help: consider adding `std` as a feature in `Cargo.toml`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `std`
[INFO] [stderr]    --> src/main.rs:319:7
[INFO] [stderr]     |
[INFO] [stderr] 319 | #[cfg(feature = "std")]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected values for `feature` are: `anyhow`, `binary`, `default`, `esp-idf-hal`, `esp-idf-svc`, `esp-idf-sys`, `esp32-std`, `esp32s3-simd`, `federation`, `host-test`, `no_std`, `q4`, `q8`, and `self-learning`
[INFO] [stderr]     = help: consider adding `std` as a feature in `Cargo.toml`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: function `detect_variant` is never used
[INFO] [stderr]    --> src/main.rs:245:4
[INFO] [stderr]     |
[INFO] [stderr] 245 | fn detect_variant() -> Esp32Variant {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `ruvllm-esp32` (bin "ruvllm-esp32") generated 3 warnings
[INFO] [stderr] warning: unused import: `QuantParams`
[INFO] [stderr]  --> src/micro_inference.rs:6:55
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::quantized::{QuantizationType, matmul_int8, QuantParams};
[INFO] [stderr]   |                                                       ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/optimizations/product_quant.rs:327:13
[INFO] [stderr]     |
[INFO] [stderr] 327 |         let mut vector = [10i8; 32];
[INFO] [stderr]     |             ----^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/diagnostics.rs:251:9
[INFO] [stderr]     |
[INFO] [stderr] 251 |     let mut issues = heapless::Vec::new();
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ruvllm_esp32::prelude::*`
[INFO] [stderr]  --> examples/embedding_demo.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use ruvllm_esp32::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `SlidingWindowAttention`
[INFO] [stderr]   --> tests/simulation_tests.rs:12:64
[INFO] [stderr]    |
[INFO] [stderr] 12 | use ruvllm_esp32::attention::{MicroAttention, LinearAttention, SlidingWindowAttention};
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `result`
[INFO] [stderr]    --> tests/simulation_tests.rs:355:9
[INFO] [stderr]     |
[INFO] [stderr] 355 |     let result = engine.generate(&long_prompt, &InferenceConfig { max_tokens: 1, ..Default::default() });
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MEDIUM_SCALE_MAX`, `MEDIUM_SCALE_MIN`, and `MEDIUM_SCALE_OPTIMAL`
[INFO] [stderr]   --> examples/medium_scale_demo.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 |     MEDIUM_SCALE_MIN, MEDIUM_SCALE_MAX, MEDIUM_SCALE_OPTIMAL,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> examples/optimization_demo.rs:160:49
[INFO] [stderr]     |
[INFO] [stderr] 160 |     let mut weights: Vec<i8> = (0..256).map(|i| ((i % 127) as i8 - 64)).collect();
[INFO] [stderr]     |                                                 ^                    ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 160 -     let mut weights: Vec<i8> = (0..256).map(|i| ((i % 127) as i8 - 64)).collect();
[INFO] [stderr] 160 +     let mut weights: Vec<i8> = (0..256).map(|i| (i % 127) as i8 - 64).collect();
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> examples/optimization_demo.rs:160:9
[INFO] [stderr]     |
[INFO] [stderr] 160 |     let mut weights: Vec<i8> = (0..256).map(|i| ((i % 127) as i8 - 64)).collect();
[INFO] [stderr]     |         ----^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `VOCAB_TEST` is never used
[INFO] [stderr]   --> examples/optimization_demo.rs:21:11
[INFO] [stderr]    |
[INFO] [stderr] 21 |     const VOCAB_TEST: usize = 256;
[INFO] [stderr]    |           ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ScaleProjection`
[INFO] [stderr]  --> examples/massive_scale_demo.rs:7:65
[INFO] [stderr]   |
[INFO] [stderr] 7 |     MassiveTopology, MassiveScaleConfig, MassiveScaleSimulator, ScaleProjection,
[INFO] [stderr]   |                                                                 ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ClusterTopology`, `FederationMessage`, and `PipelineRole`
[INFO] [stderr]   --> examples/federation_demo.rs:8:35
[INFO] [stderr]    |
[INFO] [stderr]  8 |     PipelineConfig, PipelineNode, PipelineRole,
[INFO] [stderr]    |                                   ^^^^^^^^^^^^
[INFO] [stderr]  9 |     FederationCoordinator, ClusterTopology,
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 12 |     ChipId, FederationMessage,
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AttentionPattern`, `LayerPruner`, `LoRAConfig`, `MicroLoRA`, `PruningConfig`, and `SparseAttention`
[INFO] [stderr]   --> examples/federation_demo.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 |     MicroLoRA, LoRAConfig,
[INFO] [stderr]    |     ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 16 |     SparseAttention, AttentionPattern,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stderr] 17 |     LayerPruner, PruningConfig,
[INFO] [stderr]    |     ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> examples/federation_demo.rs:149:9
[INFO] [stderr]     |
[INFO] [stderr] 149 |     let mut drafter = SpeculativeDecoder::new(spec_config.clone(), ChipId(0));
[INFO] [stderr]     |         ----^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node`
[INFO] [stderr]   --> examples/federation_demo.rs:78:13
[INFO] [stderr]    |
[INFO] [stderr] 78 |     for (i, node) in pipeline_nodes.iter().enumerate() {
[INFO] [stderr]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `drafter`
[INFO] [stderr]    --> examples/federation_demo.rs:149:9
[INFO] [stderr]     |
[INFO] [stderr] 149 |     let mut drafter = SpeculativeDecoder::new(spec_config.clone(), ChipId(0));
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_drafter`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `spec_time`
[INFO] [stderr]    --> examples/federation_demo.rs:175:9
[INFO] [stderr]     |
[INFO] [stderr] 175 |     let spec_time = start.elapsed();
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spec_time`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> examples/model_sizing_demo.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `heads`
[INFO] [stderr]   --> examples/model_sizing_demo.rs:72:46
[INFO] [stderr]    |
[INFO] [stderr] 72 |     for (name, vocab, embed, hidden, layers, heads) in &configs {
[INFO] [stderr]    |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_heads`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `ruvllm-esp32` (lib test) generated 31 warnings (28 duplicates) (run `cargo fix --lib -p ruvllm-esp32 --tests` to apply 3 suggestions)
[INFO] [stderr] warning: `ruvllm-esp32` (example "embedding_demo") generated 1 warning (run `cargo fix --example "embedding_demo" -p ruvllm-esp32` to apply 1 suggestion)
[INFO] [stderr] warning: `ruvllm-esp32` (test "simulation_tests") generated 2 warnings (run `cargo fix --test "simulation_tests" -p ruvllm-esp32` to apply 2 suggestions)
[INFO] [stderr] warning: `ruvllm-esp32` (example "medium_scale_demo") generated 1 warning (run `cargo fix --example "medium_scale_demo" -p ruvllm-esp32` to apply 1 suggestion)
[INFO] [stderr] warning: `ruvllm-esp32` (example "optimization_demo") generated 3 warnings (run `cargo fix --example "optimization_demo" -p ruvllm-esp32` to apply 2 suggestions)
[INFO] [stderr] warning: `ruvllm-esp32` (example "massive_scale_demo") generated 1 warning (run `cargo fix --example "massive_scale_demo" -p ruvllm-esp32` to apply 1 suggestion)
[INFO] [stderr] warning: `ruvllm-esp32` (example "federation_demo") generated 6 warnings (run `cargo fix --example "federation_demo" -p ruvllm-esp32` to apply 6 suggestions)
[INFO] [stderr] warning: `ruvllm-esp32` (example "model_sizing_demo") generated 2 warnings (run `cargo fix --example "model_sizing_demo" -p ruvllm-esp32` to apply 2 suggestions)
[INFO] [stderr] warning: `ruvllm-esp32` (bin "ruvllm-esp32" test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ruvllm_esp32-bb55a553589ac254)
[INFO] [stdout] 
[INFO] [stdout] running 101 tests
[INFO] [stdout] test attention::tests::test_linear_attention ... ok
[INFO] [stdout] test attention::tests::test_softmax_fixed ... ok
[INFO] [stdout] test benchmark::tests::test_benchmark_suite ... ok
[INFO] [stdout] test benchmark::tests::test_chip_benchmark ... ok
[INFO] [stdout] test diagnostics::tests::test_diagnose_memory_error ... ok
[INFO] [stdout] test diagnostics::tests::test_diagnose_flash_error ... ok
[INFO] [stdout] test embedding::tests::test_rotary_embedding ... ok
[INFO] [stdout] test embedding::tests::test_tokenizer ... ok
[INFO] [stdout] test federation::coordinator::tests::test_coordinator_creation ... ok
[INFO] [stdout] test federation::coordinator::tests::test_distributed_lora ... ok
[INFO] [stdout] test federation::coordinator::tests::test_learning_update ... ok
[INFO] [stdout] test federation::fastgrnn_router::tests::test_routing_probs ... ok
[INFO] [stdout] test federation::fastgrnn_router::tests::test_micro_fastgrnn ... ok
[INFO] [stdout] test federation::massive_scale::tests::test_distributed_coordinator ... ok
[INFO] [stdout] test federation::massive_scale::tests::test_gossip_protocol ... ok
[INFO] [stdout] test federation::massive_scale::tests::test_massive_scale ... ok
[INFO] [stdout] test federation::medium_scale::tests::test_model_categories ... ok
[INFO] [stdout] test federation::massive_scale::tests::test_scaling_projection ... ok
[INFO] [stdout] test federation::massive_scale::tests::test_topology_sizing ... ok
[INFO] [stdout] test federation::protocol::tests::test_activation_message ... ok
[INFO] [stdout] test federation::protocol::tests::test_message_header ... ok
[INFO] [stdout] test federation::sharding::tests::test_shard_lookup ... ok
[INFO] [stdout] test federation::sharding::tests::test_sharding ... ok
[INFO] [stdout] test federation::protocol::tests::test_token_message ... ok
[INFO] [stdout] test federation::speculative::tests::test_speculative_config ... ok
[INFO] [stdout] test federation::medium_scale::tests::test_optimal_config_256 ... ok
[INFO] [stdout] test federation::medium_scale::tests::test_scale_comparison ... ok
[INFO] [stdout] test federation::medium_scale::tests::test_optimal_config_100 ... ok
[INFO] [stdout] test federation::pipeline::tests::test_pipeline_efficiency ... ok
[INFO] [stdout] test federation::speculative::tests::test_verify_draft ... ok
[INFO] [stdout] test federation::pipeline::tests::test_pipeline_config ... ok
[INFO] [stdout] test federation::medium_scale::tests::test_hardware_config ... ok
[INFO] [stdout] test federation::tensor_parallel::tests::test_head_distribution ... ok
[INFO] [stdout] test federation::tests::test_optimal_config ... ok
[INFO] [stdout] test federation::tests::test_speedup_estimate ... ok
[INFO] [stdout] test micro_inference::tests::test_embedding ... ok
[INFO] [stdout] test model::tests::test_model_creation ... ok
[INFO] [stdout] test diagnostics::tests::test_diagnose_toolchain_error ... ok
[INFO] [stdout] test optimizations::binary_quant::tests::test_xnor_popcount ... ok
[INFO] [stdout] test model::tests::test_serialization ... ok
[INFO] [stdout] test model::tests::test_variant_configs ... ok
[INFO] [stdout] test models::tests::test_model_lookup ... ok
[INFO] [stdout] test model::tests::test_default_config ... ok
[INFO] [stdout] test models::tests::test_performance_estimate ... ok
[INFO] [stdout] test optimizations::binary_quant::tests::test_compression_ratio ... ok
[INFO] [stdout] test models::tests::test_recommend_model ... ok
[INFO] [stdout] test optimizations::binary_quant::tests::test_hamming_distance ... ok
[INFO] [stdout] test optimizations::lookup_tables::tests::test_distance_lut ... ok
[INFO] [stdout] test optimizations::binary_quant::tests::test_binary_quantization ... ok
[INFO] [stdout] test embedding::tests::test_embedding_lookup ... ok
[INFO] [stdout] test optimizations::lookup_tables::tests::test_softmax_lut ... ok
[INFO] [stdout] test optimizations::lookup_tables::tests::test_l2_distance ... ok
[INFO] [stdout] test micro_inference::tests::test_engine_creation ... ok
[INFO] [stdout] test micro_inference::tests::test_generation ... ok
[INFO] [stdout] test optimizations::lookup_tables::tests::test_softmax_normalization ... ok
[INFO] [stdout] test optimizations::micro_lora::tests::test_lora_apply ... ok
[INFO] [stdout] test optimizations::micro_lora::tests::test_lora_stack ... ok
[INFO] [stdout] test optimizations::micro_lora::tests::test_micro_lora_creation ... ok
[INFO] [stdout] test optimizations::product_quant::tests::test_distance_table ... ok
[INFO] [stdout] test optimizations::product_quant::tests::test_pq_compression ... ok
[INFO] [stdout] test optimizations::product_quant::tests::test_pq_encode_decode ... ok
[INFO] [stdout] test optimizations::pruning::tests::test_pruning_mask ... ok
[INFO] [stdout] test optimizations::pruning::tests::test_structured_pruning ... ok
[INFO] [stdout] test optimizations::pruning::tests::test_magnitude_pruning ... ok
[INFO] [stdout] test optimizations::product_quant::tests::test_pq_config ... ok
[INFO] [stdout] test optimizations::sparse_attention::tests::test_block_diagonal ... ok
[INFO] [stdout] test optimizations::sparse_attention::tests::test_sliding_window ... ok
[INFO] [stdout] test optimizations::sparse_attention::tests::test_strided ... ok
[INFO] [stdout] test optimizations::sparse_attention::tests::test_sparsity ... ok
[INFO] [stdout] test ota::tests::test_state_transitions ... ok
[INFO] [stdout] test ota::tests::test_version_comparison ... ok
[INFO] [stdout] test quantized::tests::test_binary_xnor ... ok
[INFO] [stdout] test optimizations::pruning::tests::test_mincut_scorer ... ok
[INFO] [stdout] test quantized::tests::test_int4_packing ... ok
[INFO] [stdout] test quantized::tests::test_int8_quantization ... ok
[INFO] [stdout] test ruvector::anomaly::tests::test_anomaly_detector ... ok
[INFO] [stdout] test ruvector::anomaly::tests::test_detect_anomaly ... ok
[INFO] [stdout] test ruvector::federated_search::tests::test_federated_index ... ok
[INFO] [stdout] test ruvector::federated_search::tests::test_swarm_store ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_boundary_behavior ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_hyperbolic_midpoint ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_lorentz_distance_spatial ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_lorentz_distance_symmetric ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_poincare_distance_symmetric ... ok
[INFO] [stdout] test optimizations::sparse_attention::tests::test_bigbird ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_poincare_distance_triangle_inequality ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_poincare_distance_zero ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_to_lorentz ... ok
[INFO] [stdout] test ruvector::hyperbolic::tests::test_to_poincare_origin ... ok
[INFO] [stdout] test ruvector::micro_hnsw::tests::test_hnsw_basic ... ok
[INFO] [stdout] test ruvector::micro_hnsw::tests::test_hnsw_search ... ok
[INFO] [stdout] test ruvector::rag::tests::test_chunk_text ... ok
[INFO] [stdout] test ruvector::rag::tests::test_rag_basic ... ok
[INFO] [stdout] test ruvector::rag::tests::test_rag_retrieve ... ok
[INFO] [stdout] test ruvector::semantic_memory::tests::test_memory_creation ... ok
[INFO] [stdout] test ruvector::semantic_memory::tests::test_semantic_memory ... ok
[INFO] [stdout] test ruvector::tests::test_cosine_distance ... ok
[INFO] [stdout] test ruvector::tests::test_euclidean_distance ... ok
[INFO] [stdout] test ruvector::tests::test_micro_vector ... ok
[INFO] [stdout] test attention::tests::test_micro_attention ... ok
[INFO] [stdout] test micro_inference::tests::test_forward_pass ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 101 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ruvllm_esp32-b6d9807ae5d16d6e)
[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/simulation_tests.rs (/opt/rustwide/target/debug/deps/simulation_tests-7f57dd063e18f04b)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test test_attention_mechanisms ... ok
[INFO] [stdout] test test_int8_matmul_correctness ... ok
[INFO] [stdout] test test_binary_xnor_correctness ... ok
[INFO] [stdout] test test_embedding_operations ... ok
[INFO] [stdout] test test_linear_attention ... ok
[INFO] [stdout] test test_quantization_compression ... ok
[INFO] [stdout] test test_model_serialization ... ok
[INFO] [stdout] test test_tokenizer ... ok
[INFO] [stdout] test test_determinism ... ok
[INFO] [stdout] test test_rotary_embeddings ... ok
[INFO] [stdout] test test_memory_constraints_all_variants ... ok
[INFO] [stdout] test test_full_inference_pipeline ... ok
[INFO] [stdout] test test_edge_cases ... ok
[INFO] [stdout] test test_performance_simulation ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests ruvllm_esp32
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/ruvector/anomaly.rs:306:30
[INFO] [stderr]     |
[INFO] [stderr] 306 |         self.avg_distance += (delta / n as i32);
[INFO] [stderr]     |                              ^                ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 306 -         self.avg_distance += (delta / n as i32);
[INFO] [stderr] 306 +         self.avg_distance += delta / n as i32;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[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] running `Command { std: "docker" "inspect" "509343c8967be440a352699b2adc7e6dbd4e03ccca2ab5ed90dd3a0655b759b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "509343c8967be440a352699b2adc7e6dbd4e03ccca2ab5ed90dd3a0655b759b5", kill_on_drop: false }`
[INFO] [stdout] 509343c8967be440a352699b2adc7e6dbd4e03ccca2ab5ed90dd3a0655b759b5
