[INFO] fetching crate ruvllm-esp32 0.3.2... [INFO] testing ruvllm-esp32-0.3.2 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-2 [INFO] extracting crate ruvllm-esp32 0.3.2 into /workspace/builds/worker-0-tc2/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-0-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate ruvllm-esp32 0.3.2 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ae3057cc71073b54005f513ed235ddad981bb67ac75e7348fc584e349982d542 [INFO] running `Command { std: "docker" "start" "-a" "ae3057cc71073b54005f513ed235ddad981bb67ac75e7348fc584e349982d542", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ae3057cc71073b54005f513ed235ddad981bb67ac75e7348fc584e349982d542", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ae3057cc71073b54005f513ed235ddad981bb67ac75e7348fc584e349982d542", kill_on_drop: false }` [INFO] [stdout] ae3057cc71073b54005f513ed235ddad981bb67ac75e7348fc584e349982d542 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e64e33d726d41b1e1f381b46dc837f2589371c5f1bbec00ad35c36b40b1c8f2f [INFO] running `Command { std: "docker" "start" "-a" "e64e33d726d41b1e1f381b46dc837f2589371c5f1bbec00ad35c36b40b1c8f2f", 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 serde v1.0.228 [INFO] [stderr] Compiling zerocopy v0.8.31 [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 libm v0.2.15 [INFO] [stderr] Compiling heapless v0.8.0 [INFO] [stderr] Compiling bytemuck v1.24.0 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling hash32 v0.3.1 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zerocopy-derive v0.8.31 [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 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 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 { [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 { [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, [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, [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, [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 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 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 32.89s [INFO] running `Command { std: "docker" "inspect" "e64e33d726d41b1e1f381b46dc837f2589371c5f1bbec00ad35c36b40b1c8f2f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e64e33d726d41b1e1f381b46dc837f2589371c5f1bbec00ad35c36b40b1c8f2f", kill_on_drop: false }` [INFO] [stdout] e64e33d726d41b1e1f381b46dc837f2589371c5f1bbec00ad35c36b40b1c8f2f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0ec74fe5725ab5c7e9fb01931982ddf1640a514d7e4c114dd54c1247fc0c374c [INFO] running `Command { std: "docker" "start" "-a" "0ec74fe5725ab5c7e9fb01931982ddf1640a514d7e4c114dd54c1247fc0c374c", kill_on_drop: false }` [INFO] [stderr] Compiling rayon-core v1.13.0 [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 serde_json v1.0.147 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling zmij v0.1.9 [INFO] [stderr] Compiling clap_lex v0.7.6 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling itoa v1.0.16 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling clap_builder v4.5.53 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling clap v4.5.53 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling heapless v0.8.0 [INFO] [stderr] Compiling postcard v1.1.3 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling ruvllm-esp32 v0.3.2 (/opt/rustwide/workdir) [INFO] [stderr] Compiling criterion v0.5.1 [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 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 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 { [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 { [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, [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, [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, [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 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 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: `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: `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: unnecessary parentheses around closure body [INFO] [stdout] --> examples/optimization_demo.rs:160:49 [INFO] [stdout] | [INFO] [stdout] 160 | let mut weights: Vec = (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 = (0..256).map(|i| ((i % 127) as i8 - 64)).collect(); [INFO] [stdout] 160 + let mut weights: Vec = (0..256).map(|i| (i % 127) as i8 - 64).collect(); [INFO] [stdout] | [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 = (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: 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: `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: 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 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 for more information about checking conditional configuration [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 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: 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 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 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: 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: 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: 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 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 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/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 { [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 { [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, [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, [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, [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 1m 11s [INFO] running `Command { std: "docker" "inspect" "0ec74fe5725ab5c7e9fb01931982ddf1640a514d7e4c114dd54c1247fc0c374c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0ec74fe5725ab5c7e9fb01931982ddf1640a514d7e4c114dd54c1247fc0c374c", kill_on_drop: false }` [INFO] [stdout] 0ec74fe5725ab5c7e9fb01931982ddf1640a514d7e4c114dd54c1247fc0c374c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 38585476004d154157103364b3931ffbdebc74c1b929528fc7736edf5f876b6f [INFO] running `Command { std: "docker" "start" "-a" "38585476004d154157103364b3931ffbdebc74c1b929528fc7736edf5f876b6f", 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 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 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 { [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 { [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, [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, [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, [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: 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: 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 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 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: 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: unnecessary parentheses around closure body [INFO] [stderr] --> examples/optimization_demo.rs:160:49 [INFO] [stderr] | [INFO] [stderr] 160 | let mut weights: Vec = (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 = (0..256).map(|i| ((i % 127) as i8 - 64)).collect(); [INFO] [stderr] 160 + let mut weights: Vec = (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 = (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: `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: 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` (example "federation_demo") generated 6 warnings (run `cargo fix --example "federation_demo" -p ruvllm-esp32` to apply 6 suggestions) [INFO] [stderr] warning: `ruvllm-esp32` (bin "ruvllm-esp32" test) generated 3 warnings [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 "optimization_demo") generated 3 warnings (run `cargo fix --example "optimization_demo" -p ruvllm-esp32` to apply 2 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` (bin "ruvllm-esp32") generated 3 warnings (3 duplicates) [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 "model_sizing_demo") generated 2 warnings (run `cargo fix --example "model_sizing_demo" -p ruvllm-esp32` to apply 2 suggestions) [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: `ruvllm-esp32` (lib test) generated 31 warnings (28 duplicates) (run `cargo fix --lib -p ruvllm-esp32 --tests` to apply 3 suggestions) [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 0.24s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ruvllm_esp32-58eeeb71384172ba) [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 attention::tests::test_micro_attention ... ok [INFO] [stdout] test diagnostics::tests::test_diagnose_flash_error ... 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_toolchain_error ... ok [INFO] [stdout] test embedding::tests::test_embedding_lookup ... ok [INFO] [stdout] test embedding::tests::test_rotary_embedding ... ok [INFO] [stdout] test federation::coordinator::tests::test_distributed_lora ... ok [INFO] [stdout] test embedding::tests::test_tokenizer ... ok [INFO] [stdout] test federation::coordinator::tests::test_coordinator_creation ... ok [INFO] [stdout] test federation::fastgrnn_router::tests::test_micro_fastgrnn ... ok [INFO] [stdout] test federation::fastgrnn_router::tests::test_routing_probs ... ok [INFO] [stdout] test federation::coordinator::tests::test_learning_update ... ok [INFO] [stdout] test federation::massive_scale::tests::test_massive_scale ... ok [INFO] [stdout] test federation::massive_scale::tests::test_scaling_projection ... ok [INFO] [stdout] test federation::medium_scale::tests::test_hardware_config ... ok [INFO] [stdout] test federation::medium_scale::tests::test_model_categories ... 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::pipeline::tests::test_pipeline_config ... ok [INFO] [stdout] test federation::pipeline::tests::test_pipeline_efficiency ... 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::protocol::tests::test_token_message ... ok [INFO] [stdout] test federation::sharding::tests::test_sharding ... ok [INFO] [stdout] test federation::speculative::tests::test_verify_draft ... 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::medium_scale::tests::test_optimal_config_100 ... ok [INFO] [stdout] test model::tests::test_default_config ... ok [INFO] [stdout] test model::tests::test_variant_configs ... ok [INFO] [stdout] test micro_inference::tests::test_embedding ... ok [INFO] [stdout] test federation::tests::test_speedup_estimate ... ok [INFO] [stdout] test model::tests::test_serialization ... ok [INFO] [stdout] test micro_inference::tests::test_forward_pass ... ok [INFO] [stdout] test model::tests::test_model_creation ... ok [INFO] [stdout] test optimizations::binary_quant::tests::test_binary_quantization ... ok [INFO] [stdout] test models::tests::test_model_lookup ... ok [INFO] [stdout] test federation::massive_scale::tests::test_distributed_coordinator ... ok [INFO] [stdout] test micro_inference::tests::test_engine_creation ... ok [INFO] [stdout] test models::tests::test_performance_estimate ... ok [INFO] [stdout] test micro_inference::tests::test_generation ... ok [INFO] [stdout] test optimizations::lookup_tables::tests::test_l2_distance ... ok [INFO] [stdout] test optimizations::lookup_tables::tests::test_softmax_lut ... ok [INFO] [stdout] test optimizations::lookup_tables::tests::test_softmax_normalization ... ok [INFO] [stdout] test models::tests::test_recommend_model ... ok [INFO] [stdout] test optimizations::micro_lora::tests::test_lora_stack ... ok [INFO] [stdout] test optimizations::micro_lora::tests::test_lora_apply ... ok [INFO] [stdout] test optimizations::micro_lora::tests::test_micro_lora_creation ... ok [INFO] [stdout] test federation::massive_scale::tests::test_topology_sizing ... ok [INFO] [stdout] test optimizations::binary_quant::tests::test_compression_ratio ... ok [INFO] [stdout] test optimizations::binary_quant::tests::test_hamming_distance ... ok [INFO] [stdout] test optimizations::binary_quant::tests::test_xnor_popcount ... ok [INFO] [stdout] test federation::massive_scale::tests::test_gossip_protocol ... ok [INFO] [stdout] test optimizations::product_quant::tests::test_pq_config ... ok [INFO] [stdout] test optimizations::pruning::tests::test_magnitude_pruning ... ok [INFO] [stdout] test optimizations::pruning::tests::test_mincut_scorer ... ok [INFO] [stdout] test optimizations::pruning::tests::test_structured_pruning ... ok [INFO] [stdout] test optimizations::sparse_attention::tests::test_bigbird ... 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 ota::tests::test_state_transitions ... 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_version_comparison ... ok [INFO] [stdout] test quantized::tests::test_int4_packing ... ok [INFO] [stdout] test quantized::tests::test_binary_xnor ... ok [INFO] [stdout] test quantized::tests::test_int8_quantization ... 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 optimizations::product_quant::tests::test_pq_compression ... ok [INFO] [stdout] test ruvector::hyperbolic::tests::test_hyperbolic_midpoint ... ok [INFO] [stdout] test ruvector::anomaly::tests::test_detect_anomaly ... ok [INFO] [stdout] test optimizations::product_quant::tests::test_distance_table ... ok [INFO] [stdout] test optimizations::product_quant::tests::test_pq_encode_decode ... ok [INFO] [stdout] test ruvector::hyperbolic::tests::test_lorentz_distance_spatial ... ok [INFO] [stdout] test optimizations::pruning::tests::test_pruning_mask ... ok [INFO] [stdout] test optimizations::lookup_tables::tests::test_distance_lut ... ok [INFO] [stdout] test ruvector::anomaly::tests::test_anomaly_detector ... ok [INFO] [stdout] test ruvector::hyperbolic::tests::test_poincare_distance_symmetric ... 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_lorentz_distance_symmetric ... 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::semantic_memory::tests::test_memory_creation ... ok [INFO] [stdout] test ruvector::semantic_memory::tests::test_semantic_memory ... ok [INFO] [stdout] test ruvector::rag::tests::test_rag_basic ... ok [INFO] [stdout] test ruvector::tests::test_micro_vector ... ok [INFO] [stdout] test ruvector::tests::test_cosine_distance ... ok [INFO] [stdout] test ruvector::hyperbolic::tests::test_to_lorentz ... ok [INFO] [stdout] test ruvector::tests::test_euclidean_distance ... ok [INFO] [stdout] test ruvector::rag::tests::test_rag_retrieve ... ok [INFO] [stdout] test federation::speculative::tests::test_speculative_config ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ruvllm_esp32-8db39f24253135ec) [INFO] [stdout] test federation::sharding::tests::test_shard_lookup ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 101 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/simulation_tests.rs (/opt/rustwide/target/debug/deps/simulation_tests-ea070953bc9da819) [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] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test test_binary_xnor_correctness ... ok [INFO] [stdout] test test_embedding_operations ... ok [INFO] [stdout] test test_int8_matmul_correctness ... ok [INFO] [stdout] test test_quantization_compression ... ok [INFO] [stdout] test test_rotary_embeddings ... ok [INFO] [stdout] test test_linear_attention ... ok [INFO] [stdout] test test_model_serialization ... ok [INFO] [stdout] test test_determinism ... ok [INFO] [stdout] test test_full_inference_pipeline ... ok [INFO] [stdout] test test_edge_cases ... ok [INFO] [stdout] test test_attention_mechanisms ... ok [INFO] [stdout] test test_performance_simulation ... ok [INFO] [stderr] Doc-tests ruvllm_esp32 [INFO] [stdout] test test_memory_constraints_all_variants ... ok [INFO] [stdout] test test_tokenizer ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [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" "38585476004d154157103364b3931ffbdebc74c1b929528fc7736edf5f876b6f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "38585476004d154157103364b3931ffbdebc74c1b929528fc7736edf5f876b6f", kill_on_drop: false }` [INFO] [stdout] 38585476004d154157103364b3931ffbdebc74c1b929528fc7736edf5f876b6f