[INFO] cloning repository https://github.com/gwm-code/nexus-claude
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gwm-code/nexus-claude" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgwm-code%2Fnexus-claude", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgwm-code%2Fnexus-claude'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 684310401829a5f54e7844f6d60a3efab5fcb34a
[INFO] testing gwm-code/nexus-claude against beta-2026-04-21 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgwm-code%2Fnexus-claude" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/gwm-code/nexus-claude
[INFO] finished tweaking git repo https://github.com/gwm-code/nexus-claude
[INFO] tweaked toml for git repo https://github.com/gwm-code/nexus-claude written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/gwm-code/nexus-claude on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/gwm-code/nexus-claude 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 58efefe786b137f7329ad2eb9c3461767c0964ec8153fc00bf5aaaa62fe8cb50
[INFO] running `Command { std: "docker" "start" "-a" "58efefe786b137f7329ad2eb9c3461767c0964ec8153fc00bf5aaaa62fe8cb50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "58efefe786b137f7329ad2eb9c3461767c0964ec8153fc00bf5aaaa62fe8cb50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58efefe786b137f7329ad2eb9c3461767c0964ec8153fc00bf5aaaa62fe8cb50", kill_on_drop: false }`
[INFO] [stdout] 58efefe786b137f7329ad2eb9c3461767c0964ec8153fc00bf5aaaa62fe8cb50
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 028162bc9bd7d19414787f9934a59fc59ee0e7b4c2c35178b1ecc092fd12eb0e
[INFO] running `Command { std: "docker" "start" "-a" "028162bc9bd7d19414787f9934a59fc59ee0e7b4c2c35178b1ecc092fd12eb0e", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling aws-lc-rs v1.15.4
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling ryu v1.0.22
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling zmij v1.0.19
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling instability v0.3.11
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling zerocopy v0.8.38
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling lru v0.16.3
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling pest v2.8.5
[INFO] [stderr]    Compiling deranged v0.5.5
[INFO] [stderr]    Compiling webpki-roots v1.0.6
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling iri-string v0.7.10
[INFO] [stderr]    Compiling compact_str v0.9.0
[INFO] [stderr]    Compiling erased-serde v0.4.9
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling cc v1.2.55
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling socket2 v0.6.2
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling pest_meta v2.8.5
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling line-clipping v0.3.5
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling const-random v0.1.18
[INFO] [stderr]    Compiling time v0.3.46
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling dlv-list v0.5.2
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling ordered-multimap v0.7.3
[INFO] [stderr]    Compiling inotify v0.9.6
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling toml_parser v1.0.6+spec-1.1.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling serde_spanned v1.0.4
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling is-docker v0.2.0
[INFO] [stderr]    Compiling aws-lc-sys v0.37.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling arraydeque v0.5.1
[INFO] [stderr]    Compiling pathdiff v0.2.3
[INFO] [stderr]    Compiling clap_lex v0.7.7
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling tempfile v3.24.0
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling clap_builder v4.5.57
[INFO] [stderr]    Compiling yaml-rust2 v0.10.4
[INFO] [stderr]    Compiling notify v6.1.1
[INFO] [stderr]    Compiling serde-untagged v0.1.9
[INFO] [stderr]    Compiling toml v0.9.11+spec-1.1.0
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling is-wsl v0.4.0
[INFO] [stderr]    Compiling rust-ini v0.21.3
[INFO] [stderr]    Compiling console v0.16.2
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling file-id v0.2.3
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling matchit v0.7.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling pest_generator v2.8.5
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling dialoguer v0.12.0
[INFO] [stderr]    Compiling notify-debouncer-full v0.3.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling open v5.3.3
[INFO] [stderr]    Compiling directories v6.0.0
[INFO] [stderr]    Compiling uuid v1.20.0
[INFO] [stderr]    Compiling keyring v3.6.3
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling md5 v0.7.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling pest_derive v2.8.5
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling kasuari v0.4.11
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling ratatui-core v0.1.0
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling clap v4.5.57
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling ron v0.12.0
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling json5 v0.4.1
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling ratatui-macros v0.7.0
[INFO] [stderr]    Compiling ratatui v0.30.0
[INFO] [stderr]    Compiling config v0.15.19
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling reqwest v0.13.1
[INFO] [stderr]    Compiling oauth2 v5.0.0
[INFO] [stderr]    Compiling nexus v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> src/context/cache.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::error::Result;
[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: `SearchResult` and `VectorMemory`
[INFO] [stdout]  --> src/context/vector.rs:7:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use crate::memory::semantic::{VectorMemory, SearchResult};
[INFO] [stdout]   |                                   ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/executor/parser.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> src/executor/tools.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]  --> src/executor/tools.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use regex::Regex;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NexusError`
[INFO] [stdout]  --> src/executor/mod.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::error::{NexusError, Result};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ShadowRunResult`
[INFO] [stdout]  --> src/executor/mod.rs:6:38
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::sandbox::{SandboxManager, ShadowRunResult};
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NexusError`
[INFO] [stdout]  --> src/hierarchy.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::error::{NexusError, Result};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CompletionRequest`, `CompletionResponse`, and `Message`
[INFO] [stdout]  --> src/hierarchy.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::providers::{Message, CompletionRequest, CompletionResponse};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::ConfigManager`
[INFO] [stdout]  --> src/hierarchy.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::config::ConfigManager;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::providers::create_provider`
[INFO] [stdout]  --> src/hierarchy.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::providers::create_provider;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/memory/mod.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::time::{SystemTime, Duration};
[INFO] [stdout]    |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]    --> src/memory/mod.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |         use std::path::Path;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/mcp/command_validator.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 |     if (trimmed.contains("> /etc/") || trimmed.contains("> /dev/") || trimmed.contains("> /sys/")
[INFO] [stdout]     |        ^
[INFO] [stdout] 191 |         || trimmed.contains("> /proc/"))
[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] 190 ~     if trimmed.contains("> /etc/") || trimmed.contains("> /dev/") || trimmed.contains("> /sys/")
[INFO] [stdout] 191 ~         || trimmed.contains("> /proc/")
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Role`
[INFO] [stdout]  --> src/providers/openrouter.rs:3:63
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::providers::{CompletionRequest, CompletionResponse, Message, ModelInfo, ModelPricing, Provider, ProviderInfo, Role, Usage};
[INFO] [stdout]   |                                                               ^^^^^^^                                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> src/sandbox/validator.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Command`
[INFO] [stdout]  --> src/sandbox/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::process::Command;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Config` and `Event`
[INFO] [stdout]  --> src/watcher/filesystem.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use notify::{Config, Event, RecommendedWatcher, RecursiveMode, Watcher};
[INFO] [stdout]   |              ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/watcher/filesystem.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::agent::Agent`
[INFO] [stdout]  --> src/watcher/healer.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::agent::Agent;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Child`
[INFO] [stdout]   --> src/watcher/logs.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::process::{Child, Command};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HealingSession` and `HealingStatus`
[INFO] [stdout]   --> src/watcher/mod.rs:49:53
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub use healer::{Healer, HealerConfig, HealerEvent, HealingSession, HealingStatus, ErrorEvent};
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DetectedError`, `ErrorType`, and `PatternsDatabase`
[INFO] [stdout]   --> src/watcher/mod.rs:51:20
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub use patterns::{PatternsDatabase, DetectedError, ErrorType, ErrorSeverity, Language};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `interval`
[INFO] [stdout]   --> src/watcher/mod.rs:61:19
[INFO] [stdout]    |
[INFO] [stdout] 61 | use tokio::time::{interval, Duration};
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Confirm`
[INFO] [stdout]   --> src/main.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | use dialoguer::{Confirm, Input, Select};
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `swarm::SwarmOrchestrator`
[INFO] [stdout]   --> src/main.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use swarm::SwarmOrchestrator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/watcher/healer.rs:793:13
[INFO] [stdout]     |
[INFO] [stdout] 793 |         let mut messages = vec![
[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/watcher/healer.rs:877:13
[INFO] [stdout]     |
[INFO] [stdout] 877 |         let mut messages = vec![
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_content`
[INFO] [stdout]   --> src/context/diff.rs:31:19
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn apply_diff(old_content: &str, diff: &str) -> Result<String> {
[INFO] [stdout]    |                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_content`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/mcp/server.rs:319:5
[INFO] [stdout]     |
[INFO] [stdout] 319 |     state: &ServerState,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `timeout_secs`
[INFO] [stdout]    --> src/oauth.rs:161:88
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub fn handle_oauth_callback(provider_name: &str, config: &crate::config::NexusConfig, timeout_secs: u64) -> Result<OAuthToken> {
[INFO] [stdout]     |                                                                                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout_secs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `results`
[INFO] [stdout]    --> src/swarm/merger.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         results: &[SubtaskResult],
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_results`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session_id`
[INFO] [stdout]    --> src/watcher/healer.rs:834:9
[INFO] [stdout]     |
[INFO] [stdout] 834 |         session_id: &str,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/watcher/healer.rs:733:36
[INFO] [stdout]     |
[INFO] [stdout] 733 |             ErrorEvent::FileChange(e) => Ok(PathBuf::from(".")),
[INFO] [stdout]     |                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `swarm`
[INFO] [stdout]    --> src/watcher/mod.rs:631:39
[INFO] [stdout]     |
[INFO] [stdout] 631 |     pub async fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) -> Result<()> {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_swarm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `healer`
[INFO] [stdout]    --> src/watcher/mod.rs:632:21
[INFO] [stdout]     |
[INFO] [stdout] 632 |         if let Some(ref mut healer) = self.healer {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_healer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ServerInfo` is more private than the item `HttpServerConnection::get_server_info`
[INFO] [stdout]    --> src/mcp/client.rs:405:5
[INFO] [stdout]     |
[INFO] [stdout] 405 |     pub fn get_server_info(&self) -> &ServerInfo {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `HttpServerConnection::get_server_info` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ServerInfo` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/mcp/client.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout]  54 | struct ServerInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `file_tracker` is never used
[INFO] [stdout]   --> src/agent.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Agent {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn file_tracker(&self) -> &FileAccessTracker {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `load` and `add_provider_secure` are never used
[INFO] [stdout]    --> src/config.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout]  95 | impl ConfigManager {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn load() -> Result<NexusConfig> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn add_provider_secure(&mut self, name: String, mut provider: ProviderConfig) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `path`, `content_hash`, and `last_modified` are never read
[INFO] [stdout]   --> src/context/mod.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct FileState {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 17 |     pub path: PathBuf,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     pub content_hash: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 19 |     pub last_modified: SystemTime,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileState` 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: methods `get_diff_only`, `get_file_tree`, and `read_file` are never used
[INFO] [stdout]    --> src/context/mod.rs:109:18
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl ContextManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub async fn get_diff_only(&mut self) -> Result<Vec<FileChange>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub fn get_file_tree(&self) -> Vec<FileEntry> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn read_file(&self, path: &Path) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileChange` is never constructed
[INFO] [stdout]    --> src/context/mod.rs:288:12
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub struct FileChange {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ChangeType` is never used
[INFO] [stdout]    --> src/context/mod.rs:296:10
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub enum ChangeType {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileEntry` is never constructed
[INFO] [stdout]    --> src/context/mod.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 303 | pub struct FileEntry {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileCache` is never constructed
[INFO] [stdout]  --> src/context/cache.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct FileCache {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, `insert`, and `clear` are never used
[INFO] [stdout]   --> src/context/cache.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl FileCache {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn get(&self, path: &PathBuf) -> Option<&String> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn insert(&mut self, path: PathBuf, content: String) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_diff` is never used
[INFO] [stdout]  --> src/context/diff.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn compute_diff(old_content: &str, new_content: &str) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_diff` is never used
[INFO] [stdout]   --> src/context/diff.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn apply_diff(old_content: &str, diff: &str) -> Result<String> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_staleness_batch`, `get_last_read`, `remove_tracking`, `clear`, and `tracked_count` are never used
[INFO] [stdout]    --> src/context/file_tracker.rs:121:12
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl FileAccessTracker {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn check_staleness_batch<'a>(&self, paths: impl Iterator<Item = &'a Path>) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn get_last_read(&self, path: &Path) -> Option<SystemTime> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn remove_tracking(&self, path: &Path) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub fn clear(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn tracked_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserMemory` is never constructed
[INFO] [stdout]  --> src/context/memory.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct UserMemory {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set`, `get`, `load`, and `save` are never used
[INFO] [stdout]   --> src/context/memory.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl UserMemory {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new(storage_path: PathBuf) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn set(&mut self, key: &str, value: &str) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn get(&self, key: &str) -> Option<&String> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn load(&mut self) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn save(&self) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ProviderNotConfigured` and `UserCancelled` are never constructed
[INFO] [stdout]   --> src/error.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum NexusError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 27 |     ProviderNotConfigured(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     UserCancelled,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NexusError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AgentExecutor` is never constructed
[INFO] [stdout]   --> src/executor/mod.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct AgentExecutor {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `file_tracker`, `set_auto_mode`, `process_response`, and `execute_tool` are never used
[INFO] [stdout]    --> src/executor/mod.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl AgentExecutor {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout]  22 |     pub fn new(working_dir: PathBuf, auto_mode: bool) -> Result<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn file_tracker(&self) -> &FileAccessTracker {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     pub fn set_auto_mode(&mut self, auto_mode: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  42 |     pub async fn process_response(&self, response: &str) -> Result<ExecutionOutcome> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     async fn execute_tool(&self, tool_call: &ToolCall) -> Result<ToolResult> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_tool_calls_from_text` is never used
[INFO] [stdout]    --> src/executor/mod.rs:251:4
[INFO] [stdout]     |
[INFO] [stdout] 251 | fn remove_tool_calls_from_text(text: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExecutionOutcome` is never used
[INFO] [stdout]    --> src/executor/mod.rs:269:10
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub enum ExecutionOutcome {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Action` is never used
[INFO] [stdout]  --> src/executor/parser.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Action {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AIParser` is never constructed
[INFO] [stdout]   --> src/executor/parser.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct AIParser {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `parse_response`, `parse_shell_commands`, `parse_file_operations`, and `detect_test_commands` are never used
[INFO] [stdout]    --> src/executor/parser.rs:34:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl AIParser {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  34 |     pub fn new() -> Result<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  46 |     pub fn parse_response(&self, response: &str) -> Vec<Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn parse_shell_commands(&self, response: &str) -> Vec<Action> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     fn parse_file_operations(&self, response: &str) -> Vec<Action> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn detect_test_commands(&self, response: &str) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_tool_call` is never used
[INFO] [stdout]    --> src/executor/tools.rs:230:8
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub fn is_tool_call(response: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_tier` is never used
[INFO] [stdout]    --> src/hierarchy.rs:280:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl ModelHierarchy {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub fn get_tier(&self, category: TaskCategory, tier_index: usize) -> Option<&ModelTier> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]    --> src/hierarchy.rs:319:12
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl TaskCategory {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] 319 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `classify_task` is never used
[INFO] [stdout]    --> src/hierarchy.rs:390:8
[INFO] [stdout]     |
[INFO] [stdout] 390 | pub fn classify_task(input: &str, is_scheduled: bool) -> TaskCategory {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `record_interaction` and `remember_procedure` are never used
[INFO] [stdout]    --> src/memory/mod.rs:71:18
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl MemorySystem {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub async fn record_interaction(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub async fn remember_procedure(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `events` and `event_count` are never read
[INFO] [stdout]   --> src/memory/event_store.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct EventStore {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 17 |     storage_path: PathBuf,
[INFO] [stdout] 18 |     events: VecDeque<MemoryEvent>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 19 |     event_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `query_by_type` is never used
[INFO] [stdout]    --> src/memory/event_store.rs:132:18
[INFO] [stdout]     |
[INFO] [stdout]  70 | impl EventStore {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub async fn query_by_type(&self, event_type: &str, limit: usize) -> Result<Vec<MemoryEvent>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relations` is never read
[INFO] [stdout]   --> src/memory/graph.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct GraphMemory {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     relations: Vec<Relation>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_relation`, `get_relations`, and `save_relations` are never used
[INFO] [stdout]    --> src/memory/graph.rs:58:18
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl GraphMemory {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub async fn add_relation(&mut self, relation: Relation) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub async fn get_relations(&self, entity_id: &str) -> Result<Vec<Relation>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     async fn save_relations(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/memory/semantic.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct SearchResult {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 32 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SearchResult` 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: struct `Procedure` is never constructed
[INFO] [stdout]   --> src/memory/types.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Procedure {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `query` and `session_id` are never read
[INFO] [stdout]   --> src/memory/types.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct ContextBundle {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 40 |     pub query: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub session_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContextBundle` 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 `session_id` is never read
[INFO] [stdout]    --> src/memory/types.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub struct MemoryStats {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub session_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MemoryStats` 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: method `format` is never used
[INFO] [stdout]    --> src/memory/types.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl MemoryStats {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] 120 |     pub fn format(&self) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `old_procedures_removed`, `total_size_before`, and `total_size_after` are never read
[INFO] [stdout]   --> src/memory/consolidation.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ConsolidationReport {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub old_procedures_removed: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub total_size_before: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     pub total_size_after: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConsolidationReport` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_priority` is never used
[INFO] [stdout]   --> src/memory/consolidation.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn calculate_priority(event: &MemoryEvent) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Prompt` is never constructed
[INFO] [stdout]   --> src/mcp/mod.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Prompt {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PromptArgument` is never constructed
[INFO] [stdout]   --> src/mcp/mod.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct PromptArgument {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server_running` is never read
[INFO] [stdout]    --> src/mcp/mod.rs:204:9
[INFO] [stdout]     |
[INFO] [stdout] 202 | pub struct McpStatus {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 203 |     pub connected_servers: Vec<String>,
[INFO] [stdout] 204 |     pub server_running: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `McpStatus` 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 `next_request_id` is never read
[INFO] [stdout]   --> src/mcp/client.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct McpClient {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 43 |     next_request_id: Mutex<u64>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `child`, `pending_requests`, and `server_info` are never read
[INFO] [stdout]   --> src/mcp/client.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct ServerConnection {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 48 |     child: Arc<std::sync::Mutex<Child>>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 49 |     pending_requests: Arc<std::sync::Mutex<std::collections::HashMap<u64, tokio::sync::oneshot::Sender<JsonRpcResponse>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 50 |     server_info: ServerInfo,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `server_info` and `capabilities` are never read
[INFO] [stdout]   --> src/mcp/client.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | struct ServerInfo {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 55 |     protocol_version: String,
[INFO] [stdout] 56 |     server_info: ServerMetadata,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 57 |     capabilities: serde_json::Value,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ServerInfo` 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: fields `name` and `version` are never read
[INFO] [stdout]   --> src/mcp/client.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 61 | struct ServerMetadata {
[INFO] [stdout]    |        -------------- fields in this struct
[INFO] [stdout] 62 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 64 |     version: Option<String>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ServerMetadata` 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: method `connect_http` is never used
[INFO] [stdout]    --> src/mcp/client.rs:122:18
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl McpClient {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub async fn connect_http(&self, url: &str) -> Result<HttpServerConnection> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `disconnect` is never used
[INFO] [stdout]    --> src/mcp/client.rs:304:18
[INFO] [stdout]     |
[INFO] [stdout] 240 | impl ServerConnection {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub async fn disconnect(&self) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HttpServerConnection` is never constructed
[INFO] [stdout]    --> src/mcp/client.rs:316:12
[INFO] [stdout]     |
[INFO] [stdout] 316 | pub struct HttpServerConnection {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `list_tools`, `call_tool`, and `get_server_info` are never used
[INFO] [stdout]    --> src/mcp/client.rs:325:18
[INFO] [stdout]     |
[INFO] [stdout] 323 | impl HttpServerConnection {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] 324 |     /// List available tools via HTTP
[INFO] [stdout] 325 |     pub async fn list_tools(&self) -> Result<Vec<Tool>> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 360 |     pub async fn call_tool(&self, tool_name: &str, arguments: serde_json::Value) -> Result<ToolResult> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 405 |     pub fn get_server_info(&self) -> &ServerInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DANGEROUS_SHELL_PATTERNS` is never used
[INFO] [stdout]   --> src/mcp/command_validator.rs:72:7
[INFO] [stdout]    |
[INFO] [stdout] 72 | const DANGEROUS_SHELL_PATTERNS: &[&str] = &[
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `jsonrpc` is never read
[INFO] [stdout]   --> src/mcp/server.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | struct JsonRpcRequest {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 36 |     jsonrpc: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `JsonRpcRequest` 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: struct `InitializeParams` is never constructed
[INFO] [stdout]   --> src/mcp/server.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct InitializeParams {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClientInfo` is never constructed
[INFO] [stdout]   --> src/mcp/server.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct ClientInfo {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `stop`, `register_tool`, `unregister_tool`, and `list_tools` are never used
[INFO] [stdout]    --> src/mcp/server.rs:153:18
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl McpServer {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub async fn stop(&self) -> Result<()> {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub async fn register_tool(&self, tool: Tool) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub async fn unregister_tool(&self, tool_name: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub async fn list_tools(&self) -> Vec<Tool> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResourceData` is never constructed
[INFO] [stdout]   --> src/mcp/resources.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ResourceData {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `subscribe` and `unsubscribe` are never used
[INFO] [stdout]   --> src/mcp/resources.rs:66:18
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ResourceHandler {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub async fn subscribe(&self, _uri: &str) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub async fn unsubscribe(&self, _uri: &str) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResourceReadResult` is never constructed
[INFO] [stdout]    --> src/mcp/resources.rs:285:12
[INFO] [stdout]     |
[INFO] [stdout] 285 | pub struct ResourceReadResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `StreamChunk` is never used
[INFO] [stdout]   --> src/providers/mod.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum StreamChunk {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/providers/mod.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl CompletionResponse {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 71 |     pub fn new(id: String, model: String, content: String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `complete_stream` and `refresh_auth` are never used
[INFO] [stdout]    --> src/providers/mod.rs:133:14
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub trait Provider: Send + Sync {
[INFO] [stdout]     |           -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 133 |     async fn complete_stream(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     async fn refresh_auth(&mut self) -> Result<()>;
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `default_model` is never read
[INFO] [stdout]   --> src/providers/claude.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ClaudeProvider {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     default_model: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `refresh_oauth_token` is never used
[INFO] [stdout]    --> src/providers/claude.rs:191:18
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl ClaudeProvider {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub async fn refresh_oauth_token(&mut self) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_refresh_token` is never used
[INFO] [stdout]    --> src/providers/claude.rs:484:12
[INFO] [stdout]     |
[INFO] [stdout] 483 | impl ClaudeProvider {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] 484 |     pub fn get_refresh_token(&self) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_refresh_token` is never used
[INFO] [stdout]    --> src/providers/google.rs:475:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl GoogleProvider {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 475 |     pub fn get_refresh_token(&self) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModelCapabilities` is never constructed
[INFO] [stdout]  --> src/providers/model_capabilities.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ModelCapabilities {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]   --> src/providers/model_capabilities.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ModelCapabilities {
[INFO] [stdout]    | ---------------------- associated functions in this implementation
[INFO] [stdout] 20 |     pub fn get_all() -> &'static [ModelCapabilities] {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn get_by_id(id: &str) -> Option<&'static ModelCapabilities> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn filter_by_provider(provider: &str) -> Vec<&'static ModelCapabilities> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn rank_for_heartbeat(models: &[String]) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn rank_for_planning(models: &[String]) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn rank_for_coding(models: &[String]) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn rank_for_review(models: &[String]) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rank_by_score` is never used
[INFO] [stdout]   --> src/providers/model_capabilities.rs:61:4
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn rank_by_score<F>(models: &[String], score_fn: F) -> Vec<String>
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MODEL_RANKINGS` is never used
[INFO] [stdout]   --> src/providers/model_capabilities.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | static MODEL_RANKINGS: Lazy<Vec<ModelCapabilities>> = Lazy::new(|| {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `default_model` is never read
[INFO] [stdout]   --> src/providers/opencode.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct OpencodeProvider {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     default_model: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `default_model` is never read
[INFO] [stdout]   --> src/providers/openrouter.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct OpenRouterProvider {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     default_model: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fetch_available_models` is never used
[INFO] [stdout]   --> src/providers/openrouter.rs:57:18
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl OpenRouterProvider {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub async fn fetch_available_models(&self) -> Result<Vec<String>> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `operation` and `path` are never read
[INFO] [stdout]   --> src/sandbox/mod.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |     FileSystem { operation: FileOp, path: PathBuf },
[INFO] [stdout]    |     ----------   ^^^^^^^^^          ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CommandType` 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: fields `command` and `args` are never read
[INFO] [stdout]   --> src/sandbox/mod.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Shell { command: String, args: Vec<String> },
[INFO] [stdout]    |     -----   ^^^^^^^          ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CommandType` 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: fields `manager`, `action`, and `packages` are never read
[INFO] [stdout]   --> src/sandbox/mod.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Package { manager: PackageManager, action: PackageAction, packages: Vec<String> },
[INFO] [stdout]    |     -------   ^^^^^^^                  ^^^^^^                 ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CommandType` 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 `to` is never read
[INFO] [stdout]   --> src/sandbox/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Move { to: PathBuf },
[INFO] [stdout]    |     ----   ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileOp` 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 `to` is never read
[INFO] [stdout]   --> src/sandbox/mod.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 |     Copy { to: PathBuf },
[INFO] [stdout]    |     ----   ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileOp` 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: variants `Read` and `Write` are never constructed
[INFO] [stdout]   --> src/sandbox/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum FileOp {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] 18 |     Read,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 19 |     Write,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileOp` 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: variants `Apt` and `Brew` are never constructed
[INFO] [stdout]   --> src/sandbox/mod.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum PackageManager {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 31 |     Apt,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 32 |     Brew,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PackageManager` 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 `container_id` is never read
[INFO] [stdout]   --> src/sandbox/docker.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct DockerResult {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub container_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DockerResult` 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: method `cleanup` is never used
[INFO] [stdout]    --> src/sandbox/docker.rs:173:18
[INFO] [stdout]     |
[INFO] [stdout]  19 | impl DockerSandbox {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub async fn cleanup(&self, container_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `backup_path` is never read
[INFO] [stdout]   --> src/sandbox/hydration.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct FileChange {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub backup_path: Option<PathBuf>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileChange` 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 `backup_dir` is never read
[INFO] [stdout]   --> src/sandbox/hydration.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Hydrator {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 22 |     backup_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `create_plan`, `walk_sandbox`, `rollback`, `should_backup`, `create_backup`, and `cleanup_old_backups` are never used
[INFO] [stdout]    --> src/sandbox/hydration.rs:33:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Hydrator {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn create_plan(&self, sandbox_dir: &Path, host_dir: &Path) -> Result<HydrationPlan> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  47 |     fn walk_sandbox(
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn rollback(&self, plan: &HydrationPlan) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn should_backup(&self, path: &Path) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     fn create_backup(&self, original: &Path) -> Result<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn cleanup_old_backups(&self, max_age_hours: u64) -> Result<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `checks` and `warnings` are never read
[INFO] [stdout]  --> src/sandbox/validator.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ValidationResult {
[INFO] [stdout]   |            ---------------- fields in this struct
[INFO] [stdout] 6 |     pub passed: bool,
[INFO] [stdout] 7 |     pub checks: Vec<ValidationCheck>,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 8 |     pub warnings: Vec<String>,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ValidationResult` 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 `message` is never read
[INFO] [stdout]   --> src/sandbox/validator.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ValidationCheck {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub message: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValidationCheck` 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: methods `enable_check`, `disable_check`, and `validate_file_changes` are never used
[INFO] [stdout]    --> src/sandbox/validator.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl Validator {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn enable_check(&mut self, check_name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn disable_check(&mut self, check_name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn validate_file_changes(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_secret` is never used
[INFO] [stdout]   --> src/secret_store.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn delete_secret(key_name: &str) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_context` is never used
[INFO] [stdout]   --> src/swarm/mod.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl SwarmTask {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn with_context(mut self, context: impl Into<String>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `task_id` and `execution_time_ms` are never read
[INFO] [stdout]   --> src/swarm/mod.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct SwarmResult {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 70 |     pub task_id: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub execution_time_ms: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SwarmResult` 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 `execution_time_ms` is never read
[INFO] [stdout]   --> src/swarm/mod.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct SubtaskResult {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub execution_time_ms: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SubtaskResult` 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: fields `file_path`, `worker_a`, and `worker_b` are never read
[INFO] [stdout]   --> src/swarm/mod.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct MergeConflict {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 92 |     pub file_path: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 93 |     pub worker_a: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 94 |     pub worker_b: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MergeConflict` 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: variant `Skipped` is never constructed
[INFO] [stdout]    --> src/swarm/mod.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub enum ConflictResolution {
[INFO] [stdout]     |          ------------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 102 |     Skipped,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictResolution` 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: fields `active_tasks`, `provider`, and `model` are never read
[INFO] [stdout]    --> src/swarm/mod.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct SwarmOrchestrator {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 112 |     active_tasks: Arc<RwLock<HashMap<String, TaskHandle>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 113 |     provider: Arc<dyn Provider + Send + Sync>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 114 |     model: String,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `task_id`, `status`, and `start_time` are never read
[INFO] [stdout]    --> src/swarm/mod.rs:118:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct TaskHandle {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 118 |     task_id: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 119 |     status: TaskStatus,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 120 |     start_time: std::time::Instant,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_active_tasks` and `cancel_task` are never used
[INFO] [stdout]    --> src/swarm/mod.rs:395:18
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl SwarmOrchestrator {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub async fn get_active_tasks(&self) -> Vec<(String, TaskStatus)> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 |     pub async fn cancel_task(&self, task_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InProgress`, `Completed`, `Failed`, and `Cancelled` are never constructed
[INFO] [stdout]   --> src/swarm/architect.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum TaskStatus {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 11 |     Pending,
[INFO] [stdout] 12 |     InProgress,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 13 |     Completed,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 14 |     Failed(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 15 |     Cancelled,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TaskStatus` 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: fields `worker_type_hint` and `status` are never read
[INFO] [stdout]   --> src/swarm/architect.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Task {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub worker_type_hint: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub status: TaskStatus,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Task` 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: method `find_critical_path` is never used
[INFO] [stdout]    --> src/swarm/architect.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout]  53 | impl ArchitectAgent {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn find_critical_path(&self, tasks: &[Task]) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/swarm/merger.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout]  13 | impl GitMerger {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn create_backup(&self, file_path: &str) -> Result<PathBuf> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn restore_backup(&self, file_path: &str, backup_path: &Path) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn generate_conflict_report(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn init_git_tracking(&self, working_dir: &Path) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn commit_worker_changes(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn merge_commits(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub fn get_conflict_files(&self, working_dir: &Path) -> Result<Vec<String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn abort_merge(&self, working_dir: &Path) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MergeResult` is never used
[INFO] [stdout]    --> src/swarm/merger.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 | pub enum MergeResult {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stage_number` is never read
[INFO] [stdout]  --> src/swarm/scheduler.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ExecutionStage {
[INFO] [stdout]   |            -------------- field in this struct
[INFO] [stdout] 8 |     pub stage_number: usize,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ExecutionStage` 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: fields `total_tasks` and `critical_path` are never read
[INFO] [stdout]   --> src/swarm/scheduler.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct ExecutionPlan {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 15 |     pub stages: Vec<ExecutionStage>,
[INFO] [stdout] 16 |     pub total_tasks: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 17 |     pub critical_path: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExecutionPlan` 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: methods `get_dependency_order`, `is_ready`, and `get_ready_tasks` are never used
[INFO] [stdout]    --> src/swarm/scheduler.rs:258:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Scheduler {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 258 |     pub fn get_dependency_order(&self, task: &Task, all_tasks: &[Task]) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 296 |     pub fn is_ready(&self, task: &Task, completed: &HashSet<String>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn get_ready_tasks<'a>(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]   --> src/swarm/worker.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl WorkerType {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 26 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `task_id` and `tests_passed` are never read
[INFO] [stdout]   --> src/swarm/worker.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct WorkerResult {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 46 |     pub task_id: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub tests_passed: Option<bool>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WorkerResult` 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: fields `debounce_ms` and `max_concurrent_healing` are never read
[INFO] [stdout]   --> src/watcher/mod.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct WatcherEngineConfig {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub debounce_ms: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 76 |     /// Max number of concurrent healing sessions
[INFO] [stdout] 77 |     pub max_concurrent_healing: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WatcherEngineConfig` 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: multiple fields are never read
[INFO] [stdout]    --> src/watcher/mod.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct ProjectWatcher {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 102 |     pub id: String,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 103 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 104 |     pub path: PathBuf,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 105 |     pub project_type: Option<String>,
[INFO] [stdout] 106 |     pub file_watcher_enabled: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 107 |     pub log_monitoring_enabled: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 108 |     pub auto_healing_enabled: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 109 |     pub custom_patterns: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ProjectWatcher` 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: fields `file_change_tx`, `log_error_tx`, `healer_event_tx`, and `memory` are never read
[INFO] [stdout]    --> src/watcher/mod.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub struct WatcherEngine {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 135 |     file_change_tx: mpsc::Sender<FileChangeEvent>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 136 |     file_change_rx: Arc<RwLock<mpsc::Receiver<FileChangeEvent>>>,
[INFO] [stdout] 137 |     log_error_tx: mpsc::Sender<LogErrorEvent>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 138 |     log_error_rx: Arc<RwLock<mpsc::Receiver<LogErrorEvent>>>,
[INFO] [stdout] 139 |     healer_event_tx: mpsc::Sender<HealerEvent>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     memory: Arc<RwLock<MemorySystem>>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_project`, `monitor_dev_server`, `get_projects`, `set_swarm`, and `update_config` are never used
[INFO] [stdout]    --> src/watcher/mod.rs:526:18
[INFO] [stdout]     |
[INFO] [stdout] 152 | impl WatcherEngine {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 526 |     pub async fn remove_project(&self, project_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 560 |     pub async fn monitor_dev_server(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 611 |     pub async fn get_projects(&self) -> Vec<ProjectWatcher> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 631 |     pub async fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 641 |     pub async fn update_config(&mut self, new_config: WatcherEngineConfig) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_default_engine` is never used
[INFO] [stdout]    --> src/watcher/mod.rs:664:14
[INFO] [stdout]     |
[INFO] [stdout] 664 | pub async fn create_default_engine(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_desktop_notification` is never used
[INFO] [stdout]    --> src/watcher/mod.rs:688:8
[INFO] [stdout]     |
[INFO] [stdout] 688 | pub fn send_desktop_notification(title: &str, message: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timestamp` and `should_lint` are never read
[INFO] [stdout]    --> src/watcher/filesystem.rs:99:9
[INFO] [stdout]     |
[INFO] [stdout]  97 | pub struct FileChangeEvent {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout]  98 |     pub project_id: String,
[INFO] [stdout]  99 |     pub timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub should_lint: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileChangeEvent` 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: variant `Renamed` is never constructed
[INFO] [stdout]    --> src/watcher/filesystem.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub enum ChangeType {
[INFO] [stdout]     |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 114 |     Renamed(PathBuf), // Contains the old path
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChangeType` 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: struct `WatcherStats` is never constructed
[INFO] [stdout]    --> src/watcher/filesystem.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct WatcherStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_project`, `stop_watching`, `get_projects`, and `get_stats` are never used
[INFO] [stdout]    --> src/watcher/filesystem.rs:169:18
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl FileSystemWatcher {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub async fn remove_project(&self, project_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     async fn stop_watching(&self, project_id: &str) {
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 331 |     pub async fn get_projects(&self) -> Vec<WatchedProject> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub async fn get_stats(&self) -> WatcherStats {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `start_time` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct HealingSession {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 27 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub start_time: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HealingSession` 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 `output` is never read
[INFO] [stdout]   --> src/watcher/healer.rs:42:41
[INFO] [stdout]    |
[INFO] [stdout] 42 |     BuildError { project_path: PathBuf, output: String },
[INFO] [stdout]    |     ---------- field in this variant    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ErrorEvent` 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: variant `TestFailure` is never constructed
[INFO] [stdout]   --> src/watcher/healer.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub enum ErrorEvent {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 43 |     TestFailure { project_path: PathBuf, test_name: String, output: String },
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ErrorEvent` 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: variant `Failed` is never constructed
[INFO] [stdout]   --> src/watcher/healer.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub enum HealingStatus {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 55 |     Failed(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HealingStatus` 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: fields `relevant_procedures` and `root_cause` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct InvestigationResult {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 61 |     pub similar_past_errors: Vec<MemoryResult>,
[INFO] [stdout] 62 |     pub relevant_procedures: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub root_cause: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InvestigationResult` 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: fields `id`, `shadow_run_result`, `was_applied`, and `verification_result` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct FixAttempt {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 71 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 72 |     pub description: String,
[INFO] [stdout] 73 |     pub shadow_run_result: ShadowRunResult,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 74 |     pub hydration_plan: Option<HydrationPlan>,
[INFO] [stdout] 75 |     pub was_applied: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 76 |     pub verification_result: Option<VerificationResult>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FixAttempt` 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: fields `test_output` and `new_errors` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct VerificationResult {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 82 |     pub success: bool,
[INFO] [stdout] 83 |     pub test_output: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 84 |     pub error_resolved: bool,
[INFO] [stdout] 85 |     pub new_errors: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VerificationResult` 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: fields `fix_success_rate` and `tags` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct LearningEntry {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 95 |     fix_success_rate: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |     #[serde(skip)]
[INFO] [stdout] 97 |     tags: Vec<String>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LearningEntry` 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: fields `auto_apply_simple_fixes`, `max_fix_attempts`, and `verify_timeout_secs` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct HealerConfig {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 103 |     pub auto_apply_simple_fixes: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 104 |     pub max_fix_attempts: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 105 |     pub verify_timeout_secs: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerConfig` 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: fields `session_id` and `error_summary` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:143:22
[INFO] [stdout]     |
[INFO] [stdout] 143 |     SessionStarted { session_id: String, error_summary: String },
[INFO] [stdout]     |     --------------   ^^^^^^^^^^          ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id` and `analysis` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:144:29
[INFO] [stdout]     |
[INFO] [stdout] 144 |     InvestigationComplete { session_id: String, analysis: String },
[INFO] [stdout]     |     ---------------------   ^^^^^^^^^^          ^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id` and `fix_description` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:145:20
[INFO] [stdout]     |
[INFO] [stdout] 145 |     FixGenerated { session_id: String, fix_description: String },
[INFO] [stdout]     |     ------------   ^^^^^^^^^^          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id`, `success`, and `output` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:146:25
[INFO] [stdout]     |
[INFO] [stdout] 146 |     ShadowRunComplete { session_id: String, success: bool, output: String },
[INFO] [stdout]     |     -----------------   ^^^^^^^^^^          ^^^^^^^        ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id` and `files_modified` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:147:18
[INFO] [stdout]     |
[INFO] [stdout] 147 |     FixApplied { session_id: String, files_modified: Vec<String> },
[INFO] [stdout]     |     ----------   ^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id`, `success`, and `error_resolved` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:148:28
[INFO] [stdout]     |
[INFO] [stdout] 148 |     VerificationComplete { session_id: String, success: bool, error_resolved: bool },
[INFO] [stdout]     |     --------------------   ^^^^^^^^^^          ^^^^^^^        ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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 `session_id` is never read
[INFO] [stdout]    --> src/watcher/healer.rs:149:23
[INFO] [stdout]     |
[INFO] [stdout] 149 |     SessionComplete { session_id: String, success: bool },
[INFO] [stdout]     |     ---------------   ^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: methods `set_swarm`, `generate_fix_with_ai`, and `extract_root_cause` are never used
[INFO] [stdout]     --> src/watcher/healer.rs:176:12
[INFO] [stdout]      |
[INFO] [stdout]  153 | impl Healer {
[INFO] [stdout]      | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  176 |     pub fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) {
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1065 |     async fn generate_fix_with_ai(
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1130 |     fn extract_root_cause(&self, analysis: &str) -> Option<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `language_hint` and `enabled` are never read
[INFO] [stdout]   --> src/watcher/logs.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct LogSource {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub language_hint: Option<Language>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 25 |     pub enabled: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogSource` 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: variants `Process` and `Stream` are never constructed
[INFO] [stdout]   --> src/watcher/logs.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum LogSourceType {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 34 |     Process { command: String, args: Vec<String> },
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 35 |     /// A pipe or stream (for integration with external tools)
[INFO] [stdout] 36 |     Stream { name: String },
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogSourceType` 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: fields `timestamp`, `raw_log_line`, and `context_lines` are never read
[INFO] [stdout]   --> src/watcher/logs.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct LogErrorEvent {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 42 |     pub source_id: String,
[INFO] [stdout] 43 |     pub timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 44 |     pub detected_error: DetectedError,
[INFO] [stdout] 45 |     pub raw_log_line: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 46 |     pub context_lines: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogErrorEvent` 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: struct `LogMonitorStats` is never constructed
[INFO] [stdout]   --> src/watcher/logs.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct LogMonitorStats {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_source`, `set_source_enabled`, `process_log_line`, `get_sources`, and `get_stats` are never used
[INFO] [stdout]    --> src/watcher/logs.rs:393:18
[INFO] [stdout]     |
[INFO] [stdout]  85 | impl LogMonitor {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 393 |     pub async fn remove_source(&self, source_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 428 |     pub async fn set_source_enabled(&self, source_id: &str, _enabled: bool) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 445 |     pub async fn process_log_line(&self, source_id: &str, line: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 485 |     pub async fn get_sources(&self) -> Vec<LogSource> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 491 |     pub async fn get_stats(&self) -> LogMonitorStats {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `JsUndefinedVariable`, `TsMissingType`, `MemoryError`, and `Unknown` are never constructed
[INFO] [stdout]   --> src/watcher/patterns.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum ErrorType {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 37 |     JsUndefinedVariable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 38 |     TsTypeMismatch,
[INFO] [stdout] 39 |     TsMissingType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     MemoryError,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ErrorType` 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 `language` is never read
[INFO] [stdout]   --> src/watcher/patterns.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct ErrorHandler {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 75 |     pub language: Language,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Go` and `Java` are never constructed
[INFO] [stdout]   --> src/watcher/patterns.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub enum Language {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 85 |     Go,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 86 |     Java,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Language` 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: fields `name` and `auto_fixable` are never read
[INFO] [stdout]    --> src/watcher/patterns.rs:93:9
[INFO] [stdout]     |
[INFO] [stdout]  92 | pub struct ErrorPattern {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout]  93 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub auto_fixable: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ErrorPattern` 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: associated items `detect_language` and `get_suggested_fixes` are never used
[INFO] [stdout]    --> src/watcher/patterns.rs:947:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | impl PatternsDatabase {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 947 |     pub fn detect_language(file_path: &str) -> Language {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 967 |     pub fn get_suggested_fixes(&self, error_type: &ErrorType) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 52s
[INFO] running `Command { std: "docker" "inspect" "028162bc9bd7d19414787f9934a59fc59ee0e7b4c2c35178b1ecc092fd12eb0e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "028162bc9bd7d19414787f9934a59fc59ee0e7b4c2c35178b1ecc092fd12eb0e", kill_on_drop: false }`
[INFO] [stdout] 028162bc9bd7d19414787f9934a59fc59ee0e7b4c2c35178b1ecc092fd12eb0e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9e3aa04817cd877ed88aaeb668bec758d5b3913fba41724f913e3cc89f58fbd7
[INFO] running `Command { std: "docker" "start" "-a" "9e3aa04817cd877ed88aaeb668bec758d5b3913fba41724f913e3cc89f58fbd7", kill_on_drop: false }`
[INFO] [stderr]    Compiling nexus v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> src/context/cache.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::error::Result;
[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: `SearchResult` and `VectorMemory`
[INFO] [stdout]  --> src/context/vector.rs:7:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use crate::memory::semantic::{VectorMemory, SearchResult};
[INFO] [stdout]   |                                   ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/executor/parser.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> src/executor/tools.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]  --> src/executor/tools.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use regex::Regex;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NexusError`
[INFO] [stdout]  --> src/executor/mod.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::error::{NexusError, Result};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ShadowRunResult`
[INFO] [stdout]  --> src/executor/mod.rs:6:38
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::sandbox::{SandboxManager, ShadowRunResult};
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NexusError`
[INFO] [stdout]  --> src/hierarchy.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::error::{NexusError, Result};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CompletionRequest`, `CompletionResponse`, and `Message`
[INFO] [stdout]  --> src/hierarchy.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::providers::{Message, CompletionRequest, CompletionResponse};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::ConfigManager`
[INFO] [stdout]  --> src/hierarchy.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::config::ConfigManager;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::providers::create_provider`
[INFO] [stdout]  --> src/hierarchy.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::providers::create_provider;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/memory/mod.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::time::{SystemTime, Duration};
[INFO] [stdout]    |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]    --> src/memory/mod.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |         use std::path::Path;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/mcp/command_validator.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 |     if (trimmed.contains("> /etc/") || trimmed.contains("> /dev/") || trimmed.contains("> /sys/")
[INFO] [stdout]     |        ^
[INFO] [stdout] 191 |         || trimmed.contains("> /proc/"))
[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] 190 ~     if trimmed.contains("> /etc/") || trimmed.contains("> /dev/") || trimmed.contains("> /sys/")
[INFO] [stdout] 191 ~         || trimmed.contains("> /proc/")
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Role`
[INFO] [stdout]  --> src/providers/openrouter.rs:3:63
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::providers::{CompletionRequest, CompletionResponse, Message, ModelInfo, ModelPricing, Provider, ProviderInfo, Role, Usage};
[INFO] [stdout]   |                                                               ^^^^^^^                                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> src/sandbox/validator.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Command`
[INFO] [stdout]  --> src/sandbox/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::process::Command;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Config` and `Event`
[INFO] [stdout]  --> src/watcher/filesystem.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use notify::{Config, Event, RecommendedWatcher, RecursiveMode, Watcher};
[INFO] [stdout]   |              ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/watcher/filesystem.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::agent::Agent`
[INFO] [stdout]  --> src/watcher/healer.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::agent::Agent;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Child`
[INFO] [stdout]   --> src/watcher/logs.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::process::{Child, Command};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HealingSession` and `HealingStatus`
[INFO] [stdout]   --> src/watcher/mod.rs:49:53
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub use healer::{Healer, HealerConfig, HealerEvent, HealingSession, HealingStatus, ErrorEvent};
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DetectedError`, `ErrorType`, and `PatternsDatabase`
[INFO] [stdout]   --> src/watcher/mod.rs:51:20
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub use patterns::{PatternsDatabase, DetectedError, ErrorType, ErrorSeverity, Language};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `interval`
[INFO] [stdout]   --> src/watcher/mod.rs:61:19
[INFO] [stdout]    |
[INFO] [stdout] 61 | use tokio::time::{interval, Duration};
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Confirm`
[INFO] [stdout]   --> src/main.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | use dialoguer::{Confirm, Input, Select};
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `swarm::SwarmOrchestrator`
[INFO] [stdout]   --> src/main.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use swarm::SwarmOrchestrator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/watcher/healer.rs:793:13
[INFO] [stdout]     |
[INFO] [stdout] 793 |         let mut messages = vec![
[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/watcher/healer.rs:877:13
[INFO] [stdout]     |
[INFO] [stdout] 877 |         let mut messages = vec![
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_content`
[INFO] [stdout]   --> src/context/diff.rs:31:19
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn apply_diff(old_content: &str, diff: &str) -> Result<String> {
[INFO] [stdout]    |                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_content`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/mcp/server.rs:319:5
[INFO] [stdout]     |
[INFO] [stdout] 319 |     state: &ServerState,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handler`
[INFO] [stdout]    --> src/mcp/resources.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let handler = ResourceHandler::new();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_handler`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `timeout_secs`
[INFO] [stdout]    --> src/oauth.rs:161:88
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub fn handle_oauth_callback(provider_name: &str, config: &crate::config::NexusConfig, timeout_secs: u64) -> Result<OAuthToken> {
[INFO] [stdout]     |                                                                                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout_secs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `results`
[INFO] [stdout]    --> src/swarm/merger.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         results: &[SubtaskResult],
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_results`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `merger`
[INFO] [stdout]    --> src/swarm/merger.rs:447:13
[INFO] [stdout]     |
[INFO] [stdout] 447 |         let merger = GitMerger::new(true);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_merger`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session_id`
[INFO] [stdout]    --> src/watcher/healer.rs:834:9
[INFO] [stdout]     |
[INFO] [stdout] 834 |         session_id: &str,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/watcher/healer.rs:733:36
[INFO] [stdout]     |
[INFO] [stdout] 733 |             ErrorEvent::FileChange(e) => Ok(PathBuf::from(".")),
[INFO] [stdout]     |                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `swarm`
[INFO] [stdout]    --> src/watcher/mod.rs:631:39
[INFO] [stdout]     |
[INFO] [stdout] 631 |     pub async fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) -> Result<()> {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_swarm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `healer`
[INFO] [stdout]    --> src/watcher/mod.rs:632:21
[INFO] [stdout]     |
[INFO] [stdout] 632 |         if let Some(ref mut healer) = self.healer {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_healer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ServerInfo` is more private than the item `HttpServerConnection::get_server_info`
[INFO] [stdout]    --> src/mcp/client.rs:405:5
[INFO] [stdout]     |
[INFO] [stdout] 405 |     pub fn get_server_info(&self) -> &ServerInfo {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `HttpServerConnection::get_server_info` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ServerInfo` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/mcp/client.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout]  54 | struct ServerInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `file_tracker` is never used
[INFO] [stdout]   --> src/agent.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Agent {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn file_tracker(&self) -> &FileAccessTracker {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `load` and `add_provider_secure` are never used
[INFO] [stdout]    --> src/config.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout]  95 | impl ConfigManager {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn load() -> Result<NexusConfig> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn add_provider_secure(&mut self, name: String, mut provider: ProviderConfig) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `path`, `content_hash`, and `last_modified` are never read
[INFO] [stdout]   --> src/context/mod.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct FileState {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 17 |     pub path: PathBuf,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     pub content_hash: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 19 |     pub last_modified: SystemTime,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileState` 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: methods `get_diff_only`, `get_file_tree`, and `read_file` are never used
[INFO] [stdout]    --> src/context/mod.rs:109:18
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl ContextManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub async fn get_diff_only(&mut self) -> Result<Vec<FileChange>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub fn get_file_tree(&self) -> Vec<FileEntry> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn read_file(&self, path: &Path) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileChange` is never constructed
[INFO] [stdout]    --> src/context/mod.rs:288:12
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub struct FileChange {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ChangeType` is never used
[INFO] [stdout]    --> src/context/mod.rs:296:10
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub enum ChangeType {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileEntry` is never constructed
[INFO] [stdout]    --> src/context/mod.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 303 | pub struct FileEntry {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileCache` is never constructed
[INFO] [stdout]  --> src/context/cache.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct FileCache {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, `insert`, and `clear` are never used
[INFO] [stdout]   --> src/context/cache.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl FileCache {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn get(&self, path: &PathBuf) -> Option<&String> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn insert(&mut self, path: PathBuf, content: String) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_diff` is never used
[INFO] [stdout]  --> src/context/diff.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn compute_diff(old_content: &str, new_content: &str) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_diff` is never used
[INFO] [stdout]   --> src/context/diff.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn apply_diff(old_content: &str, diff: &str) -> Result<String> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_last_read` and `remove_tracking` are never used
[INFO] [stdout]    --> src/context/file_tracker.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl FileAccessTracker {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn get_last_read(&self, path: &Path) -> Option<SystemTime> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn remove_tracking(&self, path: &Path) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserMemory` is never constructed
[INFO] [stdout]  --> src/context/memory.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct UserMemory {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set`, `get`, `load`, and `save` are never used
[INFO] [stdout]   --> src/context/memory.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl UserMemory {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new(storage_path: PathBuf) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn set(&mut self, key: &str, value: &str) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn get(&self, key: &str) -> Option<&String> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn load(&mut self) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn save(&self) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ProviderNotConfigured` and `UserCancelled` are never constructed
[INFO] [stdout]   --> src/error.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum NexusError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 27 |     ProviderNotConfigured(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     UserCancelled,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NexusError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AgentExecutor` is never constructed
[INFO] [stdout]   --> src/executor/mod.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct AgentExecutor {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `file_tracker`, `set_auto_mode`, `process_response`, and `execute_tool` are never used
[INFO] [stdout]    --> src/executor/mod.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl AgentExecutor {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout]  22 |     pub fn new(working_dir: PathBuf, auto_mode: bool) -> Result<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn file_tracker(&self) -> &FileAccessTracker {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     pub fn set_auto_mode(&mut self, auto_mode: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  42 |     pub async fn process_response(&self, response: &str) -> Result<ExecutionOutcome> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     async fn execute_tool(&self, tool_call: &ToolCall) -> Result<ToolResult> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_tool_calls_from_text` is never used
[INFO] [stdout]    --> src/executor/mod.rs:251:4
[INFO] [stdout]     |
[INFO] [stdout] 251 | fn remove_tool_calls_from_text(text: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExecutionOutcome` is never used
[INFO] [stdout]    --> src/executor/mod.rs:269:10
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub enum ExecutionOutcome {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RunTests` is never constructed
[INFO] [stdout]   --> src/executor/parser.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub enum Action {
[INFO] [stdout]    |          ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 22 |     RunTests {
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Action` 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: fields `shell_regex`, `code_block_regex`, and `file_op_regex` are never read
[INFO] [stdout]   --> src/executor/parser.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct AIParser {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 28 |     shell_regex: Regex,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 29 |     code_block_regex: Regex,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     file_op_regex: Regex,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `detect_test_commands` is never used
[INFO] [stdout]    --> src/executor/parser.rs:158:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl AIParser {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn detect_test_commands(&self, response: &str) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_tool_call` is never used
[INFO] [stdout]    --> src/executor/tools.rs:230:8
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub fn is_tool_call(response: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_tier` is never used
[INFO] [stdout]    --> src/hierarchy.rs:280:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl ModelHierarchy {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub fn get_tier(&self, category: TaskCategory, tier_index: usize) -> Option<&ModelTier> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]    --> src/hierarchy.rs:319:12
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl TaskCategory {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] 319 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `classify_task` is never used
[INFO] [stdout]    --> src/hierarchy.rs:390:8
[INFO] [stdout]     |
[INFO] [stdout] 390 | pub fn classify_task(input: &str, is_scheduled: bool) -> TaskCategory {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `record_interaction` and `remember_procedure` are never used
[INFO] [stdout]    --> src/memory/mod.rs:71:18
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl MemorySystem {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub async fn record_interaction(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub async fn remember_procedure(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `events` and `event_count` are never read
[INFO] [stdout]   --> src/memory/event_store.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct EventStore {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 17 |     storage_path: PathBuf,
[INFO] [stdout] 18 |     events: VecDeque<MemoryEvent>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 19 |     event_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `query_by_type` is never used
[INFO] [stdout]    --> src/memory/event_store.rs:132:18
[INFO] [stdout]     |
[INFO] [stdout]  70 | impl EventStore {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub async fn query_by_type(&self, event_type: &str, limit: usize) -> Result<Vec<MemoryEvent>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relations` is never read
[INFO] [stdout]   --> src/memory/graph.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct GraphMemory {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     relations: Vec<Relation>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_relation`, `get_relations`, and `save_relations` are never used
[INFO] [stdout]    --> src/memory/graph.rs:58:18
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl GraphMemory {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub async fn add_relation(&mut self, relation: Relation) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub async fn get_relations(&self, entity_id: &str) -> Result<Vec<Relation>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     async fn save_relations(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/memory/semantic.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct SearchResult {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 32 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SearchResult` 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: struct `Procedure` is never constructed
[INFO] [stdout]   --> src/memory/types.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Procedure {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `query` and `session_id` are never read
[INFO] [stdout]   --> src/memory/types.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct ContextBundle {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 40 |     pub query: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub session_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContextBundle` 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 `session_id` is never read
[INFO] [stdout]    --> src/memory/types.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub struct MemoryStats {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub session_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MemoryStats` 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: method `format` is never used
[INFO] [stdout]    --> src/memory/types.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl MemoryStats {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] 120 |     pub fn format(&self) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `old_procedures_removed`, `total_size_before`, and `total_size_after` are never read
[INFO] [stdout]   --> src/memory/consolidation.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ConsolidationReport {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub old_procedures_removed: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub total_size_before: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     pub total_size_after: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConsolidationReport` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_priority` is never used
[INFO] [stdout]   --> src/memory/consolidation.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn calculate_priority(event: &MemoryEvent) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Prompt` is never constructed
[INFO] [stdout]   --> src/mcp/mod.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Prompt {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PromptArgument` is never constructed
[INFO] [stdout]   --> src/mcp/mod.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct PromptArgument {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server_running` is never read
[INFO] [stdout]    --> src/mcp/mod.rs:204:9
[INFO] [stdout]     |
[INFO] [stdout] 202 | pub struct McpStatus {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 203 |     pub connected_servers: Vec<String>,
[INFO] [stdout] 204 |     pub server_running: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `McpStatus` 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 `next_request_id` is never read
[INFO] [stdout]   --> src/mcp/client.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct McpClient {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 43 |     next_request_id: Mutex<u64>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `child`, `pending_requests`, and `server_info` are never read
[INFO] [stdout]   --> src/mcp/client.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct ServerConnection {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 48 |     child: Arc<std::sync::Mutex<Child>>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 49 |     pending_requests: Arc<std::sync::Mutex<std::collections::HashMap<u64, tokio::sync::oneshot::Sender<JsonRpcResponse>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 50 |     server_info: ServerInfo,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `server_info` and `capabilities` are never read
[INFO] [stdout]   --> src/mcp/client.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | struct ServerInfo {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 55 |     protocol_version: String,
[INFO] [stdout] 56 |     server_info: ServerMetadata,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 57 |     capabilities: serde_json::Value,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ServerInfo` 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: fields `name` and `version` are never read
[INFO] [stdout]   --> src/mcp/client.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 61 | struct ServerMetadata {
[INFO] [stdout]    |        -------------- fields in this struct
[INFO] [stdout] 62 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 64 |     version: Option<String>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ServerMetadata` 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: method `connect_http` is never used
[INFO] [stdout]    --> src/mcp/client.rs:122:18
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl McpClient {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub async fn connect_http(&self, url: &str) -> Result<HttpServerConnection> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `disconnect` is never used
[INFO] [stdout]    --> src/mcp/client.rs:304:18
[INFO] [stdout]     |
[INFO] [stdout] 240 | impl ServerConnection {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub async fn disconnect(&self) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HttpServerConnection` is never constructed
[INFO] [stdout]    --> src/mcp/client.rs:316:12
[INFO] [stdout]     |
[INFO] [stdout] 316 | pub struct HttpServerConnection {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `list_tools`, `call_tool`, and `get_server_info` are never used
[INFO] [stdout]    --> src/mcp/client.rs:325:18
[INFO] [stdout]     |
[INFO] [stdout] 323 | impl HttpServerConnection {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] 324 |     /// List available tools via HTTP
[INFO] [stdout] 325 |     pub async fn list_tools(&self) -> Result<Vec<Tool>> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 360 |     pub async fn call_tool(&self, tool_name: &str, arguments: serde_json::Value) -> Result<ToolResult> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 405 |     pub fn get_server_info(&self) -> &ServerInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DANGEROUS_SHELL_PATTERNS` is never used
[INFO] [stdout]   --> src/mcp/command_validator.rs:72:7
[INFO] [stdout]    |
[INFO] [stdout] 72 | const DANGEROUS_SHELL_PATTERNS: &[&str] = &[
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `jsonrpc` is never read
[INFO] [stdout]   --> src/mcp/server.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | struct JsonRpcRequest {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 36 |     jsonrpc: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `JsonRpcRequest` 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: struct `InitializeParams` is never constructed
[INFO] [stdout]   --> src/mcp/server.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct InitializeParams {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClientInfo` is never constructed
[INFO] [stdout]   --> src/mcp/server.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct ClientInfo {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `stop`, `register_tool`, `unregister_tool`, and `list_tools` are never used
[INFO] [stdout]    --> src/mcp/server.rs:153:18
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl McpServer {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub async fn stop(&self) -> Result<()> {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub async fn register_tool(&self, tool: Tool) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub async fn unregister_tool(&self, tool_name: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub async fn list_tools(&self) -> Vec<Tool> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResourceData` is never constructed
[INFO] [stdout]   --> src/mcp/resources.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ResourceData {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `subscribe` and `unsubscribe` are never used
[INFO] [stdout]   --> src/mcp/resources.rs:66:18
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ResourceHandler {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub async fn subscribe(&self, _uri: &str) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub async fn unsubscribe(&self, _uri: &str) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResourceReadResult` is never constructed
[INFO] [stdout]    --> src/mcp/resources.rs:285:12
[INFO] [stdout]     |
[INFO] [stdout] 285 | pub struct ResourceReadResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `StreamChunk` is never used
[INFO] [stdout]   --> src/providers/mod.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum StreamChunk {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/providers/mod.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl CompletionResponse {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 71 |     pub fn new(id: String, model: String, content: String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `complete_stream` and `refresh_auth` are never used
[INFO] [stdout]    --> src/providers/mod.rs:133:14
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub trait Provider: Send + Sync {
[INFO] [stdout]     |           -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 133 |     async fn complete_stream(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     async fn refresh_auth(&mut self) -> Result<()>;
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `default_model` is never read
[INFO] [stdout]   --> src/providers/claude.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ClaudeProvider {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     default_model: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `refresh_oauth_token` is never used
[INFO] [stdout]    --> src/providers/claude.rs:191:18
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl ClaudeProvider {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub async fn refresh_oauth_token(&mut self) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_refresh_token` is never used
[INFO] [stdout]    --> src/providers/claude.rs:484:12
[INFO] [stdout]     |
[INFO] [stdout] 483 | impl ClaudeProvider {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] 484 |     pub fn get_refresh_token(&self) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_refresh_token` is never used
[INFO] [stdout]    --> src/providers/google.rs:475:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl GoogleProvider {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 475 |     pub fn get_refresh_token(&self) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModelCapabilities` is never constructed
[INFO] [stdout]  --> src/providers/model_capabilities.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ModelCapabilities {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]   --> src/providers/model_capabilities.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ModelCapabilities {
[INFO] [stdout]    | ---------------------- associated functions in this implementation
[INFO] [stdout] 20 |     pub fn get_all() -> &'static [ModelCapabilities] {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn get_by_id(id: &str) -> Option<&'static ModelCapabilities> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn filter_by_provider(provider: &str) -> Vec<&'static ModelCapabilities> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn rank_for_heartbeat(models: &[String]) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn rank_for_planning(models: &[String]) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn rank_for_coding(models: &[String]) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn rank_for_review(models: &[String]) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rank_by_score` is never used
[INFO] [stdout]   --> src/providers/model_capabilities.rs:61:4
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn rank_by_score<F>(models: &[String], score_fn: F) -> Vec<String>
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MODEL_RANKINGS` is never used
[INFO] [stdout]   --> src/providers/model_capabilities.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | static MODEL_RANKINGS: Lazy<Vec<ModelCapabilities>> = Lazy::new(|| {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `default_model` is never read
[INFO] [stdout]   --> src/providers/opencode.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct OpencodeProvider {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     default_model: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `default_model` is never read
[INFO] [stdout]   --> src/providers/openrouter.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct OpenRouterProvider {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     default_model: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fetch_available_models` is never used
[INFO] [stdout]   --> src/providers/openrouter.rs:57:18
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl OpenRouterProvider {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub async fn fetch_available_models(&self) -> Result<Vec<String>> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `operation` and `path` are never read
[INFO] [stdout]   --> src/sandbox/mod.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |     FileSystem { operation: FileOp, path: PathBuf },
[INFO] [stdout]    |     ----------   ^^^^^^^^^          ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CommandType` 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: fields `command` and `args` are never read
[INFO] [stdout]   --> src/sandbox/mod.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Shell { command: String, args: Vec<String> },
[INFO] [stdout]    |     -----   ^^^^^^^          ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CommandType` 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: fields `manager`, `action`, and `packages` are never read
[INFO] [stdout]   --> src/sandbox/mod.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Package { manager: PackageManager, action: PackageAction, packages: Vec<String> },
[INFO] [stdout]    |     -------   ^^^^^^^                  ^^^^^^                 ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CommandType` 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 `to` is never read
[INFO] [stdout]   --> src/sandbox/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Move { to: PathBuf },
[INFO] [stdout]    |     ----   ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileOp` 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 `to` is never read
[INFO] [stdout]   --> src/sandbox/mod.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 |     Copy { to: PathBuf },
[INFO] [stdout]    |     ----   ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileOp` 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: variants `Read` and `Write` are never constructed
[INFO] [stdout]   --> src/sandbox/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum FileOp {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] 18 |     Read,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 19 |     Write,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileOp` 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: variants `Apt` and `Brew` are never constructed
[INFO] [stdout]   --> src/sandbox/mod.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum PackageManager {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 31 |     Apt,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 32 |     Brew,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PackageManager` 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 `container_id` is never read
[INFO] [stdout]   --> src/sandbox/docker.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct DockerResult {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub container_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DockerResult` 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: method `cleanup` is never used
[INFO] [stdout]    --> src/sandbox/docker.rs:173:18
[INFO] [stdout]     |
[INFO] [stdout]  19 | impl DockerSandbox {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub async fn cleanup(&self, container_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `backup_path` is never read
[INFO] [stdout]   --> src/sandbox/hydration.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct FileChange {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub backup_path: Option<PathBuf>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileChange` 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 `backup_dir` is never read
[INFO] [stdout]   --> src/sandbox/hydration.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Hydrator {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 22 |     backup_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `create_plan`, `walk_sandbox`, `rollback`, `should_backup`, `create_backup`, and `cleanup_old_backups` are never used
[INFO] [stdout]    --> src/sandbox/hydration.rs:33:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Hydrator {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn create_plan(&self, sandbox_dir: &Path, host_dir: &Path) -> Result<HydrationPlan> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  47 |     fn walk_sandbox(
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn rollback(&self, plan: &HydrationPlan) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn should_backup(&self, path: &Path) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     fn create_backup(&self, original: &Path) -> Result<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn cleanup_old_backups(&self, max_age_hours: u64) -> Result<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `checks` and `warnings` are never read
[INFO] [stdout]  --> src/sandbox/validator.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ValidationResult {
[INFO] [stdout]   |            ---------------- fields in this struct
[INFO] [stdout] 6 |     pub passed: bool,
[INFO] [stdout] 7 |     pub checks: Vec<ValidationCheck>,
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 8 |     pub warnings: Vec<String>,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ValidationResult` 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 `message` is never read
[INFO] [stdout]   --> src/sandbox/validator.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ValidationCheck {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub message: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValidationCheck` 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: methods `enable_check`, `disable_check`, and `validate_file_changes` are never used
[INFO] [stdout]    --> src/sandbox/validator.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl Validator {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn enable_check(&mut self, check_name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn disable_check(&mut self, check_name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn validate_file_changes(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_secret` is never used
[INFO] [stdout]   --> src/secret_store.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn delete_secret(key_name: &str) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_context` is never used
[INFO] [stdout]   --> src/swarm/mod.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl SwarmTask {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn with_context(mut self, context: impl Into<String>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `task_id` and `execution_time_ms` are never read
[INFO] [stdout]   --> src/swarm/mod.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct SwarmResult {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 70 |     pub task_id: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub execution_time_ms: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SwarmResult` 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 `execution_time_ms` is never read
[INFO] [stdout]   --> src/swarm/mod.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct SubtaskResult {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub execution_time_ms: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SubtaskResult` 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: fields `file_path`, `worker_a`, and `worker_b` are never read
[INFO] [stdout]   --> src/swarm/mod.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct MergeConflict {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 92 |     pub file_path: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 93 |     pub worker_a: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 94 |     pub worker_b: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MergeConflict` 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: variant `Skipped` is never constructed
[INFO] [stdout]    --> src/swarm/mod.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub enum ConflictResolution {
[INFO] [stdout]     |          ------------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 102 |     Skipped,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictResolution` 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: fields `active_tasks`, `provider`, and `model` are never read
[INFO] [stdout]    --> src/swarm/mod.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct SwarmOrchestrator {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 112 |     active_tasks: Arc<RwLock<HashMap<String, TaskHandle>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 113 |     provider: Arc<dyn Provider + Send + Sync>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 114 |     model: String,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `task_id`, `status`, and `start_time` are never read
[INFO] [stdout]    --> src/swarm/mod.rs:118:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct TaskHandle {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 118 |     task_id: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 119 |     status: TaskStatus,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 120 |     start_time: std::time::Instant,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_active_tasks` and `cancel_task` are never used
[INFO] [stdout]    --> src/swarm/mod.rs:395:18
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl SwarmOrchestrator {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub async fn get_active_tasks(&self) -> Vec<(String, TaskStatus)> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 |     pub async fn cancel_task(&self, task_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InProgress`, `Completed`, `Failed`, and `Cancelled` are never constructed
[INFO] [stdout]   --> src/swarm/architect.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum TaskStatus {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 11 |     Pending,
[INFO] [stdout] 12 |     InProgress,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 13 |     Completed,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 14 |     Failed(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 15 |     Cancelled,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TaskStatus` 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: fields `worker_type_hint` and `status` are never read
[INFO] [stdout]   --> src/swarm/architect.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Task {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub worker_type_hint: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub status: TaskStatus,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Task` 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: method `find_critical_path` is never used
[INFO] [stdout]    --> src/swarm/architect.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout]  53 | impl ArchitectAgent {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn find_critical_path(&self, tasks: &[Task]) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/swarm/merger.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout]  13 | impl GitMerger {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn create_backup(&self, file_path: &str) -> Result<PathBuf> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn restore_backup(&self, file_path: &str, backup_path: &Path) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn generate_conflict_report(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn init_git_tracking(&self, working_dir: &Path) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn commit_worker_changes(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn merge_commits(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub fn get_conflict_files(&self, working_dir: &Path) -> Result<Vec<String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn abort_merge(&self, working_dir: &Path) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MergeResult` is never used
[INFO] [stdout]    --> src/swarm/merger.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 | pub enum MergeResult {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stage_number` is never read
[INFO] [stdout]  --> src/swarm/scheduler.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ExecutionStage {
[INFO] [stdout]   |            -------------- field in this struct
[INFO] [stdout] 8 |     pub stage_number: usize,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ExecutionStage` 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 `total_tasks` is never read
[INFO] [stdout]   --> src/swarm/scheduler.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct ExecutionPlan {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 15 |     pub stages: Vec<ExecutionStage>,
[INFO] [stdout] 16 |     pub total_tasks: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExecutionPlan` 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: methods `get_dependency_order`, `is_ready`, and `get_ready_tasks` are never used
[INFO] [stdout]    --> src/swarm/scheduler.rs:258:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Scheduler {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 258 |     pub fn get_dependency_order(&self, task: &Task, all_tasks: &[Task]) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 296 |     pub fn is_ready(&self, task: &Task, completed: &HashSet<String>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn get_ready_tasks<'a>(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]   --> src/swarm/worker.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl WorkerType {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 26 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `task_id` and `tests_passed` are never read
[INFO] [stdout]   --> src/swarm/worker.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct WorkerResult {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 46 |     pub task_id: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub tests_passed: Option<bool>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WorkerResult` 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 `max_concurrent_healing` is never read
[INFO] [stdout]   --> src/watcher/mod.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct WatcherEngineConfig {
[INFO] [stdout]    |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub max_concurrent_healing: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WatcherEngineConfig` 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: multiple fields are never read
[INFO] [stdout]    --> src/watcher/mod.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct ProjectWatcher {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 102 |     pub id: String,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 103 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 104 |     pub path: PathBuf,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 105 |     pub project_type: Option<String>,
[INFO] [stdout] 106 |     pub file_watcher_enabled: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 107 |     pub log_monitoring_enabled: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 108 |     pub auto_healing_enabled: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 109 |     pub custom_patterns: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ProjectWatcher` 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: fields `file_change_tx`, `log_error_tx`, `healer_event_tx`, and `memory` are never read
[INFO] [stdout]    --> src/watcher/mod.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub struct WatcherEngine {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 135 |     file_change_tx: mpsc::Sender<FileChangeEvent>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 136 |     file_change_rx: Arc<RwLock<mpsc::Receiver<FileChangeEvent>>>,
[INFO] [stdout] 137 |     log_error_tx: mpsc::Sender<LogErrorEvent>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 138 |     log_error_rx: Arc<RwLock<mpsc::Receiver<LogErrorEvent>>>,
[INFO] [stdout] 139 |     healer_event_tx: mpsc::Sender<HealerEvent>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     memory: Arc<RwLock<MemorySystem>>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_project`, `monitor_dev_server`, `get_projects`, `set_swarm`, and `update_config` are never used
[INFO] [stdout]    --> src/watcher/mod.rs:526:18
[INFO] [stdout]     |
[INFO] [stdout] 152 | impl WatcherEngine {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 526 |     pub async fn remove_project(&self, project_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 560 |     pub async fn monitor_dev_server(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 611 |     pub async fn get_projects(&self) -> Vec<ProjectWatcher> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 631 |     pub async fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 641 |     pub async fn update_config(&mut self, new_config: WatcherEngineConfig) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_default_engine` is never used
[INFO] [stdout]    --> src/watcher/mod.rs:664:14
[INFO] [stdout]     |
[INFO] [stdout] 664 | pub async fn create_default_engine(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_desktop_notification` is never used
[INFO] [stdout]    --> src/watcher/mod.rs:688:8
[INFO] [stdout]     |
[INFO] [stdout] 688 | pub fn send_desktop_notification(title: &str, message: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timestamp` and `should_lint` are never read
[INFO] [stdout]    --> src/watcher/filesystem.rs:99:9
[INFO] [stdout]     |
[INFO] [stdout]  97 | pub struct FileChangeEvent {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout]  98 |     pub project_id: String,
[INFO] [stdout]  99 |     pub timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub should_lint: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileChangeEvent` 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: variant `Renamed` is never constructed
[INFO] [stdout]    --> src/watcher/filesystem.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub enum ChangeType {
[INFO] [stdout]     |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 114 |     Renamed(PathBuf), // Contains the old path
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChangeType` 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: struct `WatcherStats` is never constructed
[INFO] [stdout]    --> src/watcher/filesystem.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct WatcherStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_project`, `stop_watching`, and `get_stats` are never used
[INFO] [stdout]    --> src/watcher/filesystem.rs:169:18
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl FileSystemWatcher {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub async fn remove_project(&self, project_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     async fn stop_watching(&self, project_id: &str) {
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub async fn get_stats(&self) -> WatcherStats {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `start_time` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct HealingSession {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 27 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub start_time: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HealingSession` 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 `output` is never read
[INFO] [stdout]   --> src/watcher/healer.rs:42:41
[INFO] [stdout]    |
[INFO] [stdout] 42 |     BuildError { project_path: PathBuf, output: String },
[INFO] [stdout]    |     ---------- field in this variant    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ErrorEvent` 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: variant `TestFailure` is never constructed
[INFO] [stdout]   --> src/watcher/healer.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub enum ErrorEvent {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 43 |     TestFailure { project_path: PathBuf, test_name: String, output: String },
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ErrorEvent` 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: variant `Failed` is never constructed
[INFO] [stdout]   --> src/watcher/healer.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub enum HealingStatus {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 55 |     Failed(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HealingStatus` 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: fields `relevant_procedures` and `root_cause` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct InvestigationResult {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 61 |     pub similar_past_errors: Vec<MemoryResult>,
[INFO] [stdout] 62 |     pub relevant_procedures: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub root_cause: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InvestigationResult` 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: fields `id`, `shadow_run_result`, `was_applied`, and `verification_result` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct FixAttempt {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 71 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 72 |     pub description: String,
[INFO] [stdout] 73 |     pub shadow_run_result: ShadowRunResult,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 74 |     pub hydration_plan: Option<HydrationPlan>,
[INFO] [stdout] 75 |     pub was_applied: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 76 |     pub verification_result: Option<VerificationResult>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FixAttempt` 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: fields `test_output` and `new_errors` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct VerificationResult {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 82 |     pub success: bool,
[INFO] [stdout] 83 |     pub test_output: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 84 |     pub error_resolved: bool,
[INFO] [stdout] 85 |     pub new_errors: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VerificationResult` 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: fields `fix_success_rate` and `tags` are never read
[INFO] [stdout]   --> src/watcher/healer.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct LearningEntry {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 95 |     fix_success_rate: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |     #[serde(skip)]
[INFO] [stdout] 97 |     tags: Vec<String>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LearningEntry` 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: fields `auto_apply_simple_fixes`, `max_fix_attempts`, and `verify_timeout_secs` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct HealerConfig {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 103 |     pub auto_apply_simple_fixes: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 104 |     pub max_fix_attempts: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 105 |     pub verify_timeout_secs: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerConfig` 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: fields `session_id` and `error_summary` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:143:22
[INFO] [stdout]     |
[INFO] [stdout] 143 |     SessionStarted { session_id: String, error_summary: String },
[INFO] [stdout]     |     --------------   ^^^^^^^^^^          ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id` and `analysis` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:144:29
[INFO] [stdout]     |
[INFO] [stdout] 144 |     InvestigationComplete { session_id: String, analysis: String },
[INFO] [stdout]     |     ---------------------   ^^^^^^^^^^          ^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id` and `fix_description` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:145:20
[INFO] [stdout]     |
[INFO] [stdout] 145 |     FixGenerated { session_id: String, fix_description: String },
[INFO] [stdout]     |     ------------   ^^^^^^^^^^          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id`, `success`, and `output` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:146:25
[INFO] [stdout]     |
[INFO] [stdout] 146 |     ShadowRunComplete { session_id: String, success: bool, output: String },
[INFO] [stdout]     |     -----------------   ^^^^^^^^^^          ^^^^^^^        ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id` and `files_modified` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:147:18
[INFO] [stdout]     |
[INFO] [stdout] 147 |     FixApplied { session_id: String, files_modified: Vec<String> },
[INFO] [stdout]     |     ----------   ^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: fields `session_id`, `success`, and `error_resolved` are never read
[INFO] [stdout]    --> src/watcher/healer.rs:148:28
[INFO] [stdout]     |
[INFO] [stdout] 148 |     VerificationComplete { session_id: String, success: bool, error_resolved: bool },
[INFO] [stdout]     |     --------------------   ^^^^^^^^^^          ^^^^^^^        ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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 `session_id` is never read
[INFO] [stdout]    --> src/watcher/healer.rs:149:23
[INFO] [stdout]     |
[INFO] [stdout] 149 |     SessionComplete { session_id: String, success: bool },
[INFO] [stdout]     |     ---------------   ^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HealerEvent` 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: methods `set_swarm`, `generate_fix_with_ai`, and `extract_root_cause` are never used
[INFO] [stdout]     --> src/watcher/healer.rs:176:12
[INFO] [stdout]      |
[INFO] [stdout]  153 | impl Healer {
[INFO] [stdout]      | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  176 |     pub fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) {
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1065 |     async fn generate_fix_with_ai(
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1130 |     fn extract_root_cause(&self, analysis: &str) -> Option<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `language_hint` and `enabled` are never read
[INFO] [stdout]   --> src/watcher/logs.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct LogSource {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub language_hint: Option<Language>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 25 |     pub enabled: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogSource` 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 `name` is never read
[INFO] [stdout]   --> src/watcher/logs.rs:36:14
[INFO] [stdout]    |
[INFO] [stdout] 36 |     Stream { name: String },
[INFO] [stdout]    |     ------   ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogSourceType` 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: variant `Process` is never constructed
[INFO] [stdout]   --> src/watcher/logs.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum LogSourceType {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 34 |     Process { command: String, args: Vec<String> },
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogSourceType` 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: fields `timestamp`, `raw_log_line`, and `context_lines` are never read
[INFO] [stdout]   --> src/watcher/logs.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct LogErrorEvent {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 42 |     pub source_id: String,
[INFO] [stdout] 43 |     pub timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 44 |     pub detected_error: DetectedError,
[INFO] [stdout] 45 |     pub raw_log_line: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 46 |     pub context_lines: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogErrorEvent` 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: struct `LogMonitorStats` is never constructed
[INFO] [stdout]   --> src/watcher/logs.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct LogMonitorStats {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_source`, `set_source_enabled`, `process_log_line`, and `get_stats` are never used
[INFO] [stdout]    --> src/watcher/logs.rs:393:18
[INFO] [stdout]     |
[INFO] [stdout]  85 | impl LogMonitor {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 393 |     pub async fn remove_source(&self, source_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 428 |     pub async fn set_source_enabled(&self, source_id: &str, _enabled: bool) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 445 |     pub async fn process_log_line(&self, source_id: &str, line: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 491 |     pub async fn get_stats(&self) -> LogMonitorStats {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `JsUndefinedVariable`, `TsMissingType`, `MemoryError`, and `Unknown` are never constructed
[INFO] [stdout]   --> src/watcher/patterns.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum ErrorType {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 37 |     JsUndefinedVariable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 38 |     TsTypeMismatch,
[INFO] [stdout] 39 |     TsMissingType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     MemoryError,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ErrorType` 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 `language` is never read
[INFO] [stdout]   --> src/watcher/patterns.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct ErrorHandler {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 75 |     pub language: Language,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `auto_fixable` are never read
[INFO] [stdout]    --> src/watcher/patterns.rs:93:9
[INFO] [stdout]     |
[INFO] [stdout]  92 | pub struct ErrorPattern {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout]  93 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub auto_fixable: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ErrorPattern` 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: method `get_suggested_fixes` is never used
[INFO] [stdout]    --> src/watcher/patterns.rs:967:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | impl PatternsDatabase {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 967 |     pub fn get_suggested_fixes(&self, error_type: &ErrorType) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 13.79s
[INFO] running `Command { std: "docker" "inspect" "9e3aa04817cd877ed88aaeb668bec758d5b3913fba41724f913e3cc89f58fbd7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9e3aa04817cd877ed88aaeb668bec758d5b3913fba41724f913e3cc89f58fbd7", kill_on_drop: false }`
[INFO] [stdout] 9e3aa04817cd877ed88aaeb668bec758d5b3913fba41724f913e3cc89f58fbd7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4086a268b4adf9c601becd0f8e31101ac576100e5bdb40643e9b64e1a208ed10
[INFO] running `Command { std: "docker" "start" "-a" "4086a268b4adf9c601becd0f8e31101ac576100e5bdb40643e9b64e1a208ed10", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `crate::error::Result`
[INFO] [stderr]  --> src/context/cache.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::error::Result;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `SearchResult` and `VectorMemory`
[INFO] [stderr]  --> src/context/vector.rs:7:35
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub use crate::memory::semantic::{VectorMemory, SearchResult};
[INFO] [stderr]   |                                   ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/executor/parser.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::error::Result`
[INFO] [stderr]  --> src/executor/tools.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::error::Result;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `regex::Regex`
[INFO] [stderr]  --> src/executor/tools.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use regex::Regex;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `NexusError`
[INFO] [stderr]  --> src/executor/mod.rs:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::error::{NexusError, Result};
[INFO] [stderr]   |                    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ShadowRunResult`
[INFO] [stderr]  --> src/executor/mod.rs:6:38
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::sandbox::{SandboxManager, ShadowRunResult};
[INFO] [stderr]   |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `NexusError`
[INFO] [stderr]  --> src/hierarchy.rs:2:20
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::error::{NexusError, Result};
[INFO] [stderr]   |                    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CompletionRequest`, `CompletionResponse`, and `Message`
[INFO] [stderr]  --> src/hierarchy.rs:3:24
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::providers::{Message, CompletionRequest, CompletionResponse};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::config::ConfigManager`
[INFO] [stderr]  --> src/hierarchy.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::config::ConfigManager;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::providers::create_provider`
[INFO] [stderr]  --> src/hierarchy.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::providers::create_provider;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Duration`
[INFO] [stderr]   --> src/memory/mod.rs:18:29
[INFO] [stderr]    |
[INFO] [stderr] 18 | use std::time::{SystemTime, Duration};
[INFO] [stderr]    |                             ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::Path`
[INFO] [stderr]    --> src/memory/mod.rs:270:13
[INFO] [stderr]     |
[INFO] [stderr] 270 |         use std::path::Path;
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/mcp/command_validator.rs:190:8
[INFO] [stderr]     |
[INFO] [stderr] 190 |     if (trimmed.contains("> /etc/") || trimmed.contains("> /dev/") || trimmed.contains("> /sys/")
[INFO] [stderr]     |        ^
[INFO] [stderr] 191 |         || trimmed.contains("> /proc/"))
[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] 190 ~     if trimmed.contains("> /etc/") || trimmed.contains("> /dev/") || trimmed.contains("> /sys/")
[INFO] [stderr] 191 ~         || trimmed.contains("> /proc/")
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Message` and `Role`
[INFO] [stderr]  --> src/providers/openrouter.rs:3:63
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::providers::{CompletionRequest, CompletionResponse, Message, ModelInfo, ModelPricing, Provider, ProviderInfo, Role, Usage};
[INFO] [stderr]   |                                                               ^^^^^^^                                                   ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::error::Result`
[INFO] [stderr]  --> src/sandbox/validator.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::error::Result;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::process::Command`
[INFO] [stderr]  --> src/sandbox/mod.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::process::Command;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Config` and `Event`
[INFO] [stderr]  --> src/watcher/filesystem.rs:7:14
[INFO] [stderr]   |
[INFO] [stderr] 7 | use notify::{Config, Event, RecommendedWatcher, RecursiveMode, Watcher};
[INFO] [stderr]   |              ^^^^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashSet`
[INFO] [stderr]  --> src/watcher/filesystem.rs:9:33
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::agent::Agent`
[INFO] [stderr]  --> src/watcher/healer.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::agent::Agent;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Child`
[INFO] [stderr]   --> src/watcher/logs.rs:12:22
[INFO] [stderr]    |
[INFO] [stderr] 12 | use tokio::process::{Child, Command};
[INFO] [stderr]    |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HealingSession` and `HealingStatus`
[INFO] [stderr]   --> src/watcher/mod.rs:49:53
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub use healer::{Healer, HealerConfig, HealerEvent, HealingSession, HealingStatus, ErrorEvent};
[INFO] [stderr]    |                                                     ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DetectedError`, `ErrorType`, and `PatternsDatabase`
[INFO] [stderr]   --> src/watcher/mod.rs:51:20
[INFO] [stderr]    |
[INFO] [stderr] 51 | pub use patterns::{PatternsDatabase, DetectedError, ErrorType, ErrorSeverity, Language};
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `interval`
[INFO] [stderr]   --> src/watcher/mod.rs:61:19
[INFO] [stderr]    |
[INFO] [stderr] 61 | use tokio::time::{interval, Duration};
[INFO] [stderr]    |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Confirm`
[INFO] [stderr]   --> src/main.rs:20:17
[INFO] [stderr]    |
[INFO] [stderr] 20 | use dialoguer::{Confirm, Input, Select};
[INFO] [stderr]    |                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `swarm::SwarmOrchestrator`
[INFO] [stderr]   --> src/main.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | use swarm::SwarmOrchestrator;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/watcher/healer.rs:793:13
[INFO] [stderr]     |
[INFO] [stderr] 793 |         let mut messages = vec![
[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/watcher/healer.rs:877:13
[INFO] [stderr]     |
[INFO] [stderr] 877 |         let mut messages = vec![
[INFO] [stderr]     |             ----^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `old_content`
[INFO] [stderr]   --> src/context/diff.rs:31:19
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub fn apply_diff(old_content: &str, diff: &str) -> Result<String> {
[INFO] [stderr]    |                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_content`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `state`
[INFO] [stderr]    --> src/mcp/server.rs:319:5
[INFO] [stderr]     |
[INFO] [stderr] 319 |     state: &ServerState,
[INFO] [stderr]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `handler`
[INFO] [stderr]    --> src/mcp/resources.rs:303:13
[INFO] [stderr]     |
[INFO] [stderr] 303 |         let handler = ResourceHandler::new();
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_handler`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timeout_secs`
[INFO] [stderr]    --> src/oauth.rs:161:88
[INFO] [stderr]     |
[INFO] [stderr] 161 | pub fn handle_oauth_callback(provider_name: &str, config: &crate::config::NexusConfig, timeout_secs: u64) -> Result<OAuthToken> {
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout_secs`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `results`
[INFO] [stderr]    --> src/swarm/merger.rs:154:9
[INFO] [stderr]     |
[INFO] [stderr] 154 |         results: &[SubtaskResult],
[INFO] [stderr]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_results`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `merger`
[INFO] [stderr]    --> src/swarm/merger.rs:447:13
[INFO] [stderr]     |
[INFO] [stderr] 447 |         let merger = GitMerger::new(true);
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_merger`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `session_id`
[INFO] [stderr]    --> src/watcher/healer.rs:834:9
[INFO] [stderr]     |
[INFO] [stderr] 834 |         session_id: &str,
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/watcher/healer.rs:733:36
[INFO] [stderr]     |
[INFO] [stderr] 733 |             ErrorEvent::FileChange(e) => Ok(PathBuf::from(".")),
[INFO] [stderr]     |                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `swarm`
[INFO] [stderr]    --> src/watcher/mod.rs:631:39
[INFO] [stderr]     |
[INFO] [stderr] 631 |     pub async fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) -> Result<()> {
[INFO] [stderr]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_swarm`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `healer`
[INFO] [stderr]    --> src/watcher/mod.rs:632:21
[INFO] [stderr]     |
[INFO] [stderr] 632 |         if let Some(ref mut healer) = self.healer {
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_healer`
[INFO] [stderr] 
[INFO] [stderr] warning: type `ServerInfo` is more private than the item `HttpServerConnection::get_server_info`
[INFO] [stderr]    --> src/mcp/client.rs:405:5
[INFO] [stderr]     |
[INFO] [stderr] 405 |     pub fn get_server_info(&self) -> &ServerInfo {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `HttpServerConnection::get_server_info` is reachable at visibility `pub(crate)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `ServerInfo` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/mcp/client.rs:54:1
[INFO] [stderr]     |
[INFO] [stderr]  54 | struct ServerInfo {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `file_tracker` is never used
[INFO] [stderr]   --> src/agent.rs:34:12
[INFO] [stderr]    |
[INFO] [stderr] 23 | impl Agent {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 34 |     pub fn file_tracker(&self) -> &FileAccessTracker {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `load` and `add_provider_secure` are never used
[INFO] [stderr]    --> src/config.rs:106:12
[INFO] [stderr]     |
[INFO] [stderr]  95 | impl ConfigManager {
[INFO] [stderr]     | ------------------ associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 106 |     pub fn load() -> Result<NexusConfig> {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 144 |     pub fn add_provider_secure(&mut self, name: String, mut provider: ProviderConfig) -> Result<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `path`, `content_hash`, and `last_modified` are never read
[INFO] [stderr]   --> src/context/mod.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct FileState {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 17 |     pub path: PathBuf,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 18 |     pub content_hash: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 19 |     pub last_modified: SystemTime,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FileState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_diff_only`, `get_file_tree`, and `read_file` are never used
[INFO] [stderr]    --> src/context/mod.rs:109:18
[INFO] [stderr]     |
[INFO] [stderr]  35 | impl ContextManager {
[INFO] [stderr]     | ------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 109 |     pub async fn get_diff_only(&mut self) -> Result<Vec<FileChange>> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 207 |     pub fn get_file_tree(&self) -> Vec<FileEntry> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 218 |     pub fn read_file(&self, path: &Path) -> Result<String> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FileChange` is never constructed
[INFO] [stderr]    --> src/context/mod.rs:288:12
[INFO] [stderr]     |
[INFO] [stderr] 288 | pub struct FileChange {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `ChangeType` is never used
[INFO] [stderr]    --> src/context/mod.rs:296:10
[INFO] [stderr]     |
[INFO] [stderr] 296 | pub enum ChangeType {
[INFO] [stderr]     |          ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FileEntry` is never constructed
[INFO] [stderr]    --> src/context/mod.rs:303:12
[INFO] [stderr]     |
[INFO] [stderr] 303 | pub struct FileEntry {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FileCache` is never constructed
[INFO] [stderr]  --> src/context/cache.rs:7:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct FileCache {
[INFO] [stderr]   |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `get`, `insert`, and `clear` are never used
[INFO] [stderr]   --> src/context/cache.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | impl FileCache {
[INFO] [stderr]    | -------------- associated items in this implementation
[INFO] [stderr] 13 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     pub fn get(&self, path: &PathBuf) -> Option<&String> {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     pub fn insert(&mut self, path: PathBuf, content: String) {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 34 |     pub fn clear(&mut self) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `compute_diff` is never used
[INFO] [stderr]  --> src/context/diff.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn compute_diff(old_content: &str, new_content: &str) -> String {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `apply_diff` is never used
[INFO] [stderr]   --> src/context/diff.rs:31:8
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub fn apply_diff(old_content: &str, diff: &str) -> Result<String> {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_last_read` and `remove_tracking` are never used
[INFO] [stderr]    --> src/context/file_tracker.rs:131:12
[INFO] [stderr]     |
[INFO] [stderr]  23 | impl FileAccessTracker {
[INFO] [stderr]     | ---------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 131 |     pub fn get_last_read(&self, path: &Path) -> Option<SystemTime> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 141 |     pub fn remove_tracking(&self, path: &Path) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `UserMemory` is never constructed
[INFO] [stderr]  --> src/context/memory.rs:7:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct UserMemory {
[INFO] [stderr]   |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `set`, `get`, `load`, and `save` are never used
[INFO] [stderr]   --> src/context/memory.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | impl UserMemory {
[INFO] [stderr]    | --------------- associated items in this implementation
[INFO] [stderr] 13 |     pub fn new(storage_path: PathBuf) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 21 |     pub fn set(&mut self, key: &str, value: &str) {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 26 |     pub fn get(&self, key: &str) -> Option<&String> {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 31 |     pub fn load(&mut self) -> Result<()> {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 44 |     pub fn save(&self) -> Result<()> {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `ProviderNotConfigured` and `UserCancelled` are never constructed
[INFO] [stderr]   --> src/error.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr]  4 | pub enum NexusError {
[INFO] [stderr]    |          ---------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 27 |     ProviderNotConfigured(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 33 |     UserCancelled,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `NexusError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AgentExecutor` is never constructed
[INFO] [stderr]   --> src/executor/mod.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct AgentExecutor {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `file_tracker`, `set_auto_mode`, `process_response`, and `execute_tool` are never used
[INFO] [stderr]    --> src/executor/mod.rs:22:12
[INFO] [stderr]     |
[INFO] [stderr]  21 | impl AgentExecutor {
[INFO] [stderr]     | ------------------ associated items in this implementation
[INFO] [stderr]  22 |     pub fn new(working_dir: PathBuf, auto_mode: bool) -> Result<Self> {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  33 |     pub fn file_tracker(&self) -> &FileAccessTracker {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  37 |     pub fn set_auto_mode(&mut self, auto_mode: bool) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  42 |     pub async fn process_response(&self, response: &str) -> Result<ExecutionOutcome> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 109 |     async fn execute_tool(&self, tool_call: &ToolCall) -> Result<ToolResult> {
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `remove_tool_calls_from_text` is never used
[INFO] [stderr]    --> src/executor/mod.rs:251:4
[INFO] [stderr]     |
[INFO] [stderr] 251 | fn remove_tool_calls_from_text(text: &str) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `ExecutionOutcome` is never used
[INFO] [stderr]    --> src/executor/mod.rs:269:10
[INFO] [stderr]     |
[INFO] [stderr] 269 | pub enum ExecutionOutcome {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RunTests` is never constructed
[INFO] [stderr]   --> src/executor/parser.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr]  6 | pub enum Action {
[INFO] [stderr]    |          ------ variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 22 |     RunTests {
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Action` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `shell_regex`, `code_block_regex`, and `file_op_regex` are never read
[INFO] [stderr]   --> src/executor/parser.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub struct AIParser {
[INFO] [stderr]    |            -------- fields in this struct
[INFO] [stderr] 28 |     shell_regex: Regex,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 29 |     code_block_regex: Regex,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 30 |     file_op_regex: Regex,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `detect_test_commands` is never used
[INFO] [stderr]    --> src/executor/parser.rs:158:12
[INFO] [stderr]     |
[INFO] [stderr]  33 | impl AIParser {
[INFO] [stderr]     | ------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 158 |     pub fn detect_test_commands(&self, response: &str) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_tool_call` is never used
[INFO] [stderr]    --> src/executor/tools.rs:230:8
[INFO] [stderr]     |
[INFO] [stderr] 230 | pub fn is_tool_call(response: &str) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_tier` is never used
[INFO] [stderr]    --> src/hierarchy.rs:280:12
[INFO] [stderr]     |
[INFO] [stderr]  33 | impl ModelHierarchy {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 280 |     pub fn get_tier(&self, category: TaskCategory, tier_index: usize) -> Option<&ModelTier> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `as_str` is never used
[INFO] [stderr]    --> src/hierarchy.rs:319:12
[INFO] [stderr]     |
[INFO] [stderr] 318 | impl TaskCategory {
[INFO] [stderr]     | ----------------- method in this implementation
[INFO] [stderr] 319 |     pub fn as_str(&self) -> &'static str {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `classify_task` is never used
[INFO] [stderr]    --> src/hierarchy.rs:390:8
[INFO] [stderr]     |
[INFO] [stderr] 390 | pub fn classify_task(input: &str, is_scheduled: bool) -> TaskCategory {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `record_interaction` and `remember_procedure` are never used
[INFO] [stderr]    --> src/memory/mod.rs:71:18
[INFO] [stderr]     |
[INFO] [stderr]  34 | impl MemorySystem {
[INFO] [stderr]     | ----------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  71 |     pub async fn record_interaction(
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 137 |     pub async fn remember_procedure(
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `events` and `event_count` are never read
[INFO] [stderr]   --> src/memory/event_store.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct EventStore {
[INFO] [stderr]    |            ---------- fields in this struct
[INFO] [stderr] 17 |     storage_path: PathBuf,
[INFO] [stderr] 18 |     events: VecDeque<MemoryEvent>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 19 |     event_count: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `query_by_type` is never used
[INFO] [stderr]    --> src/memory/event_store.rs:132:18
[INFO] [stderr]     |
[INFO] [stderr]  70 | impl EventStore {
[INFO] [stderr]     | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 132 |     pub async fn query_by_type(&self, event_type: &str, limit: usize) -> Result<Vec<MemoryEvent>> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `relations` is never read
[INFO] [stderr]   --> src/memory/graph.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct GraphMemory {
[INFO] [stderr]    |            ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 15 |     relations: Vec<Relation>,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `add_relation`, `get_relations`, and `save_relations` are never used
[INFO] [stderr]    --> src/memory/graph.rs:58:18
[INFO] [stderr]     |
[INFO] [stderr]  35 | impl GraphMemory {
[INFO] [stderr]     | ---------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  58 |     pub async fn add_relation(&mut self, relation: Relation) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  95 |     pub async fn get_relations(&self, entity_id: &str) -> Result<Vec<Relation>> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 163 |     async fn save_relations(&self) -> Result<()> {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]   --> src/memory/semantic.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub struct SearchResult {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] 32 |     pub id: String,
[INFO] [stderr]    |         ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SearchResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Procedure` is never constructed
[INFO] [stderr]   --> src/memory/types.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub struct Procedure {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `query` and `session_id` are never read
[INFO] [stderr]   --> src/memory/types.rs:40:9
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub struct ContextBundle {
[INFO] [stderr]    |            ------------- fields in this struct
[INFO] [stderr] 40 |     pub query: String,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 44 |     pub session_id: String,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ContextBundle` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `session_id` is never read
[INFO] [stderr]    --> src/memory/types.rs:113:9
[INFO] [stderr]     |
[INFO] [stderr] 109 | pub struct MemoryStats {
[INFO] [stderr]     |            ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 113 |     pub session_id: String,
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `MemoryStats` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `format` is never used
[INFO] [stderr]    --> src/memory/types.rs:120:12
[INFO] [stderr]     |
[INFO] [stderr] 119 | impl MemoryStats {
[INFO] [stderr]     | ---------------- method in this implementation
[INFO] [stderr] 120 |     pub fn format(&self) -> String {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `old_procedures_removed`, `total_size_before`, and `total_size_after` are never read
[INFO] [stderr]   --> src/memory/consolidation.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct ConsolidationReport {
[INFO] [stderr]    |            ------------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 14 |     pub old_procedures_removed: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 15 |     pub total_size_before: u64,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 16 |     pub total_size_after: u64,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ConsolidationReport` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `calculate_priority` is never used
[INFO] [stderr]   --> src/memory/consolidation.rs:95:8
[INFO] [stderr]    |
[INFO] [stderr] 95 | pub fn calculate_priority(event: &MemoryEvent) -> f32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Prompt` is never constructed
[INFO] [stderr]   --> src/mcp/mod.rs:73:12
[INFO] [stderr]    |
[INFO] [stderr] 73 | pub struct Prompt {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `PromptArgument` is never constructed
[INFO] [stderr]   --> src/mcp/mod.rs:80:12
[INFO] [stderr]    |
[INFO] [stderr] 80 | pub struct PromptArgument {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `server_running` is never read
[INFO] [stderr]    --> src/mcp/mod.rs:204:9
[INFO] [stderr]     |
[INFO] [stderr] 202 | pub struct McpStatus {
[INFO] [stderr]     |            --------- field in this struct
[INFO] [stderr] 203 |     pub connected_servers: Vec<String>,
[INFO] [stderr] 204 |     pub server_running: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `McpStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `next_request_id` is never read
[INFO] [stderr]   --> src/mcp/client.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 42 | pub struct McpClient {
[INFO] [stderr]    |            --------- field in this struct
[INFO] [stderr] 43 |     next_request_id: Mutex<u64>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `child`, `pending_requests`, and `server_info` are never read
[INFO] [stderr]   --> src/mcp/client.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub struct ServerConnection {
[INFO] [stderr]    |            ---------------- fields in this struct
[INFO] [stderr] 48 |     child: Arc<std::sync::Mutex<Child>>,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 49 |     pending_requests: Arc<std::sync::Mutex<std::collections::HashMap<u64, tokio::sync::oneshot::Sender<JsonRpcResponse>>>>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 50 |     server_info: ServerInfo,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `server_info` and `capabilities` are never read
[INFO] [stderr]   --> src/mcp/client.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr] 54 | struct ServerInfo {
[INFO] [stderr]    |        ---------- fields in this struct
[INFO] [stderr] 55 |     protocol_version: String,
[INFO] [stderr] 56 |     server_info: ServerMetadata,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 57 |     capabilities: serde_json::Value,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ServerInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `version` are never read
[INFO] [stderr]   --> src/mcp/client.rs:62:5
[INFO] [stderr]    |
[INFO] [stderr] 61 | struct ServerMetadata {
[INFO] [stderr]    |        -------------- fields in this struct
[INFO] [stderr] 62 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 63 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stderr] 64 |     version: Option<String>,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ServerMetadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `connect_http` is never used
[INFO] [stderr]    --> src/mcp/client.rs:122:18
[INFO] [stderr]     |
[INFO] [stderr]  67 | impl McpClient {
[INFO] [stderr]     | -------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 122 |     pub async fn connect_http(&self, url: &str) -> Result<HttpServerConnection> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `disconnect` is never used
[INFO] [stderr]    --> src/mcp/client.rs:304:18
[INFO] [stderr]     |
[INFO] [stderr] 240 | impl ServerConnection {
[INFO] [stderr]     | --------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 304 |     pub async fn disconnect(&self) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `HttpServerConnection` is never constructed
[INFO] [stderr]    --> src/mcp/client.rs:316:12
[INFO] [stderr]     |
[INFO] [stderr] 316 | pub struct HttpServerConnection {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `list_tools`, `call_tool`, and `get_server_info` are never used
[INFO] [stderr]    --> src/mcp/client.rs:325:18
[INFO] [stderr]     |
[INFO] [stderr] 323 | impl HttpServerConnection {
[INFO] [stderr]     | ------------------------- methods in this implementation
[INFO] [stderr] 324 |     /// List available tools via HTTP
[INFO] [stderr] 325 |     pub async fn list_tools(&self) -> Result<Vec<Tool>> {
[INFO] [stderr]     |                  ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 360 |     pub async fn call_tool(&self, tool_name: &str, arguments: serde_json::Value) -> Result<ToolResult> {
[INFO] [stderr]     |                  ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 405 |     pub fn get_server_info(&self) -> &ServerInfo {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `DANGEROUS_SHELL_PATTERNS` is never used
[INFO] [stderr]   --> src/mcp/command_validator.rs:72:7
[INFO] [stderr]    |
[INFO] [stderr] 72 | const DANGEROUS_SHELL_PATTERNS: &[&str] = &[
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `jsonrpc` is never read
[INFO] [stderr]   --> src/mcp/server.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 35 | struct JsonRpcRequest {
[INFO] [stderr]    |        -------------- field in this struct
[INFO] [stderr] 36 |     jsonrpc: String,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `JsonRpcRequest` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `InitializeParams` is never constructed
[INFO] [stderr]   --> src/mcp/server.rs:65:8
[INFO] [stderr]    |
[INFO] [stderr] 65 | struct InitializeParams {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ClientInfo` is never constructed
[INFO] [stderr]   --> src/mcp/server.rs:72:8
[INFO] [stderr]    |
[INFO] [stderr] 72 | struct ClientInfo {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `stop`, `register_tool`, `unregister_tool`, and `list_tools` are never used
[INFO] [stderr]    --> src/mcp/server.rs:153:18
[INFO] [stderr]     |
[INFO] [stderr]  86 | impl McpServer {
[INFO] [stderr]     | -------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 153 |     pub async fn stop(&self) -> Result<()> {
[INFO] [stderr]     |                  ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 173 |     pub async fn register_tool(&self, tool: Tool) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 190 |     pub async fn unregister_tool(&self, tool_name: &str) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 206 |     pub async fn list_tools(&self) -> Vec<Tool> {
[INFO] [stderr]     |                  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ResourceData` is never constructed
[INFO] [stderr]   --> src/mcp/resources.rs:11:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct ResourceData {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `subscribe` and `unsubscribe` are never used
[INFO] [stderr]   --> src/mcp/resources.rs:66:18
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl ResourceHandler {
[INFO] [stderr]    | -------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 66 |     pub async fn subscribe(&self, _uri: &str) -> Result<()> {
[INFO] [stderr]    |                  ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 72 |     pub async fn unsubscribe(&self, _uri: &str) -> Result<()> {
[INFO] [stderr]    |                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ResourceReadResult` is never constructed
[INFO] [stderr]    --> src/mcp/resources.rs:285:12
[INFO] [stderr]     |
[INFO] [stderr] 285 | pub struct ResourceReadResult {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `StreamChunk` is never used
[INFO] [stderr]   --> src/providers/mod.rs:16:10
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub enum StreamChunk {
[INFO] [stderr]    |          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/providers/mod.rs:71:12
[INFO] [stderr]    |
[INFO] [stderr] 70 | impl CompletionResponse {
[INFO] [stderr]    | ----------------------- associated function in this implementation
[INFO] [stderr] 71 |     pub fn new(id: String, model: String, content: String) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `complete_stream` and `refresh_auth` are never used
[INFO] [stderr]    --> src/providers/mod.rs:133:14
[INFO] [stderr]     |
[INFO] [stderr] 127 | pub trait Provider: Send + Sync {
[INFO] [stderr]     |           -------- methods in this trait
[INFO] [stderr] ...
[INFO] [stderr] 133 |     async fn complete_stream(
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 156 |     async fn refresh_auth(&mut self) -> Result<()>;
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `default_model` is never read
[INFO] [stderr]   --> src/providers/claude.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct ClaudeProvider {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 24 |     default_model: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `refresh_oauth_token` is never used
[INFO] [stderr]    --> src/providers/claude.rs:191:18
[INFO] [stderr]     |
[INFO] [stderr]  28 | impl ClaudeProvider {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 191 |     pub async fn refresh_oauth_token(&mut self) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_refresh_token` is never used
[INFO] [stderr]    --> src/providers/claude.rs:484:12
[INFO] [stderr]     |
[INFO] [stderr] 483 | impl ClaudeProvider {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] 484 |     pub fn get_refresh_token(&self) -> Option<&String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_refresh_token` is never used
[INFO] [stderr]    --> src/providers/google.rs:475:12
[INFO] [stderr]     |
[INFO] [stderr]  41 | impl GoogleProvider {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 475 |     pub fn get_refresh_token(&self) -> Option<&String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ModelCapabilities` is never constructed
[INFO] [stderr]  --> src/providers/model_capabilities.rs:5:12
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub struct ModelCapabilities {
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated functions are never used
[INFO] [stderr]   --> src/providers/model_capabilities.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl ModelCapabilities {
[INFO] [stderr]    | ---------------------- associated functions in this implementation
[INFO] [stderr] 20 |     pub fn get_all() -> &'static [ModelCapabilities] {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     pub fn get_by_id(id: &str) -> Option<&'static ModelCapabilities> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     pub fn filter_by_provider(provider: &str) -> Vec<&'static ModelCapabilities> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 33 |     pub fn rank_for_heartbeat(models: &[String]) -> Vec<String> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 40 |     pub fn rank_for_planning(models: &[String]) -> Vec<String> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 47 |     pub fn rank_for_coding(models: &[String]) -> Vec<String> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 54 |     pub fn rank_for_review(models: &[String]) -> Vec<String> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `rank_by_score` is never used
[INFO] [stderr]   --> src/providers/model_capabilities.rs:61:4
[INFO] [stderr]    |
[INFO] [stderr] 61 | fn rank_by_score<F>(models: &[String], score_fn: F) -> Vec<String>
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `MODEL_RANKINGS` is never used
[INFO] [stderr]   --> src/providers/model_capabilities.rs:77:8
[INFO] [stderr]    |
[INFO] [stderr] 77 | static MODEL_RANKINGS: Lazy<Vec<ModelCapabilities>> = Lazy::new(|| {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `default_model` is never read
[INFO] [stderr]   --> src/providers/opencode.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub struct OpencodeProvider {
[INFO] [stderr]    |            ---------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 12 |     default_model: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `default_model` is never read
[INFO] [stderr]   --> src/providers/openrouter.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub struct OpenRouterProvider {
[INFO] [stderr]    |            ------------------ field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 12 |     default_model: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `fetch_available_models` is never used
[INFO] [stderr]   --> src/providers/openrouter.rs:57:18
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl OpenRouterProvider {
[INFO] [stderr]    | ----------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 57 |     pub async fn fetch_available_models(&self) -> Result<Vec<String>> {
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `operation` and `path` are never read
[INFO] [stderr]   --> src/sandbox/mod.rs:11:18
[INFO] [stderr]    |
[INFO] [stderr] 11 |     FileSystem { operation: FileOp, path: PathBuf },
[INFO] [stderr]    |     ----------   ^^^^^^^^^          ^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     fields in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CommandType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `command` and `args` are never read
[INFO] [stderr]   --> src/sandbox/mod.rs:12:13
[INFO] [stderr]    |
[INFO] [stderr] 12 |     Shell { command: String, args: Vec<String> },
[INFO] [stderr]    |     -----   ^^^^^^^          ^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     fields in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CommandType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `manager`, `action`, and `packages` are never read
[INFO] [stderr]   --> src/sandbox/mod.rs:13:15
[INFO] [stderr]    |
[INFO] [stderr] 13 |     Package { manager: PackageManager, action: PackageAction, packages: Vec<String> },
[INFO] [stderr]    |     -------   ^^^^^^^                  ^^^^^^                 ^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     fields in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CommandType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `to` is never read
[INFO] [stderr]   --> src/sandbox/mod.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 |     Move { to: PathBuf },
[INFO] [stderr]    |     ----   ^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FileOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `to` is never read
[INFO] [stderr]   --> src/sandbox/mod.rs:22:12
[INFO] [stderr]    |
[INFO] [stderr] 22 |     Copy { to: PathBuf },
[INFO] [stderr]    |     ----   ^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FileOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Read` and `Write` are never constructed
[INFO] [stderr]   --> src/sandbox/mod.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub enum FileOp {
[INFO] [stderr]    |          ------ variants in this enum
[INFO] [stderr] 18 |     Read,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 19 |     Write,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FileOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Apt` and `Brew` are never constructed
[INFO] [stderr]   --> src/sandbox/mod.rs:31:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub enum PackageManager {
[INFO] [stderr]    |          -------------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 31 |     Apt,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 32 |     Brew,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `PackageManager` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `container_id` is never read
[INFO] [stderr]   --> src/sandbox/docker.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub struct DockerResult {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 12 |     pub container_id: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DockerResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `cleanup` is never used
[INFO] [stderr]    --> src/sandbox/docker.rs:173:18
[INFO] [stderr]     |
[INFO] [stderr]  19 | impl DockerSandbox {
[INFO] [stderr]     | ------------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 173 |     pub async fn cleanup(&self, container_id: &str) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `backup_path` is never read
[INFO] [stderr]   --> src/sandbox/hydration.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct FileChange {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 18 |     pub backup_path: Option<PathBuf>,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FileChange` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `backup_dir` is never read
[INFO] [stderr]   --> src/sandbox/hydration.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct Hydrator {
[INFO] [stderr]    |            -------- field in this struct
[INFO] [stderr] 22 |     backup_dir: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `create_plan`, `walk_sandbox`, `rollback`, `should_backup`, `create_backup`, and `cleanup_old_backups` are never used
[INFO] [stderr]    --> src/sandbox/hydration.rs:33:12
[INFO] [stderr]     |
[INFO] [stderr]  25 | impl Hydrator {
[INFO] [stderr]     | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  33 |     pub fn create_plan(&self, sandbox_dir: &Path, host_dir: &Path) -> Result<HydrationPlan> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  47 |     fn walk_sandbox(
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 157 |     pub fn rollback(&self, plan: &HydrationPlan) -> Result<()> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 186 |     fn should_backup(&self, path: &Path) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 195 |     fn create_backup(&self, original: &Path) -> Result<PathBuf> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 222 |     pub fn cleanup_old_backups(&self, max_age_hours: u64) -> Result<usize> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `checks` and `warnings` are never read
[INFO] [stderr]  --> src/sandbox/validator.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub struct ValidationResult {
[INFO] [stderr]   |            ---------------- fields in this struct
[INFO] [stderr] 6 |     pub passed: bool,
[INFO] [stderr] 7 |     pub checks: Vec<ValidationCheck>,
[INFO] [stderr]   |         ^^^^^^
[INFO] [stderr] 8 |     pub warnings: Vec<String>,
[INFO] [stderr]   |         ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `ValidationResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `message` is never read
[INFO] [stderr]   --> src/sandbox/validator.rs:15:9
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct ValidationCheck {
[INFO] [stderr]    |            --------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 15 |     pub message: String,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ValidationCheck` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `enable_check`, `disable_check`, and `validate_file_changes` are never used
[INFO] [stderr]    --> src/sandbox/validator.rs:154:12
[INFO] [stderr]     |
[INFO] [stderr]  22 | impl Validator {
[INFO] [stderr]     | -------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 154 |     pub fn enable_check(&mut self, check_name: &str) {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 158 |     pub fn disable_check(&mut self, check_name: &str) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 162 |     pub fn validate_file_changes(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `delete_secret` is never used
[INFO] [stderr]   --> src/secret_store.rs:41:8
[INFO] [stderr]    |
[INFO] [stderr] 41 | pub fn delete_secret(key_name: &str) -> Result<()> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `with_context` is never used
[INFO] [stderr]   --> src/swarm/mod.rs:61:12
[INFO] [stderr]    |
[INFO] [stderr] 51 | impl SwarmTask {
[INFO] [stderr]    | -------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 61 |     pub fn with_context(mut self, context: impl Into<String>) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `task_id` and `execution_time_ms` are never read
[INFO] [stderr]   --> src/swarm/mod.rs:70:9
[INFO] [stderr]    |
[INFO] [stderr] 69 | pub struct SwarmResult {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] 70 |     pub task_id: String,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 75 |     pub execution_time_ms: u64,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SwarmResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `execution_time_ms` is never read
[INFO] [stderr]   --> src/swarm/mod.rs:86:9
[INFO] [stderr]    |
[INFO] [stderr] 80 | pub struct SubtaskResult {
[INFO] [stderr]    |            ------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 86 |     pub execution_time_ms: u64,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SubtaskResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `file_path`, `worker_a`, and `worker_b` are never read
[INFO] [stderr]   --> src/swarm/mod.rs:92:9
[INFO] [stderr]    |
[INFO] [stderr] 91 | pub struct MergeConflict {
[INFO] [stderr]    |            ------------- fields in this struct
[INFO] [stderr] 92 |     pub file_path: String,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 93 |     pub worker_a: String,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 94 |     pub worker_b: String,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MergeConflict` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Skipped` is never constructed
[INFO] [stderr]    --> src/swarm/mod.rs:102:5
[INFO] [stderr]     |
[INFO] [stderr]  99 | pub enum ConflictResolution {
[INFO] [stderr]     |          ------------------ variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 102 |     Skipped,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ConflictResolution` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `active_tasks`, `provider`, and `model` are never read
[INFO] [stderr]    --> src/swarm/mod.rs:112:5
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub struct SwarmOrchestrator {
[INFO] [stderr]     |            ----------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 112 |     active_tasks: Arc<RwLock<HashMap<String, TaskHandle>>>,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 113 |     provider: Arc<dyn Provider + Send + Sync>,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 114 |     model: String,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `task_id`, `status`, and `start_time` are never read
[INFO] [stderr]    --> src/swarm/mod.rs:118:5
[INFO] [stderr]     |
[INFO] [stderr] 117 | struct TaskHandle {
[INFO] [stderr]     |        ---------- fields in this struct
[INFO] [stderr] 118 |     task_id: String,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 119 |     status: TaskStatus,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 120 |     start_time: std::time::Instant,
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_active_tasks` and `cancel_task` are never used
[INFO] [stderr]    --> src/swarm/mod.rs:395:18
[INFO] [stderr]     |
[INFO] [stderr] 123 | impl SwarmOrchestrator {
[INFO] [stderr]     | ---------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 395 |     pub async fn get_active_tasks(&self) -> Vec<(String, TaskStatus)> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 404 |     pub async fn cancel_task(&self, task_id: &str) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `InProgress`, `Completed`, `Failed`, and `Cancelled` are never constructed
[INFO] [stderr]   --> src/swarm/architect.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub enum TaskStatus {
[INFO] [stderr]    |          ---------- variants in this enum
[INFO] [stderr] 11 |     Pending,
[INFO] [stderr] 12 |     InProgress,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 13 |     Completed,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 14 |     Failed(String),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 15 |     Cancelled,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TaskStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `worker_type_hint` and `status` are never read
[INFO] [stderr]   --> src/swarm/architect.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub struct Task {
[INFO] [stderr]    |            ---- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 23 |     pub worker_type_hint: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 |     pub status: TaskStatus,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Task` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `find_critical_path` is never used
[INFO] [stderr]    --> src/swarm/architect.rs:115:12
[INFO] [stderr]     |
[INFO] [stderr]  53 | impl ArchitectAgent {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 115 |     pub fn find_critical_path(&self, tasks: &[Task]) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/swarm/merger.rs:189:12
[INFO] [stderr]     |
[INFO] [stderr]  13 | impl GitMerger {
[INFO] [stderr]     | -------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 189 |     pub fn create_backup(&self, file_path: &str) -> Result<PathBuf> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 209 |     pub fn restore_backup(&self, file_path: &str, backup_path: &Path) -> Result<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 215 |     pub fn generate_conflict_report(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 240 |     pub fn init_git_tracking(&self, working_dir: &Path) -> Result<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 275 |     pub fn commit_worker_changes(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 328 |     pub fn merge_commits(
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 373 |     pub fn get_conflict_files(&self, working_dir: &Path) -> Result<Vec<String>> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 391 |     pub fn abort_merge(&self, working_dir: &Path) -> Result<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `MergeResult` is never used
[INFO] [stderr]    --> src/swarm/merger.rs:412:10
[INFO] [stderr]     |
[INFO] [stderr] 412 | pub enum MergeResult {
[INFO] [stderr]     |          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `stage_number` is never read
[INFO] [stderr]  --> src/swarm/scheduler.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct ExecutionStage {
[INFO] [stderr]   |            -------------- field in this struct
[INFO] [stderr] 8 |     pub stage_number: usize,
[INFO] [stderr]   |         ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `ExecutionStage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `total_tasks` is never read
[INFO] [stderr]   --> src/swarm/scheduler.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct ExecutionPlan {
[INFO] [stderr]    |            ------------- field in this struct
[INFO] [stderr] 15 |     pub stages: Vec<ExecutionStage>,
[INFO] [stderr] 16 |     pub total_tasks: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ExecutionPlan` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_dependency_order`, `is_ready`, and `get_ready_tasks` are never used
[INFO] [stderr]    --> src/swarm/scheduler.rs:258:12
[INFO] [stderr]     |
[INFO] [stderr]  25 | impl Scheduler {
[INFO] [stderr]     | -------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 258 |     pub fn get_dependency_order(&self, task: &Task, all_tasks: &[Task]) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 296 |     pub fn is_ready(&self, task: &Task, completed: &HashSet<String>) -> bool {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 301 |     pub fn get_ready_tasks<'a>(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `as_str` is never used
[INFO] [stderr]   --> src/swarm/worker.rs:26:12
[INFO] [stderr]    |
[INFO] [stderr] 25 | impl WorkerType {
[INFO] [stderr]    | --------------- method in this implementation
[INFO] [stderr] 26 |     pub fn as_str(&self) -> &'static str {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `task_id` and `tests_passed` are never read
[INFO] [stderr]   --> src/swarm/worker.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 45 | pub struct WorkerResult {
[INFO] [stderr]    |            ------------ fields in this struct
[INFO] [stderr] 46 |     pub task_id: String,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 49 |     pub tests_passed: Option<bool>,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `WorkerResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `max_concurrent_healing` is never read
[INFO] [stderr]   --> src/watcher/mod.rs:77:9
[INFO] [stderr]    |
[INFO] [stderr] 65 | pub struct WatcherEngineConfig {
[INFO] [stderr]    |            ------------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 77 |     pub max_concurrent_healing: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `WatcherEngineConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple fields are never read
[INFO] [stderr]    --> src/watcher/mod.rs:102:9
[INFO] [stderr]     |
[INFO] [stderr] 101 | pub struct ProjectWatcher {
[INFO] [stderr]     |            -------------- fields in this struct
[INFO] [stderr] 102 |     pub id: String,
[INFO] [stderr]     |         ^^
[INFO] [stderr] 103 |     pub name: String,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 104 |     pub path: PathBuf,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 105 |     pub project_type: Option<String>,
[INFO] [stderr] 106 |     pub file_watcher_enabled: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 107 |     pub log_monitoring_enabled: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 108 |     pub auto_healing_enabled: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 109 |     pub custom_patterns: Vec<String>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ProjectWatcher` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `file_change_tx`, `log_error_tx`, `healer_event_tx`, and `memory` are never read
[INFO] [stderr]    --> src/watcher/mod.rs:135:5
[INFO] [stderr]     |
[INFO] [stderr] 126 | pub struct WatcherEngine {
[INFO] [stderr]     |            ------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 135 |     file_change_tx: mpsc::Sender<FileChangeEvent>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 136 |     file_change_rx: Arc<RwLock<mpsc::Receiver<FileChangeEvent>>>,
[INFO] [stderr] 137 |     log_error_tx: mpsc::Sender<LogErrorEvent>,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 138 |     log_error_rx: Arc<RwLock<mpsc::Receiver<LogErrorEvent>>>,
[INFO] [stderr] 139 |     healer_event_tx: mpsc::Sender<HealerEvent>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 145 |     memory: Arc<RwLock<MemorySystem>>,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `remove_project`, `monitor_dev_server`, `get_projects`, `set_swarm`, and `update_config` are never used
[INFO] [stderr]    --> src/watcher/mod.rs:526:18
[INFO] [stderr]     |
[INFO] [stderr] 152 | impl WatcherEngine {
[INFO] [stderr]     | ------------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 526 |     pub async fn remove_project(&self, project_id: &str) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 560 |     pub async fn monitor_dev_server(
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 611 |     pub async fn get_projects(&self) -> Vec<ProjectWatcher> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 631 |     pub async fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 641 |     pub async fn update_config(&mut self, new_config: WatcherEngineConfig) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_default_engine` is never used
[INFO] [stderr]    --> src/watcher/mod.rs:664:14
[INFO] [stderr]     |
[INFO] [stderr] 664 | pub async fn create_default_engine(
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `send_desktop_notification` is never used
[INFO] [stderr]    --> src/watcher/mod.rs:688:8
[INFO] [stderr]     |
[INFO] [stderr] 688 | pub fn send_desktop_notification(title: &str, message: &str) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `timestamp` and `should_lint` are never read
[INFO] [stderr]    --> src/watcher/filesystem.rs:99:9
[INFO] [stderr]     |
[INFO] [stderr]  97 | pub struct FileChangeEvent {
[INFO] [stderr]     |            --------------- fields in this struct
[INFO] [stderr]  98 |     pub project_id: String,
[INFO] [stderr]  99 |     pub timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 104 |     pub should_lint: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `FileChangeEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Renamed` is never constructed
[INFO] [stderr]    --> src/watcher/filesystem.rs:114:5
[INFO] [stderr]     |
[INFO] [stderr] 110 | pub enum ChangeType {
[INFO] [stderr]     |          ---------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 114 |     Renamed(PathBuf), // Contains the old path
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ChangeType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `WatcherStats` is never constructed
[INFO] [stderr]    --> src/watcher/filesystem.rs:119:12
[INFO] [stderr]     |
[INFO] [stderr] 119 | pub struct WatcherStats {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `remove_project`, `stop_watching`, and `get_stats` are never used
[INFO] [stderr]    --> src/watcher/filesystem.rs:169:18
[INFO] [stderr]     |
[INFO] [stderr] 134 | impl FileSystemWatcher {
[INFO] [stderr]     | ---------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 169 |     pub async fn remove_project(&self, project_id: &str) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 218 |     async fn stop_watching(&self, project_id: &str) {
[INFO] [stderr]     |              ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 337 |     pub async fn get_stats(&self) -> WatcherStats {
[INFO] [stderr]     |                  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id` and `start_time` are never read
[INFO] [stderr]   --> src/watcher/healer.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub struct HealingSession {
[INFO] [stderr]    |            -------------- fields in this struct
[INFO] [stderr] 27 |     pub id: String,
[INFO] [stderr]    |         ^^
[INFO] [stderr] ...
[INFO] [stderr] 30 |     pub start_time: chrono::DateTime<chrono::Utc>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `HealingSession` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `output` is never read
[INFO] [stderr]   --> src/watcher/healer.rs:42:41
[INFO] [stderr]    |
[INFO] [stderr] 42 |     BuildError { project_path: PathBuf, output: String },
[INFO] [stderr]    |     ---------- field in this variant    ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ErrorEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `TestFailure` is never constructed
[INFO] [stderr]   --> src/watcher/healer.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub enum ErrorEvent {
[INFO] [stderr]    |          ---------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 43 |     TestFailure { project_path: PathBuf, test_name: String, output: String },
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ErrorEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Failed` is never constructed
[INFO] [stderr]   --> src/watcher/healer.rs:55:5
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub enum HealingStatus {
[INFO] [stderr]    |          ------------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 55 |     Failed(String),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `HealingStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `relevant_procedures` and `root_cause` are never read
[INFO] [stderr]   --> src/watcher/healer.rs:62:9
[INFO] [stderr]    |
[INFO] [stderr] 60 | pub struct InvestigationResult {
[INFO] [stderr]    |            ------------------- fields in this struct
[INFO] [stderr] 61 |     pub similar_past_errors: Vec<MemoryResult>,
[INFO] [stderr] 62 |     pub relevant_procedures: Vec<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 65 |     pub root_cause: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `InvestigationResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id`, `shadow_run_result`, `was_applied`, and `verification_result` are never read
[INFO] [stderr]   --> src/watcher/healer.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 70 | pub struct FixAttempt {
[INFO] [stderr]    |            ---------- fields in this struct
[INFO] [stderr] 71 |     pub id: String,
[INFO] [stderr]    |         ^^
[INFO] [stderr] 72 |     pub description: String,
[INFO] [stderr] 73 |     pub shadow_run_result: ShadowRunResult,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 74 |     pub hydration_plan: Option<HydrationPlan>,
[INFO] [stderr] 75 |     pub was_applied: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 76 |     pub verification_result: Option<VerificationResult>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FixAttempt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `test_output` and `new_errors` are never read
[INFO] [stderr]   --> src/watcher/healer.rs:83:9
[INFO] [stderr]    |
[INFO] [stderr] 81 | pub struct VerificationResult {
[INFO] [stderr]    |            ------------------ fields in this struct
[INFO] [stderr] 82 |     pub success: bool,
[INFO] [stderr] 83 |     pub test_output: String,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 84 |     pub error_resolved: bool,
[INFO] [stderr] 85 |     pub new_errors: Vec<String>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `VerificationResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `fix_success_rate` and `tags` are never read
[INFO] [stderr]   --> src/watcher/healer.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 90 | pub struct LearningEntry {
[INFO] [stderr]    |            ------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 95 |     fix_success_rate: f32,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 96 |     #[serde(skip)]
[INFO] [stderr] 97 |     tags: Vec<String>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LearningEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `auto_apply_simple_fixes`, `max_fix_attempts`, and `verify_timeout_secs` are never read
[INFO] [stderr]    --> src/watcher/healer.rs:103:9
[INFO] [stderr]     |
[INFO] [stderr] 102 | pub struct HealerConfig {
[INFO] [stderr]     |            ------------ fields in this struct
[INFO] [stderr] 103 |     pub auto_apply_simple_fixes: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 104 |     pub max_fix_attempts: u32,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 105 |     pub verify_timeout_secs: u64,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HealerConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `session_id` and `error_summary` are never read
[INFO] [stderr]    --> src/watcher/healer.rs:143:22
[INFO] [stderr]     |
[INFO] [stderr] 143 |     SessionStarted { session_id: String, error_summary: String },
[INFO] [stderr]     |     --------------   ^^^^^^^^^^          ^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     fields in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HealerEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `session_id` and `analysis` are never read
[INFO] [stderr]    --> src/watcher/healer.rs:144:29
[INFO] [stderr]     |
[INFO] [stderr] 144 |     InvestigationComplete { session_id: String, analysis: String },
[INFO] [stderr]     |     ---------------------   ^^^^^^^^^^          ^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     fields in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HealerEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `session_id` and `fix_description` are never read
[INFO] [stderr]    --> src/watcher/healer.rs:145:20
[INFO] [stderr]     |
[INFO] [stderr] 145 |     FixGenerated { session_id: String, fix_description: String },
[INFO] [stderr]     |     ------------   ^^^^^^^^^^          ^^^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     fields in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HealerEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `session_id`, `success`, and `output` are never read
[INFO] [stderr]    --> src/watcher/healer.rs:146:25
[INFO] [stderr]     |
[INFO] [stderr] 146 |     ShadowRunComplete { session_id: String, success: bool, output: String },
[INFO] [stderr]     |     -----------------   ^^^^^^^^^^          ^^^^^^^        ^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     fields in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HealerEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `session_id` and `files_modified` are never read
[INFO] [stderr]    --> src/watcher/healer.rs:147:18
[INFO] [stderr]     |
[INFO] [stderr] 147 |     FixApplied { session_id: String, files_modified: Vec<String> },
[INFO] [stderr]     |     ----------   ^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     fields in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HealerEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `session_id`, `success`, and `error_resolved` are never read
[INFO] [stderr]    --> src/watcher/healer.rs:148:28
[INFO] [stderr]     |
[INFO] [stderr] 148 |     VerificationComplete { session_id: String, success: bool, error_resolved: bool },
[INFO] [stderr]     |     --------------------   ^^^^^^^^^^          ^^^^^^^        ^^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     fields in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HealerEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `session_id` is never read
[INFO] [stderr]    --> src/watcher/healer.rs:149:23
[INFO] [stderr]     |
[INFO] [stderr] 149 |     SessionComplete { session_id: String, success: bool },
[INFO] [stderr]     |     ---------------   ^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HealerEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `set_swarm`, `generate_fix_with_ai`, and `extract_root_cause` are never used
[INFO] [stderr]     --> src/watcher/healer.rs:176:12
[INFO] [stderr]      |
[INFO] [stderr]  153 | impl Healer {
[INFO] [stderr]      | ----------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  176 |     pub fn set_swarm(&mut self, swarm: Arc<SwarmOrchestrator>) {
[INFO] [stderr]      |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1065 |     async fn generate_fix_with_ai(
[INFO] [stderr]      |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1130 |     fn extract_root_cause(&self, analysis: &str) -> Option<String> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `language_hint` and `enabled` are never read
[INFO] [stderr]   --> src/watcher/logs.rs:24:9
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub struct LogSource {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 24 |     pub language_hint: Option<Language>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 25 |     pub enabled: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LogSource` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `name` is never read
[INFO] [stderr]   --> src/watcher/logs.rs:36:14
[INFO] [stderr]    |
[INFO] [stderr] 36 |     Stream { name: String },
[INFO] [stderr]    |     ------   ^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LogSourceType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Process` is never constructed
[INFO] [stderr]   --> src/watcher/logs.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub enum LogSourceType {
[INFO] [stderr]    |          ------------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 34 |     Process { command: String, args: Vec<String> },
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LogSourceType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `timestamp`, `raw_log_line`, and `context_lines` are never read
[INFO] [stderr]   --> src/watcher/logs.rs:43:9
[INFO] [stderr]    |
[INFO] [stderr] 41 | pub struct LogErrorEvent {
[INFO] [stderr]    |            ------------- fields in this struct
[INFO] [stderr] 42 |     pub source_id: String,
[INFO] [stderr] 43 |     pub timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 44 |     pub detected_error: DetectedError,
[INFO] [stderr] 45 |     pub raw_log_line: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 46 |     pub context_lines: Vec<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LogErrorEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LogMonitorStats` is never constructed
[INFO] [stderr]   --> src/watcher/logs.rs:77:12
[INFO] [stderr]    |
[INFO] [stderr] 77 | pub struct LogMonitorStats {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `remove_source`, `set_source_enabled`, `process_log_line`, and `get_stats` are never used
[INFO] [stderr]    --> src/watcher/logs.rs:393:18
[INFO] [stderr]     |
[INFO] [stderr]  85 | impl LogMonitor {
[INFO] [stderr]     | --------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 393 |     pub async fn remove_source(&self, source_id: &str) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 428 |     pub async fn set_source_enabled(&self, source_id: &str, _enabled: bool) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 445 |     pub async fn process_log_line(&self, source_id: &str, line: &str) -> Result<()> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 491 |     pub async fn get_stats(&self) -> LogMonitorStats {
[INFO] [stderr]     |                  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `JsUndefinedVariable`, `TsMissingType`, `MemoryError`, and `Unknown` are never constructed
[INFO] [stderr]   --> src/watcher/patterns.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub enum ErrorType {
[INFO] [stderr]    |          --------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 37 |     JsUndefinedVariable,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 38 |     TsTypeMismatch,
[INFO] [stderr] 39 |     TsMissingType,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 58 |     MemoryError,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 61 |     Unknown,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ErrorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `language` is never read
[INFO] [stderr]   --> src/watcher/patterns.rs:75:9
[INFO] [stderr]    |
[INFO] [stderr] 74 | pub struct ErrorHandler {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] 75 |     pub language: Language,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `auto_fixable` are never read
[INFO] [stderr]    --> src/watcher/patterns.rs:93:9
[INFO] [stderr]     |
[INFO] [stderr]  92 | pub struct ErrorPattern {
[INFO] [stderr]     |            ------------ fields in this struct
[INFO] [stderr]  93 |     pub name: String,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 100 |     pub auto_fixable: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ErrorPattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_suggested_fixes` is never used
[INFO] [stderr]    --> src/watcher/patterns.rs:967:12
[INFO] [stderr]     |
[INFO] [stderr] 157 | impl PatternsDatabase {
[INFO] [stderr]     | --------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 967 |     pub fn get_suggested_fixes(&self, error_type: &ErrorType) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `nexus` (bin "nexus" test) generated 181 warnings (run `cargo fix --bin "nexus" -p nexus --tests` to apply 38 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.62s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/nexus-caa0f9e4a3079a9b)
[INFO] [stdout] 
[INFO] [stdout] running 52 tests
[INFO] [stdout] test context::file_tracker::tests::test_unread_file_not_stale ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_blocked_eval ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_blocked_system_redirect ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_blocked_command_substitution ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_blocked_dangerous_patterns ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_blocked_privilege_escalation ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_blocked_shell_execution ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_empty_command ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_env_var_prefix ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_max_length ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_piped_commands ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_safe_commands ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_unknown_command_blocked ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_chained_commands ... ok
[INFO] [stdout] test context::file_tracker::tests::test_clear_tracking ... ok
[INFO] [stdout] test providers::retry::tests::test_retryable_classification ... ok
[INFO] [stdout] test providers::token_budget::tests::test_can_continue_false_when_exhausted ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_blocked_exfiltration ... ok
[INFO] [stdout] test providers::token_budget::tests::test_can_continue_false_when_input_exhausted ... ok
[INFO] [stdout] test mcp::command_validator::tests::test_blocked_injection_semicolon ... ok
[INFO] [stdout] test providers::retry::tests::test_succeeds_first_try ... ok
[INFO] [stdout] test providers::token_budget::tests::test_default_budget ... ok
[INFO] [stdout] test providers::token_budget::tests::test_estimate_tokens ... ok
[INFO] [stdout] test secret_store::tests::test_parse_non_sentinel ... ok
[INFO] [stdout] test secret_store::tests::test_sentinel_roundtrip ... ok
[INFO] [stdout] test swarm::scheduler::tests::test_parallel_limit ... ok
[INFO] [stdout] test swarm::scheduler::tests::test_critical_path ... ok
[INFO] [stdout] test swarm::merger::tests::test_conflict_detection ... ok
[INFO] [stdout] test context::file_tracker::tests::test_detect_stale_file ... ok
[INFO] [stdout] test providers::retry::tests::test_retries_on_retryable_error ... ok
[INFO] [stdout] test providers::retry::tests::test_no_retry_on_non_retryable_error ... ok
[INFO] [stdout] test watcher::filesystem::tests::test_project_type_detection ... ok
[INFO] [stdout] test context::file_tracker::tests::test_batch_check ... ok
[INFO] [stdout] test context::file_tracker::tests::test_record_and_check_fresh_file ... ok
[INFO] [stdout] test providers::token_budget::tests::test_dynamic_max_tokens ... ok
[INFO] [stdout] test secret_store::tests::test_resolve_plaintext ... ok
[INFO] [stdout] test providers::token_budget::tests::test_record_usage_and_remaining ... ok
[INFO] [stdout] test swarm::scheduler::tests::test_simple_scheduling ... ok
[INFO] [stdout] test watcher::filesystem::tests::test_default_configs ... ok
[INFO] [stdout] test mcp::resources::tests::test_mime_type_detection ... ok
[INFO] [stdout] test watcher::healer::tests::test_error_signature ... ok
[INFO] [stdout] test watcher::filesystem::tests::test_watcher_creation ... ok
[INFO] [stdout] test watcher::patterns::tests::test_detect_language_from_extension ... ok
[INFO] [stdout] test watcher::tests::test_engine_status_default ... ok
[INFO] [stdout] test watcher::tests::test_watcher_engine_config_default ... ok
[INFO] [stdout] test providers::retry::tests::test_exhausts_retries ... ok
[INFO] [stdout] test context::file_tracker::tests::test_nonexistent_file ... ok
[INFO] [stdout] test executor::parser::tests::test_parse_shell_command ... ok
[INFO] [stdout] test watcher::patterns::tests::test_detect_js_module_not_found ... ok
[INFO] [stdout] test watcher::logs::tests::test_log_source_creation ... ok
[INFO] [stdout] test watcher::patterns::tests::test_detect_rust_error ... ok
[INFO] [stdout] test executor::parser::tests::test_parse_create_file ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- executor::parser::tests::test_parse_create_file stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'executor::parser::tests::test_parse_create_file' (23) panicked at src/executor/parser.rs:205:9:
[INFO] [stdout] assertion failed: actions.iter().any(|a|
[INFO] [stdout]         matches!(a, Action::CreateFile { path, .. } if path == "src/main.js"))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64193bfd72fa - std[128c3efe2914e152]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64193bfd72fa - std[128c3efe2914e152]::backtrace_rs::backtrace::trace_unsynchronized::<std[128c3efe2914e152]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64193bfd72fa - std[128c3efe2914e152]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64193bfd72fa - <<std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6771d259883166e6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64193bfed89a - <core[6771d259883166e6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64193bfed89a - core[6771d259883166e6]::fmt::write
[INFO] [stdout]    6:     0x64193bfdc162 - std[128c3efe2914e152]::io::default_write_fmt::<alloc[fef50e8eecedd288]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x64193bfdc162 - <alloc[fef50e8eecedd288]::vec::Vec<u8> as std[128c3efe2914e152]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x64193bfb47af - <std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64193bfb47af - std[128c3efe2914e152]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64193bfcee59 - std[128c3efe2914e152]::panicking::default_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64193bb11dbc - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   12:     0x64193bb11dbc - test[b137923399915ecf]::test_main_with_exit_callback::<test[b137923399915ecf]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x64193bfcf0d2 - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   14:     0x64193bfcf0d2 - std[128c3efe2914e152]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x64193bfb489a - std[128c3efe2914e152]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x64193bfa9909 - std[128c3efe2914e152]::sys::backtrace::__rust_end_short_backtrace::<std[128c3efe2914e152]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64193bfb557d - __rustc[752cc74e29381ccc]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x64193bfee10c - core[6771d259883166e6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64193bfee0d2 - core[6771d259883166e6]::panicking::panic
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x64193bae9f3e - nexus::executor::parser::tests::test_parse_create_file::hf826c9ba2529b9c7
[INFO] [stdout]                                at /opt/rustwide/workdir/src/executor/parser.rs:205:9
[INFO] [stdout]   21:     0x64193bae9f97 - nexus::executor::parser::tests::test_parse_create_file::{{closure}}::haf7c816629e6b893
[INFO] [stdout]                                at /opt/rustwide/workdir/src/executor/parser.rs:197:32
[INFO] [stdout]   22:     0x64193ba68e56 - core::ops::function::FnOnce::call_once::h0b91149dd5a4e35c
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64193bb05ebb - <fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x64193bb05ebb - test[b137923399915ecf]::__rust_begin_short_backtrace::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:663:18
[INFO] [stdout]   25:     0x64193bb1288b - test[b137923399915ecf]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:74
[INFO] [stdout]   26:     0x64193bb1288b - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   27:     0x64193bb1288b - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   28:     0x64193bb1288b - std[128c3efe2914e152]::panicking::catch_unwind::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   29:     0x64193bb1288b - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   30:     0x64193bb1288b - test[b137923399915ecf]::run_test_in_process
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:27
[INFO] [stdout]   31:     0x64193bb1288b - test[b137923399915ecf]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:607:43
[INFO] [stdout]   32:     0x64193bb0cce4 - test[b137923399915ecf]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:637:41
[INFO] [stdout]   33:     0x64193bb0cce4 - std[128c3efe2914e152]::sys::backtrace::__rust_begin_short_backtrace::<test[b137923399915ecf]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   34:     0x64193bb15492 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   35:     0x64193bb15492 - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   36:     0x64193bb15492 - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   37:     0x64193bb15492 - std[128c3efe2914e152]::panicking::catch_unwind::<(), core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   38:     0x64193bb15492 - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   39:     0x64193bb15492 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   40:     0x64193bb15492 - <std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1} as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x64193bfd6bcf - <alloc[fef50e8eecedd288]::boxed::Box<dyn core[6771d259883166e6]::ops::function::FnOnce<(), Output = ()> + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2249:9
[INFO] [stdout]   42:     0x64193bfd6bcf - <std[128c3efe2914e152]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   43:     0x70c012d7caa4 - <unknown>
[INFO] [stdout]   44:     0x70c012e09a64 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     executor::parser::tests::test_parse_create_file
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 51 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.38s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin nexus`
[INFO] running `Command { std: "docker" "inspect" "4086a268b4adf9c601becd0f8e31101ac576100e5bdb40643e9b64e1a208ed10", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4086a268b4adf9c601becd0f8e31101ac576100e5bdb40643e9b64e1a208ed10", kill_on_drop: false }`
[INFO] [stdout] 4086a268b4adf9c601becd0f8e31101ac576100e5bdb40643e9b64e1a208ed10
