[INFO] cloning repository https://github.com/boorich/mDesk
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/boorich/mDesk" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fboorich%2FmDesk", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fboorich%2FmDesk'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b2f5dcac9cdec7605b71a73f1a2026ed757e8eb0
[INFO] checking boorich/mDesk against try#f16624c7fb52ccf15cd304a9728caf1ef4b9c0d2 for pr-156992
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fboorich%2FmDesk" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/boorich/mDesk
[INFO] finished tweaking git repo https://github.com/boorich/mDesk
[INFO] tweaked toml for git repo https://github.com/boorich/mDesk written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/boorich/mDesk on toolchain f16624c7fb52ccf15cd304a9728caf1ef4b9c0d2
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f16624c7fb52ccf15cd304a9728caf1ef4b9c0d2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/boorich/mDesk 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" "+f16624c7fb52ccf15cd304a9728caf1ef4b9c0d2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+f16624c7fb52ccf15cd304a9728caf1ef4b9c0d2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 109852404aa85e3e07fc250dd2284846f2a5625d1be2065a83143436c46fa78a
[INFO] running `Command { std: "docker" "start" "-a" "109852404aa85e3e07fc250dd2284846f2a5625d1be2065a83143436c46fa78a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "109852404aa85e3e07fc250dd2284846f2a5625d1be2065a83143436c46fa78a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "109852404aa85e3e07fc250dd2284846f2a5625d1be2065a83143436c46fa78a", kill_on_drop: false }`
[INFO] [stdout] 109852404aa85e3e07fc250dd2284846f2a5625d1be2065a83143436c46fa78a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f16624c7fb52ccf15cd304a9728caf1ef4b9c0d2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 36fe33b075fa0dc00ddd4b83cbddad060907f500be19de71b1d507efe7eb285c
[INFO] running `Command { std: "docker" "start" "-a" "36fe33b075fa0dc00ddd4b83cbddad060907f500be19de71b1d507efe7eb285c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling hashbrown v0.15.2
[INFO] [stderr]    Compiling winnow v0.5.40
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling target-lexicon v0.12.16
[INFO] [stderr]    Compiling smallvec v1.14.0
[INFO] [stderr]     Checking once_cell v1.21.1
[INFO] [stderr]    Compiling version-compare v0.2.0
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking log v0.4.26
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]    Compiling cc v1.2.16
[INFO] [stderr]     Checking litemap v0.7.5
[INFO] [stderr]     Checking writeable v0.5.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]     Checking icu_locid_transform_data v1.5.0
[INFO] [stderr]     Checking icu_properties_data v1.5.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking utf16_iter v1.0.5
[INFO] [stderr]    Compiling indexmap v2.8.0
[INFO] [stderr]    Compiling cfg-expr v0.15.8
[INFO] [stderr]     Checking icu_normalizer_data v1.5.0
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]     Checking write16 v1.0.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling gio v0.18.4
[INFO] [stderr]     Checking dioxus-core-types v0.6.2
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling rustversion v1.0.20
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]    Compiling zerocopy v0.8.23
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]    Compiling x11 v2.21.0
[INFO] [stderr]     Checking longest-increasing-subsequence v0.1.0
[INFO] [stderr]    Compiling field-offset v0.3.6
[INFO] [stderr]    Compiling lazy-js-bundle v0.6.2
[INFO] [stderr]    Compiling gtk v0.18.2
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking crossbeam-channel v0.5.14
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]     Checking parking v2.2.1
[INFO] [stderr]    Compiling openssl v0.10.71
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.34
[INFO] [stderr]     Checking unicode-ident v1.0.18
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]    Compiling libxdo-sys v0.11.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking event-listener v5.4.0
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking regex-syntax v0.6.29
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]     Checking endi v1.1.0
[INFO] [stderr]     Checking event-listener-strategy v0.5.3
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling openssl-sys v0.9.106
[INFO] [stderr]     Checking rustls-pemfile v1.0.4
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling dioxus-document v0.6.3
[INFO] [stderr]     Checking const_format v0.2.34
[INFO] [stderr]     Checking dpi v0.1.1
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking adler2 v2.0.0
[INFO] [stderr]     Checking dioxus-cli-config v0.6.3
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking rustls-native-certs v0.6.3
[INFO] [stderr]     Checking miniz_oxide v0.8.5
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking socket2 v0.5.8
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking xdg-home v1.3.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking ordered-stream v0.2.0
[INFO] [stderr]     Checking crc32fast v1.4.2
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling anyhow v1.0.97
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking anstyle-parse v0.2.6
[INFO] [stderr]     Checking flate2 v1.1.0
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]    Compiling dioxus-interpreter-js v0.6.2
[INFO] [stderr]     Checking data-encoding v2.8.0
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking colorchoice v1.0.3
[INFO] [stderr]    Compiling wry v0.45.0
[INFO] [stderr]     Checking anstyle-query v1.1.2
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]    Compiling rfd v0.14.1
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]    Compiling schemars v0.8.22
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]     Checking libxdo v0.6.0
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]     Checking anstream v0.6.18
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking deranged v0.4.1
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]    Compiling dioxus-config-macro v0.6.2
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]    Compiling dioxus-desktop v0.6.3
[INFO] [stderr]     Checking sledgehammer_utils v0.3.1
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking webpki-roots v0.25.4
[INFO] [stderr]     Checking pollster v0.3.0
[INFO] [stderr]     Checking dyn-clone v1.0.19
[INFO] [stderr]     Checking raw-window-handle v0.5.2
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking iana-time-zone v0.1.61
[INFO] [stderr]     Checking home v0.5.11
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking nom v8.0.0
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking bytecount v0.6.8
[INFO] [stderr]     Checking clap_builder v4.5.32
[INFO] [stderr]     Checking num-cmp v0.1.0
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking anymap v0.12.1
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking fraction v0.13.1
[INFO] [stderr]     Checking fancy-regex v0.11.0
[INFO] [stderr]    Compiling zvariant_utils v1.1.0
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking dioxus-rsx v0.6.2
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling darling_core v0.20.10
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]     Checking iso8601 v0.6.2
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling warnings-macro v0.2.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling enumflags2_derive v0.7.11
[INFO] [stderr]     Checking tokio v1.44.1
[INFO] [stderr]    Compiling const-serialize-macro v0.6.2
[INFO] [stderr]    Compiling dioxus-core-macro v0.6.3
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling dioxus-html-internal-macro v0.6.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling sledgehammer_bindgen_macro v0.6.0
[INFO] [stderr]    Compiling dlopen2_derive v0.4.0
[INFO] [stderr]    Compiling schemars_derive v0.8.22
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]     Checking tungstenite v0.23.0
[INFO] [stderr]     Checking dlopen2 v0.7.0
[INFO] [stderr]    Compiling dioxus-router-macro v0.6.3
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking generational-box v0.6.2
[INFO] [stderr]     Checking warnings v0.2.1
[INFO] [stderr]     Checking yoke v0.7.5
[INFO] [stderr]     Checking sledgehammer_bindgen v0.6.0
[INFO] [stderr]     Checking zerovec v0.10.4
[INFO] [stderr]    Compiling darling_macro v0.20.10
[INFO] [stderr]     Checking thiserror v2.0.12
[INFO] [stderr]    Compiling darling v0.20.10
[INFO] [stderr]    Compiling enumset_derive v0.10.0
[INFO] [stderr]     Checking tinystr v0.7.6
[INFO] [stderr]     Checking icu_collections v1.5.0
[INFO] [stderr]     Checking icu_locid v1.5.0
[INFO] [stderr]     Checking clap v4.5.32
[INFO] [stderr]     Checking enumset v1.1.5
[INFO] [stderr]     Checking icu_provider v1.5.0
[INFO] [stderr]     Checking icu_locid_transform v1.5.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking icu_properties v1.5.1
[INFO] [stderr]     Checking tokio-util v0.7.14
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking tokio-io-timeout v1.2.0
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]    Compiling toml_datetime v0.6.3
[INFO] [stderr]    Compiling serde_spanned v0.6.8
[INFO] [stderr]    Compiling const-serialize v0.6.2
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling toml_edit v0.20.2
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]     Checking euclid v0.22.11
[INFO] [stderr]     Checking enumflags2 v0.7.11
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking uuid v1.16.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking chrono v0.4.40
[INFO] [stderr]    Compiling manganis-core v0.6.2
[INFO] [stderr]     Checking envy v0.4.2
[INFO] [stderr]     Checking icu_normalizer v1.5.0
[INFO] [stderr]     Checking keyboard-types v0.7.0
[INFO] [stderr]     Checking nix v0.27.1
[INFO] [stderr]    Compiling manganis-macro v0.6.2
[INFO] [stderr]     Checking cfb v0.7.3
[INFO] [stderr]     Checking manganis v0.6.2
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking dioxus-core v0.6.3
[INFO] [stderr]     Checking tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling toml v0.8.2
[INFO] [stderr]    Compiling proc-macro-crate v2.0.2
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]    Compiling system-deps v6.2.2
[INFO] [stderr]     Checking global-hotkey v0.5.5
[INFO] [stderr]     Checking infer v0.11.0
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling glib-macros v0.18.5
[INFO] [stderr]    Compiling gtk3-macros v0.18.2
[INFO] [stderr]    Compiling zvariant_derive v4.0.0
[INFO] [stderr]    Compiling zbus_macros v4.0.1
[INFO] [stderr]     Checking webbrowser v0.8.15
[INFO] [stderr]     Checking dioxus-logger v0.6.2
[INFO] [stderr]     Checking tracing-appender v0.2.3
[INFO] [stderr]     Checking mcp-core v1.0.7 (https://github.com/modelcontextprotocol/rust-sdk.git#31493cfb)
[INFO] [stderr]    Compiling glib-sys v0.18.1
[INFO] [stderr]    Compiling gobject-sys v0.18.0
[INFO] [stderr]    Compiling gio-sys v0.18.1
[INFO] [stderr]    Compiling gdk-sys v0.18.2
[INFO] [stderr]    Compiling gdk-pixbuf-sys v0.18.0
[INFO] [stderr]    Compiling pango-sys v0.18.0
[INFO] [stderr]    Compiling cairo-sys-rs v0.18.2
[INFO] [stderr]    Compiling atk-sys v0.18.2
[INFO] [stderr]    Compiling gtk-sys v0.18.2
[INFO] [stderr]    Compiling javascriptcore-rs-sys v1.1.1
[INFO] [stderr]    Compiling soup3-sys v0.5.0
[INFO] [stderr]    Compiling webkit2gtk-sys v2.0.1
[INFO] [stderr]    Compiling gdkx11-sys v0.18.2
[INFO] [stderr]     Checking dioxus-signals v0.6.3
[INFO] [stderr]     Checking dioxus-history v0.6.2
[INFO] [stderr]     Checking dioxus-devtools-types v0.6.2
[INFO] [stderr]     Checking zvariant v4.0.0
[INFO] [stderr]     Checking dioxus-hooks v0.6.2
[INFO] [stderr]     Checking dioxus-devtools v0.6.2
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking dioxus-html v0.6.3
[INFO] [stderr]     Checking gdkwayland-sys v0.18.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking glib v0.18.5
[INFO] [stderr]     Checking zbus_names v3.0.0
[INFO] [stderr]     Checking libappindicator-sys v0.9.0
[INFO] [stderr]     Checking zbus v4.0.1
[INFO] [stderr]     Checking dioxus-lib v0.6.2
[INFO] [stderr]     Checking dioxus-router v0.6.3
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking hyper-timeout v0.4.1
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking eventsource-client v0.12.2
[INFO] [stderr]     Checking jsonschema v0.17.1
[INFO] [stderr]     Checking mcp-client v1.0.7 (https://github.com/modelcontextprotocol/rust-sdk.git#31493cfb)
[INFO] [stderr]     Checking ashpd v0.8.1
[INFO] [stderr]     Checking cairo-rs v0.18.5
[INFO] [stderr]     Checking atk v0.18.2
[INFO] [stderr]     Checking javascriptcore-rs v1.1.2
[INFO] [stderr]     Checking gdk-pixbuf v0.18.5
[INFO] [stderr]     Checking pango v0.18.3
[INFO] [stderr]     Checking soup3 v0.5.0
[INFO] [stderr]     Checking gdk v0.18.2
[INFO] [stderr]     Checking gdkx11 v0.18.2
[INFO] [stderr]     Checking libappindicator v0.9.0
[INFO] [stderr]     Checking webkit2gtk v2.0.1
[INFO] [stderr]     Checking muda v0.15.3
[INFO] [stderr]     Checking tao v0.30.8
[INFO] [stderr]     Checking muda v0.11.5
[INFO] [stderr]     Checking tray-icon v0.19.3
[INFO] [stderr]     Checking dioxus v0.6.3
[INFO] [stderr]     Checking m-desk-new v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ToolExecutionProps`, `ToolExecutionStatus`, and `ToolSuggestionProps`
[INFO] [stdout]  --> src/components/message.rs:2:58
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::components::tool_suggestion::{ToolSuggestion, ToolSuggestionProps, ToolExecution, ToolExecutionProps, ToolExecutionStatus};
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RecoveryStrategy`
[INFO] [stdout]   --> src/components/chat.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::components::validation_pipeline::{ValidationPipeline, ValidationState, RecoveryStrategy};
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Result`
[INFO] [stdout]   --> src/components/chat.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use anyhow::Result;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionProps`, `ToolExecutionStatus`, and `ToolSuggestionProps`
[INFO] [stdout]  --> src/components/message.rs:2:58
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::components::tool_suggestion::{ToolSuggestion, ToolSuggestionProps, ToolExecution, ToolExecutionProps, ToolExecutionStatus};
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RecoveryStrategy`
[INFO] [stdout]   --> src/components/chat.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::components::validation_pipeline::{ValidationPipeline, ValidationState, RecoveryStrategy};
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Result`
[INFO] [stdout]   --> src/components/chat.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use anyhow::Result;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/components/tool_suggestion.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/components/tool_manager.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/components/tool_manager.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionProps` and `ToolSuggestionProps`
[INFO] [stdout]  --> src/components/tool_manager.rs:9:42
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::components::tool_suggestion::{ToolSuggestionProps, ToolExecutionProps, ToolExecutionStatus};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/components/server_manager.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientCapabilities`, `ClientInfo`, `Error as TransportError`, `McpClient`, `McpService`, and `StdioTransport`
[INFO] [stdout]  --> src/components/server_manager.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use mcp_client::{transport::{StdioTransport, Error as TransportError}, 
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     ClientInfo, ClientCapabilities, McpClient, McpService, Transport, McpClientTrait
[INFO] [stdout]   |     ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server_config`
[INFO] [stdout]   --> src/components/server_manager.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |             use crate::server_config;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/components/tool_suggestion.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/components/tool_manager.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/components/tool_manager.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionProps` and `ToolSuggestionProps`
[INFO] [stdout]  --> src/components/tool_manager.rs:9:42
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::components::tool_suggestion::{ToolSuggestionProps, ToolExecutionProps, ToolExecutionStatus};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/components/server_manager.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientCapabilities`, `ClientInfo`, `Error as TransportError`, `McpClient`, `McpService`, and `StdioTransport`
[INFO] [stdout]  --> src/components/server_manager.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use mcp_client::{transport::{StdioTransport, Error as TransportError}, 
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     ClientInfo, ClientCapabilities, McpClient, McpService, Transport, McpClientTrait
[INFO] [stdout]   |     ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `error`, and `info`
[INFO] [stdout]  --> src/components/parameter_validation.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/components/validation_pipeline.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{debug, error, info, warn, instrument};
[INFO] [stdout]   |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server_config`
[INFO] [stdout]   --> src/components/server_manager.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |             use crate::server_config;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> src/openrouter/mod.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn, error, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> src/server_config.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, info, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientCapabilities`, `ClientInfo`, `McpClientTrait`, `StdioTransport`, and `Transport`
[INFO] [stdout]   --> src/lib.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ClientCapabilities, ClientInfo, McpClient, McpClientTrait, McpService,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^             ^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     transport::stdio::{StdioTransport, StdioTransportHandle},
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     Transport,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `error`, and `info`
[INFO] [stdout]  --> src/components/parameter_validation.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/components/validation_pipeline.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{debug, error, info, warn, instrument};
[INFO] [stdout]   |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> src/openrouter/mod.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn, error, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> src/server_config.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, info, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientCapabilities`, `ClientInfo`, `McpClientTrait`, `StdioTransport`, and `Transport`
[INFO] [stdout]   --> src/lib.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ClientCapabilities, ClientInfo, McpClient, McpClientTrait, McpService,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^             ^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     transport::stdio::{StdioTransport, StdioTransportHandle},
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     Transport,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dioxus::prelude`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use dioxus::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dioxus::prelude`
[INFO] [stdout]  --> src/components/tool_manager.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use dioxus::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool_name_clone`
[INFO] [stdout]    --> src/components/message.rs:412:41
[INFO] [stdout]     |
[INFO] [stdout] 412 | ...                   let tool_name_clone = tool_name.clone();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tool_name_clone`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dioxus::prelude`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use dioxus::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dioxus::prelude`
[INFO] [stdout]  --> src/components/tool_manager.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use dioxus::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool_name_clone`
[INFO] [stdout]    --> src/components/message.rs:412:41
[INFO] [stdout]     |
[INFO] [stdout] 412 | ...                   let tool_name_clone = tool_name.clone();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tool_name_clone`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/chat.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut all_tools = mcp_tools.clone();
[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/components/chat.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut fetch_all_servers_tools = {
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/chat.rs:263:9
[INFO] [stdout]     |
[INFO] [stdout] 263 |     let mut load_models = move |_| {
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/chat.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let mut active_tool: Option<(String, Value)> = None;
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `errors`
[INFO] [stdout]     --> src/components/chat.rs:1033:69
[INFO] [stdout]      |
[INFO] [stdout] 1033 |                 ValidationState::Recovered { recovered, strategies, errors, .. } => {
[INFO] [stdout]      |                                                                     ^^^^^^ help: try ignoring the field: `errors: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reasoning`
[INFO] [stdout]    --> src/components/chat.rs:793:65
[INFO] [stdout]     |
[INFO] [stdout] 793 | ...                   let reasoning = best_match.reasoning.clone();
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reasoning`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/components/chat.rs:718:33
[INFO] [stdout]     |
[INFO] [stdout] 718 | ...                   let model = model_selection.read().selected_model.clone();
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx`
[INFO] [stdout]    --> src/components/chat.rs:401:22
[INFO] [stdout]     |
[INFO] [stdout] 401 |             let (tx, rx) = tokio::sync::oneshot::channel();
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `validation_pipeline`
[INFO] [stdout]    --> src/components/chat.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let validation_pipeline = ValidationPipeline::new()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_validation_pipeline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_tool`
[INFO] [stdout]    --> src/components/chat.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let mut active_tool: Option<(String, Value)> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/chat.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut all_tools = mcp_tools.clone();
[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/components/chat.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut fetch_all_servers_tools = {
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/chat.rs:263:9
[INFO] [stdout]     |
[INFO] [stdout] 263 |     let mut load_models = move |_| {
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/chat.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let mut active_tool: Option<(String, Value)> = None;
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `errors`
[INFO] [stdout]     --> src/components/chat.rs:1033:69
[INFO] [stdout]      |
[INFO] [stdout] 1033 |                 ValidationState::Recovered { recovered, strategies, errors, .. } => {
[INFO] [stdout]      |                                                                     ^^^^^^ help: try ignoring the field: `errors: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reasoning`
[INFO] [stdout]    --> src/components/chat.rs:793:65
[INFO] [stdout]     |
[INFO] [stdout] 793 | ...                   let reasoning = best_match.reasoning.clone();
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reasoning`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/components/chat.rs:718:33
[INFO] [stdout]     |
[INFO] [stdout] 718 | ...                   let model = model_selection.read().selected_model.clone();
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx`
[INFO] [stdout]    --> src/components/chat.rs:401:22
[INFO] [stdout]     |
[INFO] [stdout] 401 |             let (tx, rx) = tokio::sync::oneshot::channel();
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `validation_pipeline`
[INFO] [stdout]    --> src/components/chat.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let validation_pipeline = ValidationPipeline::new()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_validation_pipeline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_tool`
[INFO] [stdout]    --> src/components/chat.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let mut active_tool: Option<(String, Value)> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/server_manager.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn ServerManager(mut props: ServerManagerProps) -> Element {
[INFO] [stdout]    |                      ----^^^^^
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `is_disabled` is never read
[INFO] [stdout]    --> src/components/server_manager.rs:433:71
[INFO] [stdout]     |
[INFO] [stdout] 433 | ...                   let mut is_disabled = false;
[INFO] [stdout]     |                                             ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 439 | ...                           is_disabled = false;
[INFO] [stdout]     |                               ------------------- `is_disabled` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/server_manager.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn ServerManager(mut props: ServerManagerProps) -> Element {
[INFO] [stdout]    |                      ----^^^^^
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `is_disabled` is never read
[INFO] [stdout]    --> src/components/server_manager.rs:433:71
[INFO] [stdout]     |
[INFO] [stdout] 433 | ...                   let mut is_disabled = false;
[INFO] [stdout]     |                                             ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 439 | ...                           is_disabled = false;
[INFO] [stdout]     |                               ------------------- `is_disabled` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server_config.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut env = HashMap::new();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server_config.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut env = HashMap::new();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mcp_core::Tool`
[INFO] [stdout]  --> tests/component_tests/tool_suggestion_test.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use mcp_core::Tool;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::json`
[INFO] [stdout]  --> tests/component_tests/tool_suggestion_test.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use serde_json::json;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Value`
[INFO] [stdout]  --> tests/component_tests/tool_selection_cache_test.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde_json::{json, Value};
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> tests/component_tests/tool_selection_cache_test.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `alternative_tools`
[INFO] [stdout]    --> tests/component_tests/validation_pipeline_test.rs:100:61
[INFO] [stdout]     |
[INFO] [stdout] 100 |         ValidationState::Invalid { input: original, errors, alternative_tools } => {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `alternative_tools: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_tools` is never used
[INFO] [stdout]  --> tests/component_tests/tool_selection_cache_test.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn create_test_tools() -> Vec<Tool> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_selection` is never used
[INFO] [stdout]   --> tests/component_tests/tool_selection_cache_test.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn create_test_selection() -> RankedToolSelection {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error as McpError`
[INFO] [stdout]  --> src/main.rs:5:37
[INFO] [stdout]   |
[INFO] [stdout] 5 |     ClientCapabilities, ClientInfo, Error as McpError, McpClient, McpClientTrait, McpService,
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocol::JsonRpcMessage`
[INFO] [stdout]  --> src/main.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use mcp_core::{protocol::JsonRpcMessage, Resource as McpResource, Tool};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use serde_json::Value;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionProps`, `ToolExecutionStatus`, and `ToolSuggestionProps`
[INFO] [stdout]  --> src/components/message.rs:2:58
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::components::tool_suggestion::{ToolSuggestion, ToolSuggestionProps, ToolExecution, ToolExecutionProps, ToolExecutionStatus};
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error as McpError`
[INFO] [stdout]  --> src/main.rs:5:37
[INFO] [stdout]   |
[INFO] [stdout] 5 |     ClientCapabilities, ClientInfo, Error as McpError, McpClient, McpClientTrait, McpService,
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocol::JsonRpcMessage`
[INFO] [stdout]  --> src/main.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use mcp_core::{protocol::JsonRpcMessage, Resource as McpResource, Tool};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use serde_json::Value;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionProps`, `ToolExecutionStatus`, and `ToolSuggestionProps`
[INFO] [stdout]  --> src/components/message.rs:2:58
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::components::tool_suggestion::{ToolSuggestion, ToolSuggestionProps, ToolExecution, ToolExecutionProps, ToolExecutionStatus};
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RecoveryStrategy`
[INFO] [stdout]   --> src/components/chat.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::components::validation_pipeline::{ValidationPipeline, ValidationState, RecoveryStrategy};
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Result`
[INFO] [stdout]   --> src/components/chat.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use anyhow::Result;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RecoveryStrategy`
[INFO] [stdout]   --> src/components/chat.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::components::validation_pipeline::{ValidationPipeline, ValidationState, RecoveryStrategy};
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Result`
[INFO] [stdout]   --> src/components/chat.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use anyhow::Result;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/components/tool_suggestion.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/components/tool_manager.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/components/tool_suggestion.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/components/tool_manager.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionProps` and `ToolSuggestionProps`
[INFO] [stdout]  --> src/components/tool_manager.rs:9:42
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::components::tool_suggestion::{ToolSuggestionProps, ToolExecutionProps, ToolExecutionStatus};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/components/tool_manager.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/components/tool_manager.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionProps` and `ToolSuggestionProps`
[INFO] [stdout]  --> src/components/tool_manager.rs:9:42
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::components::tool_suggestion::{ToolSuggestionProps, ToolExecutionProps, ToolExecutionStatus};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/components/server_manager.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientCapabilities`, `ClientInfo`, `Error as TransportError`, `McpClient`, `McpService`, and `StdioTransport`
[INFO] [stdout]  --> src/components/server_manager.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use mcp_client::{transport::{StdioTransport, Error as TransportError}, 
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     ClientInfo, ClientCapabilities, McpClient, McpService, Transport, McpClientTrait
[INFO] [stdout]   |     ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/components/server_manager.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientCapabilities`, `ClientInfo`, `Error as TransportError`, `McpClient`, `McpService`, and `StdioTransport`
[INFO] [stdout]  --> src/components/server_manager.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use mcp_client::{transport::{StdioTransport, Error as TransportError}, 
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     ClientInfo, ClientCapabilities, McpClient, McpService, Transport, McpClientTrait
[INFO] [stdout]   |     ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server_config`
[INFO] [stdout]   --> src/components/server_manager.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |             use crate::server_config;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server_config`
[INFO] [stdout]   --> src/components/server_manager.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |             use crate::server_config;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `error`, and `info`
[INFO] [stdout]  --> src/components/parameter_validation.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `error`, and `info`
[INFO] [stdout]  --> src/components/parameter_validation.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/components/validation_pipeline.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{debug, error, info, warn, instrument};
[INFO] [stdout]   |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/components/validation_pipeline.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{debug, error, info, warn, instrument};
[INFO] [stdout]   |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MessageRole`, `MessageView`, and `Message`
[INFO] [stdout]   --> src/components/mod.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use message::{Message, MessageRole, MessageView};
[INFO] [stdout]    |                   ^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MessageRole`, `MessageView`, and `Message`
[INFO] [stdout]   --> src/components/mod.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use message::{Message, MessageRole, MessageView};
[INFO] [stdout]    |                   ^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionStatus`, `ToolExecution`, and `ToolSuggestion`
[INFO] [stdout]   --> src/components/mod.rs:14:27
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use tool_suggestion::{ToolSuggestion, ToolExecution, ToolExecutionStatus};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolInteraction` and `ToolManager`
[INFO] [stdout]   --> src/components/mod.rs:15:24
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use tool_manager::{ToolManager, ToolInteraction};
[INFO] [stdout]    |                        ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `server_manager::ServerManager`
[INFO] [stdout]   --> src/components/mod.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub use server_manager::ServerManager;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RankedToolSelection` and `ToolMatch`
[INFO] [stdout]   --> src/components/mod.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use tool_selection::{RankedToolSelection, ToolMatch};
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ValidationPipeline` and `ValidationState`
[INFO] [stdout]   --> src/components/mod.rs:19:31
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub use validation_pipeline::{ValidationPipeline, ValidationState};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tool_selection_cache::ToolSelectionCache`
[INFO] [stdout]   --> src/components/mod.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub use tool_selection_cache::ToolSelectionCache;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `format::FmtSpan`
[INFO] [stdout]  --> src/logging.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fmt::{self, format::FmtSpan},
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolExecutionStatus`, `ToolExecution`, and `ToolSuggestion`
[INFO] [stdout]   --> src/components/mod.rs:14:27
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use tool_suggestion::{ToolSuggestion, ToolExecution, ToolExecutionStatus};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolInteraction` and `ToolManager`
[INFO] [stdout]   --> src/components/mod.rs:15:24
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use tool_manager::{ToolManager, ToolInteraction};
[INFO] [stdout]    |                        ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `server_manager::ServerManager`
[INFO] [stdout]   --> src/components/mod.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub use server_manager::ServerManager;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RankedToolSelection` and `ToolMatch`
[INFO] [stdout]   --> src/components/mod.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use tool_selection::{RankedToolSelection, ToolMatch};
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ValidationPipeline` and `ValidationState`
[INFO] [stdout]   --> src/components/mod.rs:19:31
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub use validation_pipeline::{ValidationPipeline, ValidationState};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> src/openrouter/mod.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn, error, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tool_selection_cache::ToolSelectionCache`
[INFO] [stdout]   --> src/components/mod.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub use tool_selection_cache::ToolSelectionCache;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `format::FmtSpan`
[INFO] [stdout]  --> src/logging.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fmt::{self, format::FmtSpan},
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> src/openrouter/mod.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn, error, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> src/server_config.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, info, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> src/server_config.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, info, instrument};
[INFO] [stdout]   |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dioxus::prelude`
[INFO] [stdout]  --> src/components/tool_manager.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use dioxus::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ServiceExt`
[INFO] [stdout]   --> src/main.rs:12:31
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tower::{timeout::Timeout, ServiceExt};
[INFO] [stdout]    |                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool_name_clone`
[INFO] [stdout]    --> src/components/message.rs:412:41
[INFO] [stdout]     |
[INFO] [stdout] 412 | ...                   let tool_name_clone = tool_name.clone();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tool_name_clone`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/chat.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut all_tools = mcp_tools.clone();
[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/components/chat.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut fetch_all_servers_tools = {
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/chat.rs:263:9
[INFO] [stdout]     |
[INFO] [stdout] 263 |     let mut load_models = move |_| {
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/chat.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let mut active_tool: Option<(String, Value)> = None;
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `errors`
[INFO] [stdout]     --> src/components/chat.rs:1033:69
[INFO] [stdout]      |
[INFO] [stdout] 1033 |                 ValidationState::Recovered { recovered, strategies, errors, .. } => {
[INFO] [stdout]      |                                                                     ^^^^^^ help: try ignoring the field: `errors: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reasoning`
[INFO] [stdout]    --> src/components/chat.rs:793:65
[INFO] [stdout]     |
[INFO] [stdout] 793 | ...                   let reasoning = best_match.reasoning.clone();
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reasoning`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/components/chat.rs:718:33
[INFO] [stdout]     |
[INFO] [stdout] 718 | ...                   let model = model_selection.read().selected_model.clone();
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx`
[INFO] [stdout]    --> src/components/chat.rs:401:22
[INFO] [stdout]     |
[INFO] [stdout] 401 |             let (tx, rx) = tokio::sync::oneshot::channel();
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `validation_pipeline`
[INFO] [stdout]    --> src/components/chat.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let validation_pipeline = ValidationPipeline::new()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_validation_pipeline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_tool`
[INFO] [stdout]    --> src/components/chat.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let mut active_tool: Option<(String, Value)> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dioxus::prelude`
[INFO] [stdout]  --> src/components/tool_manager.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use dioxus::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ServiceExt`
[INFO] [stdout]   --> src/main.rs:12:31
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tower::{timeout::Timeout, ServiceExt};
[INFO] [stdout]    |                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool_name_clone`
[INFO] [stdout]    --> src/components/message.rs:412:41
[INFO] [stdout]     |
[INFO] [stdout] 412 | ...                   let tool_name_clone = tool_name.clone();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tool_name_clone`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/server_manager.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn ServerManager(mut props: ServerManagerProps) -> Element {
[INFO] [stdout]    |                      ----^^^^^
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `is_disabled` is never read
[INFO] [stdout]    --> src/components/server_manager.rs:433:71
[INFO] [stdout]     |
[INFO] [stdout] 433 | ...                   let mut is_disabled = false;
[INFO] [stdout]     |                                             ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 439 | ...                           is_disabled = false;
[INFO] [stdout]     |                               ------------------- `is_disabled` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/chat.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut all_tools = mcp_tools.clone();
[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/components/chat.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut fetch_all_servers_tools = {
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/chat.rs:263:9
[INFO] [stdout]     |
[INFO] [stdout] 263 |     let mut load_models = move |_| {
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/chat.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let mut active_tool: Option<(String, Value)> = None;
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `errors`
[INFO] [stdout]     --> src/components/chat.rs:1033:69
[INFO] [stdout]      |
[INFO] [stdout] 1033 |                 ValidationState::Recovered { recovered, strategies, errors, .. } => {
[INFO] [stdout]      |                                                                     ^^^^^^ help: try ignoring the field: `errors: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reasoning`
[INFO] [stdout]    --> src/components/chat.rs:793:65
[INFO] [stdout]     |
[INFO] [stdout] 793 | ...                   let reasoning = best_match.reasoning.clone();
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reasoning`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/components/chat.rs:718:33
[INFO] [stdout]     |
[INFO] [stdout] 718 | ...                   let model = model_selection.read().selected_model.clone();
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx`
[INFO] [stdout]    --> src/components/chat.rs:401:22
[INFO] [stdout]     |
[INFO] [stdout] 401 |             let (tx, rx) = tokio::sync::oneshot::channel();
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `validation_pipeline`
[INFO] [stdout]    --> src/components/chat.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let validation_pipeline = ValidationPipeline::new()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_validation_pipeline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_tool`
[INFO] [stdout]    --> src/components/chat.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let mut active_tool: Option<(String, Value)> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server_config.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut env = HashMap::new();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/server_manager.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn ServerManager(mut props: ServerManagerProps) -> Element {
[INFO] [stdout]    |                      ----^^^^^
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `is_disabled` is never read
[INFO] [stdout]    --> src/components/server_manager.rs:433:71
[INFO] [stdout]     |
[INFO] [stdout] 433 | ...                   let mut is_disabled = false;
[INFO] [stdout]     |                                             ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 439 | ...                           is_disabled = false;
[INFO] [stdout]     |                               ------------------- `is_disabled` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |     let mut resources = use_signal(Vec::<McpResource>::new);
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 |     let mut openrouter_credit = use_signal(|| None::<openrouter::CreditBalanceResponse>);
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |     let mut load_credit_balance = {
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:601:9
[INFO] [stdout]     |
[INFO] [stdout] 601 |     let mut fetch_tools = {
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:1513:37
[INFO] [stdout]      |
[INFO] [stdout] 1513 | ...                   let mut server_tools = use_signal(|| HashMap::<String, Vec<Tool>>::new());
[INFO] [stdout]      |                           ----^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format_currency`
[INFO] [stdout]    --> src/main.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |     let format_currency = |value: f64| -> String {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_format_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `list_tools`
[INFO] [stdout]    --> src/main.rs:620:9
[INFO] [stdout]     |
[INFO] [stdout] 620 |     let list_tools = {
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_list_tools`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `original` and `fixed` are never read
[INFO] [stdout]   --> src/components/tool_selection.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Fixed {
[INFO] [stdout]    |     ----- fields in this variant
[INFO] [stdout] 15 |         original: Value,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 16 |         fixed: Value,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValidationStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Other` is never constructed
[INFO] [stdout]   --> src/components/validation_pipeline.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub enum RecoveryStrategy {
[INFO] [stdout]    |          ---------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 46 |     Other { description: String },
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RecoveryStrategy` 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 `is_valid`, `get_value`, `get_changes`, `get_errors`, and `get_alternative_tools` are never used
[INFO] [stdout]   --> src/components/validation_pipeline.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | impl ValidationState {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] 50 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn get_value(&self) -> Option<&Value> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn get_changes(&self) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn get_errors(&self) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn get_alternative_tools(&self) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_available_tools` is never used
[INFO] [stdout]    --> src/components/validation_pipeline.rs:185:12
[INFO] [stdout]     |
[INFO] [stdout] 144 | impl ValidationPipeline {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub fn update_available_tools(&mut self, tools: Vec<Tool>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_tracing_initialized` is never used
[INFO] [stdout]    --> src/logging.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn is_tracing_initialized() -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, and `usage` are never read
[INFO] [stdout]   --> src/openrouter/mod.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 37 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 38 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 39 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 40 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 41 |     pub choices: Vec<ChatCompletionChoice>,
[INFO] [stdout] 42 |     pub usage: Option<Usage>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `index` and `finish_reason` are never read
[INFO] [stdout]   --> src/openrouter/mod.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct ChatCompletionChoice {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout] 47 |     pub index: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 48 |     pub message: ChatMessage,
[INFO] [stdout] 49 |     pub finish_reason: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionChoice` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `prompt_tokens`, `completion_tokens`, and `total_tokens` are never read
[INFO] [stdout]   --> src/openrouter/mod.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct Usage {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 54 |     pub prompt_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 55 |     pub completion_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 56 |     pub total_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Usage` 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 `ToolSelector` is never constructed
[INFO] [stdout]    --> src/openrouter/mod.rs:358:12
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub struct ToolSelector;
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `g` is never used
[INFO] [stdout]   --> src/server_config.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const g: fn() -> () = || ();
[INFO] [stdout]    |           ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/server_config.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl ServerConfig {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 32 |     /// Create a new server configuration
[INFO] [stdout] 33 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_default` is never used
[INFO] [stdout]    --> src/server_config.rs:121:12
[INFO] [stdout]     |
[INFO] [stdout]  87 | impl ServerConfigs {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn get_default(&self) -> Option<&ServerConfig> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/main.rs:1003:37
[INFO] [stdout]      |
[INFO] [stdout] 1003 | / ...                   rsx! {
[INFO] [stdout] 1004 | | ...                       div { 
[INFO] [stdout] 1005 | | ...                           key: "{server.id}",
[INFO] [stdout] 1006 | | ...                           class: status_class,
[INFO] [stdout] ...    |
[INFO] [stdout] 1033 | | ...                   };
[INFO] [stdout]      | |_______________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1003 |                                     let _ = rsx! {
[INFO] [stdout]      |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server_config.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut env = HashMap::new();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |     let mut resources = use_signal(Vec::<McpResource>::new);
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 |     let mut openrouter_credit = use_signal(|| None::<openrouter::CreditBalanceResponse>);
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |     let mut load_credit_balance = {
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:601:9
[INFO] [stdout]     |
[INFO] [stdout] 601 |     let mut fetch_tools = {
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/main.rs:1513:37
[INFO] [stdout]      |
[INFO] [stdout] 1513 | ...                   let mut server_tools = use_signal(|| HashMap::<String, Vec<Tool>>::new());
[INFO] [stdout]      |                           ----^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format_currency`
[INFO] [stdout]    --> src/main.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |     let format_currency = |value: f64| -> String {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_format_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `list_tools`
[INFO] [stdout]    --> src/main.rs:620:9
[INFO] [stdout]     |
[INFO] [stdout] 620 |     let list_tools = {
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_list_tools`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `original` and `fixed` are never read
[INFO] [stdout]   --> src/components/tool_selection.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Fixed {
[INFO] [stdout]    |     ----- fields in this variant
[INFO] [stdout] 15 |         original: Value,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 16 |         fixed: Value,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValidationStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Other` is never constructed
[INFO] [stdout]   --> src/components/validation_pipeline.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub enum RecoveryStrategy {
[INFO] [stdout]    |          ---------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 46 |     Other { description: String },
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RecoveryStrategy` 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 `is_valid`, `get_value`, `get_changes`, `get_errors`, and `get_alternative_tools` are never used
[INFO] [stdout]   --> src/components/validation_pipeline.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | impl ValidationState {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] 50 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn get_value(&self) -> Option<&Value> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn get_changes(&self) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn get_errors(&self) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn get_alternative_tools(&self) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_available_tools` is never used
[INFO] [stdout]    --> src/components/validation_pipeline.rs:185:12
[INFO] [stdout]     |
[INFO] [stdout] 144 | impl ValidationPipeline {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub fn update_available_tools(&mut self, tools: Vec<Tool>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_tracing_initialized` is never used
[INFO] [stdout]    --> src/logging.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn is_tracing_initialized() -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, and `usage` are never read
[INFO] [stdout]   --> src/openrouter/mod.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 37 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 38 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 39 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 40 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 41 |     pub choices: Vec<ChatCompletionChoice>,
[INFO] [stdout] 42 |     pub usage: Option<Usage>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `index` and `finish_reason` are never read
[INFO] [stdout]   --> src/openrouter/mod.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct ChatCompletionChoice {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout] 47 |     pub index: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 48 |     pub message: ChatMessage,
[INFO] [stdout] 49 |     pub finish_reason: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionChoice` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `prompt_tokens`, `completion_tokens`, and `total_tokens` are never read
[INFO] [stdout]   --> src/openrouter/mod.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct Usage {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 54 |     pub prompt_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 55 |     pub completion_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 56 |     pub total_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Usage` 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 `ToolSelector` is never constructed
[INFO] [stdout]    --> src/openrouter/mod.rs:358:12
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub struct ToolSelector;
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `g` is never used
[INFO] [stdout]   --> src/server_config.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const g: fn() -> () = || ();
[INFO] [stdout]    |           ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/server_config.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl ServerConfig {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 32 |     /// Create a new server configuration
[INFO] [stdout] 33 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_default` is never used
[INFO] [stdout]    --> src/server_config.rs:121:12
[INFO] [stdout]     |
[INFO] [stdout]  87 | impl ServerConfigs {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn get_default(&self) -> Option<&ServerConfig> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/main.rs:1003:37
[INFO] [stdout]      |
[INFO] [stdout] 1003 | / ...                   rsx! {
[INFO] [stdout] 1004 | | ...                       div { 
[INFO] [stdout] 1005 | | ...                           key: "{server.id}",
[INFO] [stdout] 1006 | | ...                           class: status_class,
[INFO] [stdout] ...    |
[INFO] [stdout] 1033 | | ...                   };
[INFO] [stdout]      | |_______________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1003 |                                     let _ = rsx! {
[INFO] [stdout]      |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 48s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: ashpd v0.8.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "36fe33b075fa0dc00ddd4b83cbddad060907f500be19de71b1d507efe7eb285c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "36fe33b075fa0dc00ddd4b83cbddad060907f500be19de71b1d507efe7eb285c", kill_on_drop: false }`
[INFO] [stdout] 36fe33b075fa0dc00ddd4b83cbddad060907f500be19de71b1d507efe7eb285c
