[INFO] cloning repository https://github.com/rendivs925/vibespeak
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rendivs925/vibespeak" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frendivs925%2Fvibespeak", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frendivs925%2Fvibespeak'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6856557f5f044b9dd1566d6bf2b65a9da378df56
[INFO] checking rendivs925/vibespeak against 79c0559184f27f4433a6fbc260b950d06d4a4889 for pr-162233-crater-rollup
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frendivs925%2Fvibespeak" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/rendivs925/vibespeak
[INFO] finished tweaking git repo https://github.com/rendivs925/vibespeak
[INFO] tweaked toml for git repo https://github.com/rendivs925/vibespeak written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/rendivs925/vibespeak on toolchain 79c0559184f27f4433a6fbc260b950d06d4a4889
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/rendivs925/vibespeak 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" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:82:1
[INFO] [stderr]    |
[INFO] [stderr] 82 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:78:12
[INFO] [stderr]    |
[INFO] [stderr] 78 | homepage = "https://github.com/rendivs925/vibespeak"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 83 | repository = "https://github.com/rendivs925/vibespeak"
[INFO] [stderr]    |              -----------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `vibespeak` (manifest) generated 2 warnings
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2
[INFO] running `Command { std: "docker" "start" "25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2" "/opt/rustwide/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2" "/opt/rustwide/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:82:1
[INFO] [stderr]    |
[INFO] [stderr] 82 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:78:12
[INFO] [stderr]    |
[INFO] [stderr] 78 | homepage = "https://github.com/rendivs925/vibespeak"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 83 | repository = "https://github.com/rendivs925/vibespeak"
[INFO] [stderr]    |              -----------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `vibespeak` (manifest) generated 2 warnings
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.108
[INFO] [stderr]    Compiling bumpalo v3.19.1
[INFO] [stderr]     Checking unicode-ident v1.0.18
[INFO] [stderr]    Compiling wasm-bindgen v0.2.108
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]    Compiling cc v1.2.53
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]     Checking hashbrown v0.15.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking winnow v0.7.12
[INFO] [stderr]    Compiling xxhash-rust v0.8.15
[INFO] [stderr]    Compiling time-core v0.1.7
[INFO] [stderr]    Compiling time-macros v0.2.25
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]    Compiling camino v1.2.2
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling collection_literals v1.0.3
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling interpolator v0.5.0
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]     Checking rusticata-macros v4.1.0
[INFO] [stderr]     Checking send_wrapper v0.6.0
[INFO] [stderr]     Checking self_cell v1.2.2
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling utf8-width v0.1.8
[INFO] [stderr]    Compiling html-escape v0.2.13
[INFO] [stderr]     Checking crc v3.4.0
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling oid-registry v0.6.1
[INFO] [stderr]     Checking indexmap v2.10.0
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling proc-macro-utils v0.10.0
[INFO] [stderr]    Compiling proc-macro-utils v0.8.0
[INFO] [stderr]     Checking time v0.3.45
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.34
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling uuid v1.19.0
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling const_format v0.2.35
[INFO] [stderr]     Checking inventory v0.3.21
[INFO] [stderr]    Compiling manyhow-macros v0.10.4
[INFO] [stderr]     Checking pad-adapter v0.1.1
[INFO] [stderr]     Checking drain_filter_polyfill v0.1.3
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking arc-swap v1.8.0
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling substring v1.4.5
[INFO] [stderr]    Compiling rustix v1.0.8
[INFO] [stderr]     Checking transpose v0.2.3
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking waitgroup v0.1.2
[INFO] [stderr]     Checking primal-check v0.3.4
[INFO] [stderr]    Compiling convert_case v0.7.1
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking nix v0.26.4
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking rustfft v6.4.1
[INFO] [stderr]    Compiling cpal v0.15.3
[INFO] [stderr]    Compiling litrs v0.4.2
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking clap_builder v4.5.54
[INFO] [stderr]     Checking bitvec v1.0.1
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]     Checking nix v0.23.2
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling document-features v0.2.11
[INFO] [stderr]     Checking yasna v0.5.2
[INFO] [stderr]     Checking toml_parser v1.0.1
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking http-range-header v0.4.2
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]     Checking vosk-sys v0.2.0
[INFO] [stderr]     Checking toml_writer v1.0.2
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking libloading v0.8.9
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]    Compiling asn1-rs-impl v0.1.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.108
[INFO] [stderr]    Compiling server_fn_macro v0.6.15
[INFO] [stderr]    Compiling manyhow v0.10.4
[INFO] [stderr]    Compiling asn1-rs-derive v0.4.0
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling zerocopy-derive v0.8.33
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling quote-use-macros v0.8.4
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling quote-use v0.8.4
[INFO] [stderr]    Compiling syn_derive v0.1.8
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]    Compiling attribute-derive-macro v0.9.2
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking block-padding v0.3.3
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]    Compiling server_fn_macro_default v0.6.15
[INFO] [stderr]    Compiling derive-where v1.6.0
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking asn1-rs v0.5.2
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]    Compiling typed-builder-macro v0.18.2
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]    Compiling rstml v0.11.2
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]     Checking ccm v0.5.0
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking cbc v0.1.2
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]     Checking realfft v3.5.0
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]     Checking rubato v0.15.0
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.108
[INFO] [stderr]     Checking evdev v0.12.2
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]    Compiling attribute-derive v0.9.2
[INFO] [stderr]     Checking typed-builder v0.18.2
[INFO] [stderr]     Checking der-parser v8.2.0
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking js-sys v0.3.85
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking x509-parser v0.15.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking p384 v0.13.1
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking serde_qs v0.12.0
[INFO] [stderr]     Checking oco_ref v0.1.1
[INFO] [stderr]     Checking serde_test v1.0.177
[INFO] [stderr]    Compiling leptos_hot_reload v0.6.15
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking x25519-dalek v2.0.1
[INFO] [stderr]     Checking serde_qs v0.13.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking multer v3.1.0
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking toml_datetime v0.7.0
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking linear-map v1.2.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_spanned v1.0.0
[INFO] [stderr]     Checking rcgen v0.11.3
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking vosk v0.3.1
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking toml v0.9.4
[INFO] [stderr]     Checking clap v4.5.54
[INFO] [stderr]    Compiling leptos_macro v0.6.15
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking tungstenite v0.24.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking config v0.14.1
[INFO] [stderr]     Checking tungstenite v0.20.1
[INFO] [stderr]     Checking sdp v0.6.2
[INFO] [stderr]     Checking webrtc-util v0.8.1
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-tungstenite v0.24.0
[INFO] [stderr]     Checking web-sys v0.3.85
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.58
[INFO] [stderr]     Checking serde-wasm-bindgen v0.6.5
[INFO] [stderr]     Checking gloo-timers v0.3.0
[INFO] [stderr]     Checking leptos_config v0.6.15
[INFO] [stderr]     Checking tokio-tungstenite v0.20.1
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking tower-http v0.5.2
[INFO] [stderr]     Checking rtp v0.9.0
[INFO] [stderr]     Checking stun v0.5.1
[INFO] [stderr]     Checking rtcp v0.10.1
[INFO] [stderr]     Checking rtp v0.10.0
[INFO] [stderr]     Checking webrtc-sctp v0.9.1
[INFO] [stderr]     Checking webrtc-mdns v0.6.1
[INFO] [stderr]     Checking webrtc-dtls v0.8.0
[INFO] [stderr]     Checking turn v0.7.1
[INFO] [stderr]     Checking webrtc-srtp v0.11.0
[INFO] [stderr]     Checking webrtc-media v0.7.1
[INFO] [stderr]     Checking interceptor v0.10.0
[INFO] [stderr]     Checking webrtc-data v0.8.1
[INFO] [stderr]     Checking webrtc-ice v0.10.1
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking webrtc v0.9.0
[INFO] [stderr]     Checking hyper-util v0.1.19
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking gloo-utils v0.2.0
[INFO] [stderr]     Checking wasm-streams v0.4.2
[INFO] [stderr]     Checking leptos_reactive v0.6.15
[INFO] [stderr]     Checking console_log v1.0.0
[INFO] [stderr]     Checking gloo-net v0.6.0
[INFO] [stderr]     Checking gloo-net v0.5.0
[INFO] [stderr]     Checking server_fn v0.6.15
[INFO] [stderr]     Checking leptos_server v0.6.15
[INFO] [stderr]     Checking leptos_dom v0.6.15
[INFO] [stderr]     Checking leptos v0.6.15
[INFO] [stderr]     Checking leptos_router v0.6.15
[INFO] [stderr]     Checking leptos_meta v0.6.15
[INFO] [stderr]     Checking vibespeak-frontend v0.1.0 (/opt/rustwide/workdir/frontend)
[INFO] [stdout] warning: unused import: `crate::domain::entities::*`
[INFO] [stdout]  --> frontend/src/infrastructure/local_storage.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::domain::entities::*;
[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: `crate::infrastructure::api_client`
[INFO] [stdout]  --> frontend/src/presentation/pages/dashboard.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::infrastructure::api_client;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wasm_bindgen_futures`
[INFO] [stdout]  --> frontend/src/presentation/pages/dashboard.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use wasm_bindgen_futures;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `web_sys::HtmlAudioElement`
[INFO] [stdout]  --> frontend/src/presentation/pages/dashboard.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use web_sys::HtmlAudioElement;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::infrastructure::api_client as api`
[INFO] [stdout]  --> frontend/src/presentation/pages/remote_control.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::infrastructure::api_client as api;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gloo_timers::future::TimeoutFuture`
[INFO] [stdout]  --> frontend/src/presentation/pages/remote_control.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use gloo_timers::future::TimeoutFuture;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wasm_bindgen::prelude::*`
[INFO] [stdout]  --> frontend/src/presentation/pages/remote_control.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use wasm_bindgen::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wasm_bindgen::JsCast`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use wasm_bindgen::JsCast;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wasm_bindgen_futures`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use wasm_bindgen_futures;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SpeechRecognitionEvent`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:12:47
[INFO] [stdout]    |
[INFO] [stdout] 12 | use web_sys::{MediaStream, SpeechRecognition, SpeechRecognitionEvent};
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::infrastructure::api_client as api`
[INFO] [stdout]  --> frontend/src/presentation/pages/scripts.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::infrastructure::api_client as api;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wasm_bindgen_futures`
[INFO] [stdout]   --> frontend/src/presentation/pages/scripts.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use wasm_bindgen_futures;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SystemSettings`
[INFO] [stdout]  --> frontend/src/presentation/pages/settings.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::domain::entities::{SystemSettings, TailscaleStatus};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::infrastructure::api_client as api`
[INFO] [stdout]  --> frontend/src/presentation/pages/settings.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::infrastructure::api_client as api;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wasm_bindgen_futures`
[INFO] [stdout]  --> frontend/src/presentation/pages/settings.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use wasm_bindgen_futures;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::infrastructure::api_client as api`
[INFO] [stdout]  --> frontend/src/presentation/pages/voice_commands.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::infrastructure::api_client as api;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wasm_bindgen_futures`
[INFO] [stdout]   --> frontend/src/presentation/pages/voice_commands.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use wasm_bindgen_futures;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::infrastructure::api_client as api`
[INFO] [stdout]  --> frontend/src/presentation/pages/workflows.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::infrastructure::api_client as api;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wasm_bindgen_futures`
[INFO] [stdout]   --> frontend/src/presentation/pages/workflows.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use wasm_bindgen_futures;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> frontend/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use presentation::components::ToastContainer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `ToastContainer` in the value namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> frontend/src/lib.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub use presentation::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> frontend/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use presentation::components::ToastContainer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(hidden_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> frontend/src/lib.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use presentation::components::ToastContext;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `ToastContext` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> frontend/src/lib.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub use presentation::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> frontend/src/lib.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use presentation::components::ToastContext;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `presentation::pages::*`
[INFO] [stdout]   --> frontend/src/lib.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use presentation::pages::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `toast_context`
[INFO] [stdout]   --> frontend/src/presentation/pages/dashboard.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let toast_context = expect_context::<ToastContext>();
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_toast_context`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `toast_context`
[INFO] [stdout]   --> frontend/src/presentation/pages/dashboard.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let toast_context = expect_context::<ToastContext>();
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_toast_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `toast_context`
[INFO] [stdout]   --> frontend/src/presentation/pages/dashboard.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let toast_context = expect_context::<ToastContext>();
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_toast_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_commands_count`
[INFO] [stdout]   --> frontend/src/presentation/pages/dashboard.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (commands_count, set_commands_count) = create_signal(0usize);
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_commands_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_workflows_count`
[INFO] [stdout]   --> frontend/src/presentation/pages/dashboard.rs:15:27
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (workflows_count, set_workflows_count) = create_signal(0usize);
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_workflows_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_scripts_count`
[INFO] [stdout]   --> frontend/src/presentation/pages/dashboard.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let (scripts_count, set_scripts_count) = create_signal(0usize);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_scripts_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let (status, set_status) = create_signal("Ready".to_string());
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:16:18
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let (status, set_status) = create_signal("Ready".to_string());
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:17:23
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `screen_stream_for_stop`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let screen_stream_for_stop = screen_stream_ref.clone();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_screen_stream_for_stop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recognition_for_stop`
[INFO] [stdout]   --> frontend/src/presentation/pages/remote_control.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let recognition_for_stop = recognition_ref.clone();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recognition_for_stop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `last_idx_for_start`
[INFO] [stdout]    --> frontend/src/presentation/pages/remote_control.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let last_idx_for_start = last_processed_index.clone();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_idx_for_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recognition_ref`
[INFO] [stdout]    --> frontend/src/presentation/pages/remote_control.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |         let recognition_ref = recognition_ref.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recognition_ref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_text`
[INFO] [stdout]    --> frontend/src/presentation/pages/remote_control.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |         let set_text = set_voice_command_text.clone();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status`
[INFO] [stdout]    --> frontend/src/presentation/pages/remote_control.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let set_status = set_voice_command_status.clone();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recognition_ref`
[INFO] [stdout]    --> frontend/src/presentation/pages/remote_control.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |         let recognition_ref = recognition_ref.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recognition_ref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stream_ref`
[INFO] [stdout]    --> frontend/src/presentation/pages/remote_control.rs:415:13
[INFO] [stdout]     |
[INFO] [stdout] 415 |         let stream_ref = screen_stream_ref.clone();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream_ref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> frontend/src/presentation/pages/scripts.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let delete_script = move |id: String| {
[INFO] [stdout]     |                               ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> frontend/src/presentation/pages/scripts.rs:78:31
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let update_script = move |id: String| {
[INFO] [stdout]    |                               ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]   --> frontend/src/presentation/pages/scripts.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (status, set_status) = create_signal("Loading...".to_string());
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status`
[INFO] [stdout]   --> frontend/src/presentation/pages/scripts.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (status, set_status) = create_signal("Loading...".to_string());
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/scripts.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/scripts.rs:15:23
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_scripts`
[INFO] [stdout]   --> frontend/src/presentation/pages/scripts.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let (scripts, set_scripts) = create_signal::<Vec<Script>>(vec![]);
[INFO] [stdout]    |                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_scripts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let model = model_path.get();
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rate`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let rate = sample_rate.get();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tts`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let tts = enable_tts.get();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_tts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let port = web_server_port.get();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let (status, set_status) = create_signal("Loading settings...".to_string());
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let (status, set_status) = create_signal("Loading settings...".to_string());
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_tailscale_status`
[INFO] [stdout]   --> frontend/src/presentation/pages/settings.rs:22:28
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let (tailscale_status, set_tailscale_status) = create_signal::<Option<TailscaleStatus>>(None);
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_tailscale_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmd_id`
[INFO] [stdout]    --> frontend/src/presentation/pages/voice_commands.rs:341:49
[INFO] [stdout]     |
[INFO] [stdout] 341 | ...                   let cmd_id = cmd.id.clone();
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cmd_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> frontend/src/presentation/pages/voice_commands.rs:119:32
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let delete_command = move |id: String| {
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> frontend/src/presentation/pages/voice_commands.rs:83:32
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let update_command = move |id: String| {
[INFO] [stdout]    |                                ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]   --> frontend/src/presentation/pages/voice_commands.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (status, set_status) = create_signal("Loading...".to_string());
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status`
[INFO] [stdout]   --> frontend/src/presentation/pages/voice_commands.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (status, set_status) = create_signal("Loading...".to_string());
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/voice_commands.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/voice_commands.rs:15:23
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_commands`
[INFO] [stdout]   --> frontend/src/presentation/pages/voice_commands.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let (commands, set_commands) = create_signal::<Vec<Command>>(vec![]);
[INFO] [stdout]    |                    ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_commands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> frontend/src/presentation/pages/workflows.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let delete_workflow = move |id: String| {
[INFO] [stdout]     |                                 ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> frontend/src/presentation/pages/workflows.rs:75:33
[INFO] [stdout]    |
[INFO] [stdout] 75 |     let update_workflow = move |id: String| {
[INFO] [stdout]    |                                 ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]   --> frontend/src/presentation/pages/workflows.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (status, set_status) = create_signal("Loading...".to_string());
[INFO] [stdout]    |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status`
[INFO] [stdout]   --> frontend/src/presentation/pages/workflows.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let (status, set_status) = create_signal("Loading...".to_string());
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/workflows.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status_type`
[INFO] [stdout]   --> frontend/src/presentation/pages/workflows.rs:15:23
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let (status_type, set_status_type) = create_signal("info".to_string());
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_workflows`
[INFO] [stdout]   --> frontend/src/presentation/pages/workflows.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let (workflows, set_workflows) = create_signal::<Vec<Workflow>>(vec![]);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_workflows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> frontend/src/domain/value_objects/mod.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 86 |         if port > 65535 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking vibespeak v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `RecognitionSession` and `VoiceCommand`
[INFO] [stdout]  --> src/application/services/voice_command_processor.rs:2:49
[INFO] [stdout]   |
[INFO] [stdout] 2 |     BrowserAction, BrowserSession, BrowserType, RecognitionSession, VoiceCommand, Workflow,
[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: `SecurityLevel`
[INFO] [stdout]   --> src/application/services/voice_command_processor.rs:11:61
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::shared::{AudioSample, Error, Result, ScriptType, SecurityLevel};
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]   --> src/application/services/voice_command_processor.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use async_trait::async_trait;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64` and `Ordering`
[INFO] [stdout]  --> src/application/use_cases/mod.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::atomic::{AtomicU64, Ordering};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Command`
[INFO] [stdout]  --> src/domain/services/browser_automation.rs:6:20
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::process::{Command, Stdio};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Variable`
[INFO] [stdout]  --> src/domain/services/workflow_executor.rs:2:51
[INFO] [stdout]   |
[INFO] [stdout] 2 |     ComparisonOperator, Condition, ErrorStrategy, Variable, VariableValue, Workflow, WorkflowStep,
[INFO] [stdout]   |                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ScriptExecution`
[INFO] [stdout]  --> src/domain/services/workflow_executor.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 |     script_executor::{ScriptExecution, ScriptExecutor},
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/infrastructure/adapters/command_interpreter.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::shared::{Error, Result};
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc`
[INFO] [stdout]   --> src/infrastructure/adapters/microphone.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tokio::sync::mpsc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `sleep`
[INFO] [stdout]  --> src/infrastructure/adapters/screen/remote_control.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::time::{sleep, Duration};
[INFO] [stdout]   |                   ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `webrtc::track::track_local::track_local_static_rtp::TrackLocalStaticRTP`
[INFO] [stdout]   --> src/infrastructure/adapters/screen/sharing.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use webrtc::track::track_local::track_local_static_rtp::TrackLocalStaticRTP;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/infrastructure/adapters/mod.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use audio_player::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `AudioDeviceInfo` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 12 | pub use microphone::*;
[INFO] [stdout]    |         ------------- but the name `AudioDeviceInfo` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/infrastructure/repositories/session_repository.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::shared::{Error, Result, SessionId};
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/presentation/cli/mod.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::shared::{Error, Result};
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RecognitionSession` and `VoiceCommand`
[INFO] [stdout]  --> src/application/services/voice_command_processor.rs:2:49
[INFO] [stdout]   |
[INFO] [stdout] 2 |     BrowserAction, BrowserSession, BrowserType, RecognitionSession, VoiceCommand, Workflow,
[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: `SecurityLevel`
[INFO] [stdout]   --> src/application/services/voice_command_processor.rs:11:61
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::shared::{AudioSample, Error, Result, ScriptType, SecurityLevel};
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]   --> src/application/services/voice_command_processor.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use async_trait::async_trait;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64` and `Ordering`
[INFO] [stdout]  --> src/application/use_cases/mod.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::atomic::{AtomicU64, Ordering};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Command`
[INFO] [stdout]  --> src/domain/services/browser_automation.rs:6:20
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::process::{Command, Stdio};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Variable`
[INFO] [stdout]  --> src/domain/services/workflow_executor.rs:2:51
[INFO] [stdout]   |
[INFO] [stdout] 2 |     ComparisonOperator, Condition, ErrorStrategy, Variable, VariableValue, Workflow, WorkflowStep,
[INFO] [stdout]   |                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ScriptExecution`
[INFO] [stdout]  --> src/domain/services/workflow_executor.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 |     script_executor::{ScriptExecution, ScriptExecutor},
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/infrastructure/adapters/command_interpreter.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::shared::{Error, Result};
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc`
[INFO] [stdout]   --> src/infrastructure/adapters/microphone.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tokio::sync::mpsc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `sleep`
[INFO] [stdout]  --> src/infrastructure/adapters/screen/remote_control.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::time::{sleep, Duration};
[INFO] [stdout]   |                   ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `webrtc::track::track_local::track_local_static_rtp::TrackLocalStaticRTP`
[INFO] [stdout]   --> src/infrastructure/adapters/screen/sharing.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use webrtc::track::track_local::track_local_static_rtp::TrackLocalStaticRTP;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/infrastructure/adapters/mod.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use audio_player::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `AudioDeviceInfo` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 12 | pub use microphone::*;
[INFO] [stdout]    |         ------------- but the name `AudioDeviceInfo` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/infrastructure/repositories/session_repository.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::shared::{Error, Result, SessionId};
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/presentation/cli/mod.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::shared::{Error, Result};
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/presentation/axum_server/handlers/tts.rs:117:36
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let base64_audio = base64::encode(&audio_data);
[INFO] [stdout]     |                                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/presentation/axum_server/handlers/tts.rs:117:36
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let base64_audio = base64::encode(&audio_data);
[INFO] [stdout]     |                                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stream_cfg`
[INFO] [stdout]    --> src/infrastructure/adapters/audio_player.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let stream_cfg: cpal::StreamConfig = cfg.clone().into();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream_cfg`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `plugin`
[INFO] [stdout]    --> src/application/services/voice_command_processor.rs:344:9
[INFO] [stdout]     |
[INFO] [stdout] 344 |         plugin: Box<dyn crate::domain::services::plugin::VoicePlugin>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_plugin`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track`
[INFO] [stdout]    --> src/infrastructure/adapters/screen/sharing.rs:110:49
[INFO] [stdout]     |
[INFO] [stdout] 110 |         peer_connection.on_track(Box::new(move |track: Arc<TrackRemote>, _receiver, _| {
[INFO] [stdout]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_track`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]   --> src/infrastructure/adapters/screen/remote_control.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         parameters: Option<&serde_json::Value>,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameters`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stream_cfg`
[INFO] [stdout]    --> src/infrastructure/adapters/audio_player.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let stream_cfg: cpal::StreamConfig = cfg.clone().into();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream_cfg`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `plugin`
[INFO] [stdout]    --> src/application/services/voice_command_processor.rs:344:9
[INFO] [stdout]     |
[INFO] [stdout] 344 |         plugin: Box<dyn crate::domain::services::plugin::VoicePlugin>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_plugin`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `track`
[INFO] [stdout]    --> src/infrastructure/adapters/screen/sharing.rs:110:49
[INFO] [stdout]     |
[INFO] [stdout] 110 |         peer_connection.on_track(Box::new(move |track: Arc<TrackRemote>, _receiver, _| {
[INFO] [stdout]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_track`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]   --> src/infrastructure/adapters/screen/remote_control.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         parameters: Option<&serde_json::Value>,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameters`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session_id`
[INFO] [stdout]    --> src/domain/services/browser_automation.rs:164:38
[INFO] [stdout]     |
[INFO] [stdout] 164 |     async fn get_page_content(&self, session_id: &str) -> Result<String> {
[INFO] [stdout]     |                                      ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session_id`
[INFO] [stdout]    --> src/domain/services/browser_automation.rs:170:37
[INFO] [stdout]     |
[INFO] [stdout] 170 |     async fn take_screenshot(&self, session_id: &str, path: &str) -> Result<()> {
[INFO] [stdout]     |                                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variables`
[INFO] [stdout]    --> src/domain/services/workflow_executor.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |         variables: &HashMap<String, VariableValue>,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variables`
[INFO] [stdout]    --> src/domain/services/workflow_executor.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         variables: &HashMap<String, VariableValue>,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session_id`
[INFO] [stdout]    --> src/domain/services/browser_automation.rs:164:38
[INFO] [stdout]     |
[INFO] [stdout] 164 |     async fn get_page_content(&self, session_id: &str) -> Result<String> {
[INFO] [stdout]     |                                      ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session_id`
[INFO] [stdout]    --> src/domain/services/browser_automation.rs:170:37
[INFO] [stdout]     |
[INFO] [stdout] 170 |     async fn take_screenshot(&self, session_id: &str, path: &str) -> Result<()> {
[INFO] [stdout]     |                                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variables`
[INFO] [stdout]    --> src/domain/services/workflow_executor.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |         variables: &HashMap<String, VariableValue>,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variables`
[INFO] [stdout]    --> src/domain/services/workflow_executor.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         variables: &HashMap<String, VariableValue>,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `used_config`
[INFO] [stdout]    --> src/infrastructure/adapters/microphone.rs:593:22
[INFO] [stdout]     |
[INFO] [stdout] 593 |         let (stream, used_config) = self.build_input_stream_i16_with_fallback(
[INFO] [stdout]     |                      ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_used_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `used_config`
[INFO] [stdout]    --> src/infrastructure/adapters/microphone.rs:593:22
[INFO] [stdout]     |
[INFO] [stdout] 593 |         let (stream, used_config) = self.build_input_stream_i16_with_fallback(
[INFO] [stdout]     |                      ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_used_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `audio_sample_rate` is never read
[INFO] [stdout]   --> src/infrastructure/adapters/screen/sharing.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ScreenSharingManager {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     audio_sample_rate: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `default_sample_rate` is never read
[INFO] [stdout]   --> src/infrastructure/adapters/vosk_adapter.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct VoskAdapter {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout]  9 |     model: Arc<Model>,
[INFO] [stdout] 10 |     default_sample_rate: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/infrastructure/adapters/screen/remote_control.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 | /         format!(
[INFO] [stdout] 151 | |             "Right mouse clicked at ({}, {}) - implementation pending",
[INFO] [stdout] 152 | |             x, y
[INFO] [stdout] 153 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[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] 150 |         let _ = format!(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/infrastructure/adapters/screen/remote_control.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         format!("Double clicked at ({}, {}) - implementation pending", x, y);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 168 |         let _ = format!("Double clicked at ({}, {}) - implementation pending", x, y);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `audio_sample_rate` is never read
[INFO] [stdout]   --> src/infrastructure/adapters/screen/sharing.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ScreenSharingManager {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     audio_sample_rate: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `default_sample_rate` is never read
[INFO] [stdout]   --> src/infrastructure/adapters/vosk_adapter.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct VoskAdapter {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout]  9 |     model: Arc<Model>,
[INFO] [stdout] 10 |     default_sample_rate: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/infrastructure/adapters/screen/remote_control.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 | /         format!(
[INFO] [stdout] 151 | |             "Right mouse clicked at ({}, {}) - implementation pending",
[INFO] [stdout] 152 | |             x, y
[INFO] [stdout] 153 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[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] 150 |         let _ = format!(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/infrastructure/adapters/screen/remote_control.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         format!("Double clicked at ({}, {}) - implementation pending", x, y);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 168 |         let _ = format!("Double clicked at ({}, {}) - implementation pending", x, y);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]  --> tests/repository_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path::PathBuf;
[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: `super::*`
[INFO] [stdout]    --> tests/repository_tests.rs:250:9
[INFO] [stdout]     |
[INFO] [stdout] 250 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PluginRegistry`
[INFO] [stdout]   --> tests/integration_tests.rs:68:36
[INFO] [stdout]    |
[INFO] [stdout] 68 |             BuiltinCommandsPlugin, PluginRegistry, VoicePlugin,
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interpreter`
[INFO] [stdout]    --> tests/adapter_tests.rs:211:13
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let interpreter = FuzzyCommandInterpreter::new(commands);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interpreter`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `script`
[INFO] [stdout]   --> tests/domain_tests.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let script = CommandAction::Script("script-456".to_string());
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_script`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `integration`
[INFO] [stdout]   --> tests/domain_tests.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let integration = CommandAction::IntegrationCall("api".to_string());
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integration`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> tests/domain_tests.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let event = WorkflowTrigger::Event("user_login".to_string());
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `manual`
[INFO] [stdout]    --> tests/domain_tests.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let manual = WorkflowTrigger::Manual;
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `Manual`
[INFO] [stdout]     |
[INFO] [stdout] 152 -         let manual = WorkflowTrigger::Manual;
[INFO] [stdout] 152 +         let vibespeak::domain::WorkflowTrigger::Manual = WorkflowTrigger::Manual;
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let _manual = WorkflowTrigger::Manual;
[INFO] [stdout]     |             +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `click`
[INFO] [stdout]    --> tests/domain_tests.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let click = BrowserAction::Click("#button".to_string());
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_click`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_text`
[INFO] [stdout]    --> tests/domain_tests.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let type_text = BrowserAction::Type("input".to_string(), "hello".to_string());
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_type_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wait`
[INFO] [stdout]    --> tests/domain_tests.rs:200:13
[INFO] [stdout]     |
[INFO] [stdout] 200 |         let wait = BrowserAction::WaitForElement(".loading".to_string());
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_wait`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `screenshot`
[INFO] [stdout]    --> tests/domain_tests.rs:201:13
[INFO] [stdout]     |
[INFO] [stdout] 201 |         let screenshot = BrowserAction::Screenshot("capture.png".to_string());
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_screenshot`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `script`
[INFO] [stdout]    --> tests/domain_tests.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let script = BrowserAction::ExecuteScript("alert('test')".to_string());
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_script`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_text`
[INFO] [stdout]    --> tests/domain_tests.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |         let get_text = BrowserAction::GetText("h1".to_string());
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_get_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stop`
[INFO] [stdout]    --> tests/domain_tests.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let stop = ErrorStrategy::Stop;
[INFO] [stdout]     |             ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `Stop`
[INFO] [stdout]     |
[INFO] [stdout] 254 -         let stop = ErrorStrategy::Stop;
[INFO] [stdout] 254 +         let vibespeak::domain::ErrorStrategy::Stop = ErrorStrategy::Stop;
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let _stop = ErrorStrategy::Stop;
[INFO] [stdout]     |             +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `continue_strat`
[INFO] [stdout]    --> tests/domain_tests.rs:255:13
[INFO] [stdout]     |
[INFO] [stdout] 255 |         let continue_strat = ErrorStrategy::Continue;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_continue_strat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fallback`
[INFO] [stdout]    --> tests/domain_tests.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |         let fallback = ErrorStrategy::Fallback(Box::new(WorkflowStep::ExecuteCommand(
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_val`
[INFO] [stdout]   --> tests/use_case_tests.rs:92:13
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let number_val = VariableValueDto::Number(42.5);
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_val`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bool_val`
[INFO] [stdout]   --> tests/use_case_tests.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let bool_val = VariableValueDto::Boolean(true);
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bool_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `executor`
[INFO] [stdout]   --> tests/script_executor_tests.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let executor = ScriptExecutor::new();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_executor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODEL_PATH` is never used
[INFO] [stdout]   --> src/main.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const MODEL_PATH: &str = "model/vosk-model-en-us-0.22-lgraph";
[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 `run_legacy_cli` is never used
[INFO] [stdout]    --> src/main.rs:313:10
[INFO] [stdout]     |
[INFO] [stdout] 313 | async fn run_legacy_cli(voice_service: &VoiceProcessingService) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODEL_PATH` is never used
[INFO] [stdout]   --> src/main.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const MODEL_PATH: &str = "model/vosk-model-en-us-0.22-lgraph";
[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 `run_legacy_cli` is never used
[INFO] [stdout]    --> src/main.rs:313:10
[INFO] [stdout]     |
[INFO] [stdout] 313 | async fn run_legacy_cli(voice_service: &VoiceProcessingService) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `crossterm`
[INFO] [stderr]   --> Cargo.toml:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | crossterm = "0.29.0"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `crossterm`
[INFO] [stderr] warning: unused dependency `tokio-tungstenite`
[INFO] [stderr]   --> Cargo.toml:18:1
[INFO] [stderr]    |
[INFO] [stderr] 18 | tokio-tungstenite = "0.20"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `tokio-tungstenite`
[INFO] [stderr] warning: unused dependency `tower`
[INFO] [stderr]   --> Cargo.toml:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | tower = "0.4"
[INFO] [stderr]    | ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `tower`
[INFO] [stderr] warning: unused dependency `vibespeak-frontend`
[INFO] [stderr]   --> Cargo.toml:61:15
[INFO] [stderr]    |
[INFO] [stderr] 61 | [dependencies.vibespeak-frontend]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `vibespeak-frontend`
[INFO] [stderr] warning: `vibespeak` (manifest) generated 4 warnings
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: attribute-derive-macro v0.9.2, proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] running `Command { std: "docker" "inspect" "25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2", kill_on_drop: false }`
[INFO] [stdout] 25d9df24546ff7cd49b9deb064271b351698607768894eedae410c04834d27e2
