[INFO] cloning repository https://github.com/Victor-Viicell/text-defusion
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Victor-Viicell/text-defusion" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVictor-Viicell%2Ftext-defusion", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVictor-Viicell%2Ftext-defusion'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 43fccea7085c65b66f92a018f0b2d23a95328ebf
[INFO] testing Victor-Viicell/text-defusion against 1.90.0 for beta-1.91-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVictor-Viicell%2Ftext-defusion" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Victor-Viicell/text-defusion
[INFO] finished tweaking git repo https://github.com/Victor-Viicell/text-defusion
[INFO] tweaked toml for git repo https://github.com/Victor-Viicell/text-defusion written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Victor-Viicell/text-defusion on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Victor-Viicell/text-defusion already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded objc_exception v0.1.2
[INFO] [stderr]   Downloaded windows-targets v0.53.2
[INFO] [stderr]   Downloaded redox_syscall v0.5.13
[INFO] [stderr]   Downloaded wgpu-types v0.19.2
[INFO] [stderr]   Downloaded hassle-rs v0.11.0
[INFO] [stderr]   Downloaded candle-kernels v0.3.3
[INFO] [stderr]   Downloaded wgpu v0.19.4
[INFO] [stderr]   Downloaded num-complex v0.4.6
[INFO] [stderr]   Downloaded wgpu-hal v0.19.5
[INFO] [stderr]   Downloaded gemm-c32 v0.17.1
[INFO] [stderr]   Downloaded gemm-f32 v0.17.1
[INFO] [stderr]   Downloaded gemm-common v0.17.1
[INFO] [stderr]   Downloaded candle-transformers v0.3.3
[INFO] [stderr]   Downloaded bindgen_cuda v0.1.5
[INFO] [stderr]   Downloaded libloading v0.7.4
[INFO] [stderr]   Downloaded gemm v0.17.1
[INFO] [stderr]   Downloaded rand_distr v0.5.1
[INFO] [stderr]   Downloaded pulp v0.18.22
[INFO] [stderr]   Downloaded ndarray v0.15.6
[INFO] [stderr]   Downloaded gemm-f16 v0.17.1
[INFO] [stderr]   Downloaded reborrow v0.5.5
[INFO] [stderr]   Downloaded rawpointer v0.2.1
[INFO] [stderr]   Downloaded glutin_wgl_sys v0.5.0
[INFO] [stderr]   Downloaded glow v0.13.1
[INFO] [stderr]   Downloaded rand v0.9.1
[INFO] [stderr]   Downloaded gpu-allocator v0.25.0
[INFO] [stderr]   Downloaded com_macros v0.6.0
[INFO] [stderr]   Downloaded com v0.6.0
[INFO] [stderr]   Downloaded raw-cpuid v10.7.0
[INFO] [stderr]   Downloaded csv v1.3.1
[INFO] [stderr]   Downloaded gpu-descriptor v0.2.4
[INFO] [stderr]   Downloaded seq-macro v0.3.6
[INFO] [stderr]   Downloaded ash v0.37.3+1.3.251
[INFO] [stderr]   Downloaded widestring v1.2.0
[INFO] [stderr]   Downloaded wgpu-core v0.19.4
[INFO] [stderr]   Downloaded winnow v0.7.11
[INFO] [stderr]   Downloaded metal v0.27.0
[INFO] [stderr]   Downloaded memmap2 v0.9.5
[INFO] [stderr]   Downloaded candle-nn v0.3.3
[INFO] [stderr]   Downloaded wav v1.0.1
[INFO] [stderr]   Downloaded csv-core v0.1.12
[INFO] [stderr]   Downloaded gpu-descriptor-types v0.1.2
[INFO] [stderr]   Downloaded cfg_aliases v0.1.1
[INFO] [stderr]   Downloaded d3d12 v0.19.0
[INFO] [stderr]   Downloaded dyn-stack v0.10.0
[INFO] [stderr]   Downloaded enum-as-inner v0.6.1
[INFO] [stderr]   Downloaded synstructure v0.13.2
[INFO] [stderr]   Downloaded matrixmultiply v0.3.10
[INFO] [stderr]   Downloaded com_macros_support v0.6.0
[INFO] [stderr]   Downloaded num_cpus v1.17.0
[INFO] [stderr]   Downloaded safetensors v0.4.5
[INFO] [stderr]   Downloaded riff v1.0.1
[INFO] [stderr]   Downloaded xml-rs v0.8.26
[INFO] [stderr]   Downloaded gemm-f64 v0.17.1
[INFO] [stderr]   Downloaded serde_plain v1.0.2
[INFO] [stderr]   Downloaded gemm-c64 v0.17.1
[INFO] [stderr]   Downloaded sysctl v0.5.5
[INFO] [stderr]   Downloaded candle-core v0.3.3
[INFO] [stderr]   Downloaded naga v0.19.2
[INFO] [stderr]   Downloaded cc v1.2.27
[INFO] [stderr]   Downloaded candle-metal-kernels v0.3.3
[INFO] [stderr]   Downloaded windows v0.52.0
[INFO] [stderr]   Downloaded cudarc v0.10.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ee22a4f8fa591c9c819b0fecb07e1e4c74075a0c66dc057c7c3cad6796d5c342
[INFO] running `Command { std: "docker" "start" "-a" "ee22a4f8fa591c9c819b0fecb07e1e4c74075a0c66dc057c7c3cad6796d5c342", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ee22a4f8fa591c9c819b0fecb07e1e4c74075a0c66dc057c7c3cad6796d5c342", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ee22a4f8fa591c9c819b0fecb07e1e4c74075a0c66dc057c7c3cad6796d5c342", kill_on_drop: false }`
[INFO] [stdout] ee22a4f8fa591c9c819b0fecb07e1e4c74075a0c66dc057c7c3cad6796d5c342
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d1041f79dfa9486f4a87dbab9a3ec81827febce5ce2ff914248b2f6a52e6abb1
[INFO] running `Command { std: "docker" "start" "-a" "d1041f79dfa9486f4a87dbab9a3ec81827febce5ce2ff914248b2f6a52e6abb1", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling winnow v0.7.11
[INFO] [stderr]    Compiling iana-time-zone v0.1.63
[INFO] [stderr]    Compiling csv-core v0.1.12
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling indexmap v2.10.0
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling text-defusion v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Axis`
[INFO] [stdout]  --> src/compute/attention.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ndarray::{Array2, Array3, Axis};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Axis`
[INFO] [stdout]  --> src/compute/device.rs:2:39
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ndarray::{Array1, Array2, Array3, Axis};
[INFO] [stdout]   |                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array3`
[INFO] [stdout]  --> src/compute/tensor.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ndarray::{Array1, Array2, Array3};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array3`
[INFO] [stdout]  --> src/compute/mod.rs:8:31
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ndarray::{Array1, Array2, Array3};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ndarray::Array2`
[INFO] [stdout]  --> src/training/trainer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ndarray::Array2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]    --> src/compute/activation.rs:100:61
[INFO] [stdout]     |
[INFO] [stdout] 100 |                 let cdf = 0.5 * (1.0 + (x / 2.0_f32.sqrt()).erf());
[INFO] [stdout]     |                                                             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]     = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]     = help: call with fully qualified syntax `Erf::erf(...)` to keep using the current method
[INFO] [stdout]     = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sqrt_2_over_pi`
[INFO] [stdout]   --> src/compute/activation.rs:99:21
[INFO] [stdout]    |
[INFO] [stdout] 99 |                 let sqrt_2_over_pi = (2.0 / PI).sqrt();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sqrt_2_over_pi`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seq_len`
[INFO] [stdout]   --> src/compute/attention.rs:57:14
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let (seq_len, _) = input.dim();
[INFO] [stdout]    |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seq_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_id`
[INFO] [stdout]    --> src/compute/device.rs:295:29
[INFO] [stdout]     |
[INFO] [stdout] 295 |             DeviceType::Gpu(device_id) => {
[INFO] [stdout]     |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/compute/linear.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 for (i, mut element) in row.iter_mut().enumerate() {
[INFO] [stdout]     |                         ----^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `relu_result`
[INFO] [stdout]    --> src/compute/mod.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |     let relu_result = backend.relu(&test_input)?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relu_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gelu_result`
[INFO] [stdout]    --> src/compute/mod.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |     let gelu_result = backend.gelu(&test_input)?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gelu_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `softmax_result`
[INFO] [stdout]    --> src/compute/mod.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |     let softmax_result = backend.softmax(&test_input, 1)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_softmax_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ln_result`
[INFO] [stdout]    --> src/compute/mod.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |     let ln_result = backend.layer_norm(&test_input, &weight, &bias, 1e-5)?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ln_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_gradients`
[INFO] [stdout]    --> src/training/trainer.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         token_gradients: &[TokenGradient],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_gradients`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dropout` is never read
[INFO] [stdout]   --> src/compute/attention.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct MultiHeadAttention {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     dropout: f32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Gpu` is never constructed
[INFO] [stdout]   --> src/compute/device.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | enum DeviceType {
[INFO] [stdout]    |      ---------- variant in this enum
[INFO] [stdout] 24 |     Cpu,
[INFO] [stdout] 25 |     Gpu(u32), // GPU index
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeviceType` 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: field `layer_configs` is never read
[INFO] [stdout]    --> src/compute/linear.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub struct MLP {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 239 |     layers: Vec<Linear>,
[INFO] [stdout] 240 |     layer_configs: Vec<(usize, usize, bool)>, // (in, out, bias)
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model_size`
[INFO] [stdout]     --> src/main.rs:1001:9
[INFO] [stdout]      |
[INFO] [stdout] 1001 |     let model_size = config.model_dim * config.vocab_size;
[INFO] [stdout]      |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_model_size`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.64s
[INFO] running `Command { std: "docker" "inspect" "d1041f79dfa9486f4a87dbab9a3ec81827febce5ce2ff914248b2f6a52e6abb1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1041f79dfa9486f4a87dbab9a3ec81827febce5ce2ff914248b2f6a52e6abb1", kill_on_drop: false }`
[INFO] [stdout] d1041f79dfa9486f4a87dbab9a3ec81827febce5ce2ff914248b2f6a52e6abb1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1380ff6e27131ef676bbf3e22c31823e3e77b362cf393f39dd16ba29ec3008d7
[INFO] running `Command { std: "docker" "start" "-a" "1380ff6e27131ef676bbf3e22c31823e3e77b362cf393f39dd16ba29ec3008d7", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `Axis`
[INFO] [stdout]  --> src/compute/attention.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ndarray::{Array2, Array3, Axis};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Axis`
[INFO] [stdout]  --> src/compute/device.rs:2:39
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ndarray::{Array1, Array2, Array3, Axis};
[INFO] [stdout]   |                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array3`
[INFO] [stdout]  --> src/compute/tensor.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ndarray::{Array1, Array2, Array3};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array3`
[INFO] [stdout]  --> src/compute/mod.rs:8:31
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ndarray::{Array1, Array2, Array3};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ndarray::Array2`
[INFO] [stdout]  --> src/training/trainer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ndarray::Array2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]    --> src/compute/activation.rs:100:61
[INFO] [stdout]     |
[INFO] [stdout] 100 |                 let cdf = 0.5 * (1.0 + (x / 2.0_f32.sqrt()).erf());
[INFO] [stdout]     |                                                             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]     = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]     = help: call with fully qualified syntax `Erf::erf(...)` to keep using the current method
[INFO] [stdout]     = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sqrt_2_over_pi`
[INFO] [stdout]   --> src/compute/activation.rs:99:21
[INFO] [stdout]    |
[INFO] [stdout] 99 |                 let sqrt_2_over_pi = (2.0 / PI).sqrt();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sqrt_2_over_pi`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seq_len`
[INFO] [stdout]   --> src/compute/attention.rs:57:14
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let (seq_len, _) = input.dim();
[INFO] [stdout]    |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seq_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_id`
[INFO] [stdout]    --> src/compute/device.rs:295:29
[INFO] [stdout]     |
[INFO] [stdout] 295 |             DeviceType::Gpu(device_id) => {
[INFO] [stdout]     |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/compute/linear.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 for (i, mut element) in row.iter_mut().enumerate() {
[INFO] [stdout]     |                         ----^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `relu_result`
[INFO] [stdout]    --> src/compute/mod.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |     let relu_result = backend.relu(&test_input)?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relu_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling text-defusion v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `gelu_result`
[INFO] [stdout]    --> src/compute/mod.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |     let gelu_result = backend.gelu(&test_input)?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gelu_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `softmax_result`
[INFO] [stdout]    --> src/compute/mod.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |     let softmax_result = backend.softmax(&test_input, 1)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_softmax_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ln_result`
[INFO] [stdout]    --> src/compute/mod.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |     let ln_result = backend.layer_norm(&test_input, &weight, &bias, 1e-5)?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ln_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_gradients`
[INFO] [stdout]    --> src/training/trainer.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         token_gradients: &[TokenGradient],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_gradients`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dropout` is never read
[INFO] [stdout]   --> src/compute/attention.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct MultiHeadAttention {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     dropout: f32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Gpu` is never constructed
[INFO] [stdout]   --> src/compute/device.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | enum DeviceType {
[INFO] [stdout]    |      ---------- variant in this enum
[INFO] [stdout] 24 |     Cpu,
[INFO] [stdout] 25 |     Gpu(u32), // GPU index
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeviceType` 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: field `layer_configs` is never read
[INFO] [stdout]    --> src/compute/linear.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub struct MLP {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 239 |     layers: Vec<Linear>,
[INFO] [stdout] 240 |     layer_configs: Vec<(usize, usize, bool)>, // (in, out, bias)
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model_size`
[INFO] [stdout]     --> src/main.rs:1001:9
[INFO] [stdout]      |
[INFO] [stdout] 1001 |     let model_size = config.model_dim * config.vocab_size;
[INFO] [stdout]      |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_model_size`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Axis`
[INFO] [stdout]  --> src/compute/attention.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ndarray::{Array2, Array3, Axis};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Axis`
[INFO] [stdout]  --> src/compute/device.rs:2:39
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ndarray::{Array1, Array2, Array3, Axis};
[INFO] [stdout]   |                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array3`
[INFO] [stdout]  --> src/compute/tensor.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ndarray::{Array1, Array2, Array3};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array3`
[INFO] [stdout]  --> src/compute/mod.rs:8:31
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ndarray::{Array1, Array2, Array3};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ndarray::Array2`
[INFO] [stdout]  --> src/training/trainer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ndarray::Array2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a method with this name may be added to the standard library in the future
[INFO] [stdout]    --> src/compute/activation.rs:100:61
[INFO] [stdout]     |
[INFO] [stdout] 100 |                 let cdf = 0.5 * (1.0 + (x / 2.0_f32.sqrt()).erf());
[INFO] [stdout]     |                                                             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]     = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]     = help: call with fully qualified syntax `Erf::erf(...)` to keep using the current method
[INFO] [stdout]     = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sqrt_2_over_pi`
[INFO] [stdout]   --> src/compute/activation.rs:99:21
[INFO] [stdout]    |
[INFO] [stdout] 99 |                 let sqrt_2_over_pi = (2.0 / PI).sqrt();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sqrt_2_over_pi`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `seq_len`
[INFO] [stdout]   --> src/compute/attention.rs:57:14
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let (seq_len, _) = input.dim();
[INFO] [stdout]    |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seq_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_id`
[INFO] [stdout]    --> src/compute/device.rs:295:29
[INFO] [stdout]     |
[INFO] [stdout] 295 |             DeviceType::Gpu(device_id) => {
[INFO] [stdout]     |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/compute/linear.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 for (i, mut element) in row.iter_mut().enumerate() {
[INFO] [stdout]     |                         ----^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `relu_result`
[INFO] [stdout]    --> src/compute/mod.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |     let relu_result = backend.relu(&test_input)?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relu_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gelu_result`
[INFO] [stdout]    --> src/compute/mod.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |     let gelu_result = backend.gelu(&test_input)?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gelu_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `softmax_result`
[INFO] [stdout]    --> src/compute/mod.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |     let softmax_result = backend.softmax(&test_input, 1)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_softmax_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ln_result`
[INFO] [stdout]    --> src/compute/mod.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |     let ln_result = backend.layer_norm(&test_input, &weight, &bias, 1e-5)?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ln_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_gradients`
[INFO] [stdout]    --> src/training/trainer.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         token_gradients: &[TokenGradient],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_gradients`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dropout` is never read
[INFO] [stdout]   --> src/compute/attention.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct MultiHeadAttention {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     dropout: f32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Gpu` is never constructed
[INFO] [stdout]   --> src/compute/device.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | enum DeviceType {
[INFO] [stdout]    |      ---------- variant in this enum
[INFO] [stdout] 24 |     Cpu,
[INFO] [stdout] 25 |     Gpu(u32), // GPU index
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeviceType` 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: field `layer_configs` is never read
[INFO] [stdout]    --> src/compute/linear.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub struct MLP {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 239 |     layers: Vec<Linear>,
[INFO] [stdout] 240 |     layer_configs: Vec<(usize, usize, bool)>, // (in, out, bias)
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.31s
[INFO] running `Command { std: "docker" "inspect" "1380ff6e27131ef676bbf3e22c31823e3e77b362cf393f39dd16ba29ec3008d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1380ff6e27131ef676bbf3e22c31823e3e77b362cf393f39dd16ba29ec3008d7", kill_on_drop: false }`
[INFO] [stdout] 1380ff6e27131ef676bbf3e22c31823e3e77b362cf393f39dd16ba29ec3008d7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3940a60e661444a81e85d1f9d1b53702936a528f0def8079afd100da40b55ad9
[INFO] running `Command { std: "docker" "start" "-a" "3940a60e661444a81e85d1f9d1b53702936a528f0def8079afd100da40b55ad9", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Axis`
[INFO] [stdout] 
[INFO] [stderr]  --> src/compute/attention.rs:3:31
[INFO] [stdout] running 33 tests
[INFO] [stderr]   |
[INFO] [stderr] 3 | use ndarray::{Array2, Array3, Axis};
[INFO] [stderr]   |                               ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Axis`
[INFO] [stderr]  --> src/compute/device.rs:2:39
[INFO] [stderr]   |
[INFO] [stderr] 2 | use ndarray::{Array1, Array2, Array3, Axis};
[INFO] [stderr]   |                                       ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Array3`
[INFO] [stderr]  --> src/compute/tensor.rs:2:31
[INFO] [stderr]   |
[INFO] [stderr] 2 | use ndarray::{Array1, Array2, Array3};
[INFO] [stderr]   |                               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Array3`
[INFO] [stderr]  --> src/compute/mod.rs:8:31
[INFO] [stderr]   |
[INFO] [stderr] 8 | use ndarray::{Array1, Array2, Array3};
[INFO] [stderr]   |                               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ndarray::Array2`
[INFO] [stderr]  --> src/training/trainer.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use ndarray::Array2;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: a method with this name may be added to the standard library in the future
[INFO] [stderr]    --> src/compute/activation.rs:100:61
[INFO] [stderr]     |
[INFO] [stderr] 100 |                 let cdf = 0.5 * (1.0 + (x / 2.0_f32.sqrt()).erf());
[INFO] [stderr]     |                                                             ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stderr]     = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stderr]     = help: call with fully qualified syntax `Erf::erf(...)` to keep using the current method
[INFO] [stderr]     = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sqrt_2_over_pi`
[INFO] [stderr]   --> src/compute/activation.rs:99:21
[INFO] [stderr]    |
[INFO] [stderr] 99 |                 let sqrt_2_over_pi = (2.0 / PI).sqrt();
[INFO] [stderr]    |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sqrt_2_over_pi`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `seq_len`
[INFO] [stderr]   --> src/compute/attention.rs:57:14
[INFO] [stderr]    |
[INFO] [stderr] 57 |         let (seq_len, _) = input.dim();
[INFO] [stderr]    |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seq_len`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device_id`
[INFO] [stderr]    --> src/compute/device.rs:295:29
[INFO] [stderr]     |
[INFO] [stderr] 295 |             DeviceType::Gpu(device_id) => {
[INFO] [stderr]     |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_id`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/compute/linear.rs:107:25
[INFO] [stderr]     |
[INFO] [stderr] 107 |                 for (i, mut element) in row.iter_mut().enumerate() {
[INFO] [stderr]     |                         ----^^^^^^^
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `relu_result`
[INFO] [stderr]    --> src/compute/mod.rs:268:9
[INFO] [stderr]     |
[INFO] [stderr] 268 |     let relu_result = backend.relu(&test_input)?;
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relu_result`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gelu_result`
[INFO] [stderr]    --> src/compute/mod.rs:271:9
[INFO] [stderr]     |
[INFO] [stderr] 271 |     let gelu_result = backend.gelu(&test_input)?;
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gelu_result`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `softmax_result`
[INFO] [stderr]    --> src/compute/mod.rs:274:9
[INFO] [stderr]     |
[INFO] [stderr] 274 |     let softmax_result = backend.softmax(&test_input, 1)?;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_softmax_result`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ln_result`
[INFO] [stderr]    --> src/compute/mod.rs:280:9
[INFO] [stderr]     |
[INFO] [stderr] 280 |     let ln_result = backend.layer_norm(&test_input, &weight, &bias, 1e-5)?;
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ln_result`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `token_gradients`
[INFO] [stderr]    --> src/training/trainer.rs:383:9
[INFO] [stderr]     |
[INFO] [stderr] 383 |         token_gradients: &[TokenGradient],
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_gradients`
[INFO] [stderr] 
[INFO] [stderr] warning: field `dropout` is never read
[INFO] [stderr]   --> src/compute/attention.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr]  6 | pub struct MultiHeadAttention {
[INFO] [stderr]    |            ------------------ field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 21 |     dropout: f32,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Gpu` is never constructed
[INFO] [stderr]   --> src/compute/device.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | enum DeviceType {
[INFO] [stderr]    |      ---------- variant in this enum
[INFO] [stderr] 24 |     Cpu,
[INFO] [stderr] 25 |     Gpu(u32), // GPU index
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DeviceType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `layer_configs` is never read
[INFO] [stderr]    --> src/compute/linear.rs:240:5
[INFO] [stderr]     |
[INFO] [stderr] 238 | pub struct MLP {
[INFO] [stderr]     |            --- field in this struct
[INFO] [stderr] 239 |     layers: Vec<Linear>,
[INFO] [stderr] 240 |     layer_configs: Vec<(usize, usize, bool)>, // (in, out, bias)
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `text-defusion` (lib) generated 18 warnings (run `cargo fix --lib -p text-defusion` to apply 6 suggestions)
[INFO] [stderr] warning: `text-defusion` (lib test) generated 18 warnings (18 duplicates)
[INFO] [stderr] warning: unused variable: `model_size`
[INFO] [stderr]     --> src/main.rs:1001:9
[INFO] [stderr]      |
[INFO] [stderr] 1001 |     let model_size = config.model_dim * config.vocab_size;
[INFO] [stderr]      |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_model_size`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `text-defusion` (bin "text-defusion" test) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/text_defusion-f8bdd2762c4d16aa)
[INFO] [stdout] test compression::cache::tests::test_basic_pattern_operations ... ok
[INFO] [stdout] test compression::format::tests::test_checksum ... ok
[INFO] [stdout] test diffusion::scheduler::tests::test_scheduler_creation ... ok
[INFO] [stdout] test compression::cache::tests::test_pattern_analysis ... ok
[INFO] [stdout] test diffusion::scheduler::tests::test_schedule_types ... ok
[INFO] [stdout] test diffusion::scheduler::tests::test_noise_levels ... ok
[INFO] [stdout] test quantization::ops::tests::test_quantized_relu ... ok
[INFO] [stdout] test compression::format::tests::test_section_compression ... ok
[INFO] [stdout] test diffusion::scheduler::tests::test_noise_addition ... ok
[INFO] [stdout] test quantization::ops::tests::test_quantized_add ... ok
[INFO] [stdout] test compression::format::tests::test_lz_compression ... ok
[INFO] [stdout] test quantization::ops::tests::test_float_conversion ... ok
[INFO] [stdout] test tests::test_compression_cache ... ok
[INFO] [stdout] test compression::cache::tests::test_cache_serialization ... ok
[INFO] [stdout] test tests::test_compression_manager ... ok
[INFO] [stdout] test tests::test_diffusion_scheduler ... ok
[INFO] [stdout] test tests::test_error_types ... ok
[INFO] [stdout] test tests::test_math_utilities ... ok
[INFO] [stdout] test tests::test_logging_system ... ok
[INFO] [stdout] test tests::test_model_configuration ... ok
[INFO] [stdout] test tests::test_quantization_engine ... ok
[INFO] [stdout] test tests::test_sample_dataset ... ok
[INFO] [stdout] test tests::test_sampler_creation ... ok
[INFO] [stdout] test tests::test_model_registry ... ok
[INFO] [stdout] test tests::test_tokenizer_basic ... ok
[INFO] [stdout] test tests::test_sampling_config ... ok
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/text_defusion-f8bdd2762c4d16aa` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "3940a60e661444a81e85d1f9d1b53702936a528f0def8079afd100da40b55ad9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3940a60e661444a81e85d1f9d1b53702936a528f0def8079afd100da40b55ad9", kill_on_drop: false }`
[INFO] [stdout] 3940a60e661444a81e85d1f9d1b53702936a528f0def8079afd100da40b55ad9
