[INFO] cloning repository https://github.com/Yupkidangju/femtoClaw [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Yupkidangju/femtoClaw" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYupkidangju%2FfemtoClaw", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYupkidangju%2FfemtoClaw'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2742e80a2a2fdd212ed949d185308aeea693f28d [INFO] checking Yupkidangju/femtoClaw against master#8a703520e80d87d4423c01f9d4fbc9e5f6533a02 for pr-154205-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYupkidangju%2FfemtoClaw" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Yupkidangju/femtoClaw [INFO] finished tweaking git repo https://github.com/Yupkidangju/femtoClaw [INFO] tweaked toml for git repo https://github.com/Yupkidangju/femtoClaw written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Yupkidangju/femtoClaw on toolchain 8a703520e80d87d4423c01f9d4fbc9e5f6533a02 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8a703520e80d87d4423c01f9d4fbc9e5f6533a02" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Yupkidangju/femtoClaw 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" "+8a703520e80d87d4423c01f9d4fbc9e5f6533a02" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.114 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.114 [INFO] [stderr] Downloaded tiny-keccak v2.0.2 [INFO] [stderr] Downloaded quote v1.0.45 [INFO] [stderr] Downloaded futures-sink v0.3.32 [INFO] [stderr] Downloaded takecell v0.1.1 [INFO] [stderr] Downloaded teloxide-macros v0.8.0 [INFO] [stderr] Downloaded futures-macro v0.3.32 [INFO] [stderr] Downloaded once_cell v1.21.4 [INFO] [stderr] Downloaded include_dir_macros v0.7.4 [INFO] [stderr] Downloaded itoa v1.0.18 [INFO] [stderr] Downloaded openssl-probe v0.2.1 [INFO] [stderr] Downloaded wezterm-dynamic v0.2.1 [INFO] [stderr] Downloaded const-random-macro v0.1.16 [INFO] [stderr] Downloaded crypto-common v0.1.7 [INFO] [stderr] Downloaded lab v0.11.0 [INFO] [stderr] Downloaded ctrlc v3.5.2 [INFO] [stderr] Downloaded dirs-sys v0.5.0 [INFO] [stderr] Downloaded argon2 v0.5.3 [INFO] [stderr] Downloaded base64ct v1.8.3 [INFO] [stderr] Downloaded dispatch2 v0.3.1 [INFO] [stderr] Downloaded chacha20poly1305 v0.10.1 [INFO] [stderr] Downloaded fancy-regex v0.11.0 [INFO] [stderr] Downloaded derive_more-impl v2.1.1 [INFO] [stderr] Downloaded pest v2.8.6 [INFO] [stderr] Downloaded iri-string v0.7.10 [INFO] [stderr] Downloaded ratatui-core v0.1.0 [INFO] [stderr] Downloaded hyper v0.14.32 [INFO] [stderr] Downloaded portable-atomic v1.13.1 [INFO] [stderr] Downloaded wasmparser v0.244.0 [INFO] [stderr] Downloaded time v0.3.47 [INFO] [stderr] Downloaded ratatui-widgets v0.3.0 [INFO] [stderr] Downloaded quinn-proto v0.11.14 [INFO] [stderr] Downloaded bstr v1.12.1 [INFO] [stderr] Downloaded objc2 v0.6.4 [INFO] [stderr] Downloaded rustls v0.23.37 [INFO] [stderr] Downloaded rhai v1.24.0 [INFO] [stderr] Downloaded nix v0.31.2 [INFO] [stderr] Downloaded termwiz v0.23.3 [INFO] [stderr] Downloaded rustix v1.1.4 [INFO] [stderr] Downloaded openssl v0.10.76 [INFO] [stderr] Downloaded webpki-roots v1.0.6 [INFO] [stderr] Downloaded zerocopy v0.8.47 [INFO] [stderr] Downloaded teloxide-core v0.10.1 [INFO] [stderr] Downloaded wit-component v0.244.0 [INFO] [stderr] Downloaded reqwest v0.12.28 [INFO] [stderr] Downloaded winnow v0.7.15 [INFO] [stderr] Downloaded wit-parser v0.244.0 [INFO] [stderr] Downloaded rusqlite v0.39.0 [INFO] [stderr] Downloaded h2 v0.3.27 [INFO] [stderr] Downloaded web-sys v0.3.91 [INFO] [stderr] Downloaded futures-util v0.3.32 [INFO] [stderr] Downloaded derive_more v2.1.1 [INFO] [stderr] Downloaded hyper-util v0.1.20 [INFO] [stderr] Downloaded http v1.4.0 [INFO] [stderr] Downloaded zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Downloaded icu_properties_data v2.1.2 [INFO] [stderr] Downloaded finl_unicode v1.4.0 [INFO] [stderr] Downloaded libc v0.2.183 [INFO] [stderr] Downloaded pest_meta v2.8.6 [INFO] [stderr] Downloaded euclid v0.22.14 [INFO] [stderr] Downloaded darling_core v0.23.0 [INFO] [stderr] Downloaded tokio v1.50.0 [INFO] [stderr] Downloaded compact_str v0.9.0 [INFO] [stderr] Downloaded ratatui v0.30.0 [INFO] [stderr] Downloaded tinyvec v1.11.0 [INFO] [stderr] Downloaded rustls-webpki v0.103.10 [INFO] [stderr] Downloaded tower v0.5.3 [INFO] [stderr] Downloaded block2 v0.6.2 [INFO] [stderr] Downloaded pest_generator v2.8.6 [INFO] [stderr] Downloaded wezterm-bidi v0.2.3 [INFO] [stderr] Downloaded tower-http v0.6.8 [INFO] [stderr] Downloaded serde_with v1.14.0 [INFO] [stderr] Downloaded tokio-util v0.7.18 [INFO] [stderr] Downloaded wasip3 v0.4.0+wasi-0.3.0-rc-2026-01-06 [INFO] [stderr] Downloaded js-sys v0.3.91 [INFO] [stderr] Downloaded litrs v1.0.0 [INFO] [stderr] Downloaded pest_derive v2.8.6 [INFO] [stderr] Downloaded terminfo v0.9.0 [INFO] [stderr] Downloaded darling v0.23.0 [INFO] [stderr] Downloaded deranged v0.5.8 [INFO] [stderr] Downloaded rand_core v0.9.5 [INFO] [stderr] Downloaded security-framework v3.7.0 [INFO] [stderr] Downloaded wasm-encoder v0.244.0 [INFO] [stderr] Downloaded password-hash v0.5.0 [INFO] [stderr] Downloaded chacha20 v0.9.1 [INFO] [stderr] Downloaded poly1305 v0.8.0 [INFO] [stderr] Downloaded redox_users v0.5.2 [INFO] [stderr] Downloaded termios v0.3.3 [INFO] [stderr] Downloaded ucd-trie v0.1.7 [INFO] [stderr] Downloaded wezterm-input-types v0.1.0 [INFO] [stderr] Downloaded strum_macros v0.27.2 [INFO] [stderr] Downloaded zerocopy-derive v0.8.47 [INFO] [stderr] Downloaded fancy-regex v0.13.0 [INFO] [stderr] Downloaded prettyplease v0.2.37 [INFO] [stderr] Downloaded wit-bindgen-core v0.51.0 [INFO] [stderr] Downloaded convert_case v0.10.0 [INFO] [stderr] Downloaded document-features v0.2.12 [INFO] [stderr] Downloaded ratatui-crossterm v0.1.0 [INFO] [stderr] Downloaded ratatui-macros v0.7.0 [INFO] [stderr] Downloaded vtparse v0.6.2 [INFO] [stderr] Downloaded csscolorparser v0.6.2 [INFO] [stderr] Downloaded ordered-float v4.6.0 [INFO] [stderr] Downloaded ratatui-termwiz v0.1.0 [INFO] [stderr] Downloaded kasuari v0.4.12 [INFO] [stderr] Downloaded lru v0.16.3 [INFO] [stderr] Downloaded unicode-truncate v2.0.1 [INFO] [stderr] Downloaded rhai_codegen v3.1.0 [INFO] [stderr] Downloaded futures v0.3.32 [INFO] [stderr] Downloaded pin-project v1.1.11 [INFO] [stderr] Downloaded socket2 v0.5.10 [INFO] [stderr] Downloaded ryu v1.0.23 [INFO] [stderr] Downloaded openssl-sys v0.9.112 [INFO] [stderr] Downloaded url v2.5.8 [INFO] [stderr] Downloaded teloxide v0.13.0 [INFO] [stderr] Downloaded socket2 v0.6.3 [INFO] [stderr] Downloaded anyhow v1.0.102 [INFO] [stderr] Downloaded foldhash v0.2.0 [INFO] [stderr] Downloaded wit-bindgen-rust v0.51.0 [INFO] [stderr] Downloaded dirs v6.0.0 [INFO] [stderr] Downloaded filedescriptor v0.8.3 [INFO] [stderr] Downloaded mac_address v1.1.8 [INFO] [stderr] Downloaded indoc v2.0.7 [INFO] [stderr] Downloaded num_threads v0.1.7 [INFO] [stderr] Downloaded time-core v0.1.8 [INFO] [stderr] Downloaded core-foundation v0.10.1 [INFO] [stderr] Downloaded native-tls v0.2.18 [INFO] [stderr] Downloaded futures-channel v0.3.32 [INFO] [stderr] Downloaded deltae v0.3.2 [INFO] [stderr] Downloaded tokio-stream v0.1.18 [INFO] [stderr] Downloaded getrandom v0.4.2 [INFO] [stderr] Downloaded tempfile v3.27.0 [INFO] [stderr] Downloaded wasm-metadata v0.244.0 [INFO] [stderr] Downloaded cc v1.2.57 [INFO] [stderr] Downloaded aquamarine v0.5.0 [INFO] [stderr] Downloaded libredox v0.1.14 [INFO] [stderr] Downloaded signal-hook-mio v0.2.5 [INFO] [stderr] Downloaded fixedbitset v0.4.2 [INFO] [stderr] Downloaded memmem v0.1.1 [INFO] [stderr] Downloaded wezterm-blob-leases v0.1.1 [INFO] [stderr] Downloaded wezterm-color-types v0.3.0 [INFO] [stderr] Downloaded wezterm-dynamic-derive v0.1.1 [INFO] [stderr] Downloaded line-clipping v0.3.5 [INFO] [stderr] Downloaded strum v0.27.2 [INFO] [stderr] Downloaded num-conv v0.2.0 [INFO] [stderr] Downloaded thin-vec v0.2.14 [INFO] [stderr] Downloaded fallible-iterator v0.3.0 [INFO] [stderr] Downloaded hashlink v0.11.0 [INFO] [stderr] Downloaded rsqlite-vfs v0.1.0 [INFO] [stderr] Downloaded dptree v0.3.0 [INFO] [stderr] Downloaded futures-executor v0.3.32 [INFO] [stderr] Downloaded pin-project-internal v1.1.11 [INFO] [stderr] Downloaded ipnet v2.12.0 [INFO] [stderr] Downloaded linux-raw-sys v0.12.1 [INFO] [stderr] Downloaded security-framework-sys v2.17.0 [INFO] [stderr] Downloaded futures-core v0.3.32 [INFO] [stderr] Downloaded r-efi v6.0.0 [INFO] [stderr] Downloaded pin-project-lite v0.2.17 [INFO] [stderr] Downloaded tokio-macros v2.6.1 [INFO] [stderr] Downloaded rc-box v1.3.0 [INFO] [stderr] Downloaded schannel v0.1.29 [INFO] [stderr] Downloaded slab v0.4.12 [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.64 [INFO] [stderr] Downloaded serde_with_macros v1.5.2 [INFO] [stderr] Downloaded uuid v1.22.0 [INFO] [stderr] Downloaded icu_properties v2.1.2 [INFO] [stderr] Downloaded siphasher v1.0.2 [INFO] [stderr] Downloaded darling_macro v0.23.0 [INFO] [stderr] Downloaded futures-task v0.3.32 [INFO] [stderr] Downloaded atomic v0.6.1 [INFO] [stderr] Downloaded leb128fmt v0.1.0 [INFO] [stderr] Downloaded wit-bindgen-rust-macro v0.51.0 [INFO] [stderr] Downloaded const-random v0.1.18 [INFO] [stderr] Downloaded erasable v1.3.0 [INFO] [stderr] Downloaded unicase v2.9.0 [INFO] [stderr] Downloaded instability v0.3.12 [INFO] [stderr] Downloaded rustls-pki-types v1.14.0 [INFO] [stderr] Downloaded include_dir v0.7.4 [INFO] [stderr] Downloaded futures-io v0.3.32 [INFO] [stderr] Downloaded id-arena v2.3.0 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.114 [INFO] [stderr] Downloaded wasm-bindgen v0.2.114 [INFO] [stderr] Downloaded take_mut v0.2.2 [INFO] [stderr] Downloaded tiktoken-rs v0.9.1 [INFO] [stderr] Downloaded libsqlite3-sys v0.37.0 [INFO] [stderr] Downloaded sqlite-wasm-rs v0.5.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+8a703520e80d87d4423c01f9d4fbc9e5f6533a02" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 03f2b5ff36739966d2824d5bfc24f36a335d32bbe280b1e95ae732b713c61995 [INFO] running `Command { std: "docker" "start" "-a" "03f2b5ff36739966d2824d5bfc24f36a335d32bbe280b1e95ae732b713c61995", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "03f2b5ff36739966d2824d5bfc24f36a335d32bbe280b1e95ae732b713c61995", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "03f2b5ff36739966d2824d5bfc24f36a335d32bbe280b1e95ae732b713c61995", kill_on_drop: false }` [INFO] [stdout] 03f2b5ff36739966d2824d5bfc24f36a335d32bbe280b1e95ae732b713c61995 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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" "+8a703520e80d87d4423c01f9d4fbc9e5f6533a02" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 32b357d16860968b50444c30793d1a8a53103e610f7f16ca10b21b6284727aa5 [INFO] running `Command { std: "docker" "start" "-a" "32b357d16860968b50444c30793d1a8a53103e610f7f16ca10b21b6284727aa5", kill_on_drop: false }` [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking bitflags v2.11.0 [INFO] [stderr] Checking log v0.4.29 [INFO] [stderr] Checking itoa v1.0.18 [INFO] [stderr] Checking pin-project-lite v0.2.17 [INFO] [stderr] Compiling portable-atomic v1.13.1 [INFO] [stderr] Checking memchr v2.8.0 [INFO] [stderr] Checking futures-core v0.3.32 [INFO] [stderr] Checking foldhash v0.2.0 [INFO] [stderr] Checking allocator-api2 v0.2.21 [INFO] [stderr] Checking futures-sink v0.3.32 [INFO] [stderr] Checking stable_deref_trait v1.2.1 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Checking futures-io v0.3.32 [INFO] [stderr] Checking futures-task v0.3.32 [INFO] [stderr] Checking slab v0.4.12 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking writeable v0.6.2 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Checking ryu v1.0.23 [INFO] [stderr] Checking futures-channel v0.3.32 [INFO] [stderr] Checking litemap v0.8.1 [INFO] [stderr] Checking zeroize v1.8.2 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking percent-encoding v2.3.2 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Checking hashbrown v0.16.1 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Checking http v1.4.0 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling zerocopy v0.8.47 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling crunchy v0.2.4 [INFO] [stderr] Checking itertools v0.14.0 [INFO] [stderr] Checking form_urlencoded v1.2.2 [INFO] [stderr] Checking rustls-pki-types v1.14.0 [INFO] [stderr] Checking generic-array v0.14.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling unicase v2.9.0 [INFO] [stderr] Checking unicode-width v0.2.2 [INFO] [stderr] Checking indexmap v2.13.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Checking ipnet v2.12.0 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Checking unicode-segmentation v1.12.0 [INFO] [stderr] Checking http-body v1.0.1 [INFO] [stderr] Checking once_cell v1.21.4 [INFO] [stderr] Checking castaway v0.2.4 [INFO] [stderr] Compiling instability v0.3.12 [INFO] [stderr] Checking openssl-probe v0.2.1 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Checking tracing-core v0.1.36 [INFO] [stderr] Checking compact_str v0.9.0 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling convert_case v0.10.0 [INFO] [stderr] Checking lru v0.16.3 [INFO] [stderr] Checking aho-corasick v1.1.4 [INFO] [stderr] Compiling erasable v1.3.0 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Checking regex-syntax v0.8.10 [INFO] [stderr] Compiling cc v1.2.57 [INFO] [stderr] Checking linux-raw-sys v0.12.1 [INFO] [stderr] Checking deranged v0.5.8 [INFO] [stderr] Checking tracing v0.1.44 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Checking serde_json v1.0.149 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Checking num_threads v0.1.7 [INFO] [stderr] Checking num-conv v0.2.0 [INFO] [stderr] Checking time-core v0.1.8 [INFO] [stderr] Compiling litrs v1.0.0 [INFO] [stderr] Compiling const-random-macro v0.1.16 [INFO] [stderr] Checking rustls-pemfile v1.0.4 [INFO] [stderr] Checking unicode-truncate v2.0.1 [INFO] [stderr] Compiling nix v0.31.2 [INFO] [stderr] Checking errno v0.3.14 [INFO] [stderr] Checking parking_lot_core v0.9.12 [INFO] [stderr] Checking mio v1.1.1 [INFO] [stderr] Checking socket2 v0.6.3 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking signal-hook-registry v1.4.8 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Compiling document-features v0.2.12 [INFO] [stderr] Checking time v0.3.47 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking crypto-common v0.1.7 [INFO] [stderr] Checking inout v0.1.4 [INFO] [stderr] Checking signal-hook-mio v0.2.5 [INFO] [stderr] Compiling include_dir_macros v0.7.4 [INFO] [stderr] Checking sync_wrapper v1.0.2 [INFO] [stderr] Compiling smartstring v1.0.1 [INFO] [stderr] Checking line-clipping v0.3.5 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Checking encoding_rs v0.8.35 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Checking bit-vec v0.6.3 [INFO] [stderr] Checking sync_wrapper v0.1.2 [INFO] [stderr] Checking chrono v0.4.44 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking bit-set v0.5.3 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Checking universal-hash v0.5.1 [INFO] [stderr] Checking rc-box v1.3.0 [INFO] [stderr] Checking uuid v1.22.0 [INFO] [stderr] Compiling include_dir v0.7.4 [INFO] [stderr] Checking const-random v0.1.18 [INFO] [stderr] Checking webpki-roots v1.0.6 [INFO] [stderr] Checking linux-raw-sys v0.4.15 [INFO] [stderr] Checking iri-string v0.7.10 [INFO] [stderr] Checking opaque-debug v0.3.1 [INFO] [stderr] Checking option-ext v0.2.0 [INFO] [stderr] Checking take_mut v0.2.2 [INFO] [stderr] Checking takecell v0.1.1 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Checking winnow v0.7.15 [INFO] [stderr] Checking base64ct v1.8.3 [INFO] [stderr] Checking toml_write v0.1.2 [INFO] [stderr] Checking poly1305 v0.8.0 [INFO] [stderr] Checking regex-automata v0.4.14 [INFO] [stderr] Checking dirs-sys v0.5.0 [INFO] [stderr] Checking chacha20 v0.9.1 [INFO] [stderr] Checking password-hash v0.5.0 [INFO] [stderr] Checking blake2 v0.10.6 [INFO] [stderr] Checking aead v0.5.2 [INFO] [stderr] Compiling openssl-sys v0.9.112 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Compiling libsqlite3-sys v0.37.0 [INFO] [stderr] Checking http-body-util v0.1.3 [INFO] [stderr] Checking hashlink v0.11.0 [INFO] [stderr] Checking thin-vec v0.2.14 [INFO] [stderr] Checking fallible-iterator v0.3.0 [INFO] [stderr] Checking fallible-streaming-iterator v0.1.9 [INFO] [stderr] Checking rustc-hash v1.1.0 [INFO] [stderr] Checking crossterm v0.28.1 [INFO] [stderr] Checking ctrlc v3.5.2 [INFO] [stderr] Checking chacha20poly1305 v0.10.1 [INFO] [stderr] Checking argon2 v0.5.3 [INFO] [stderr] Checking dirs v6.0.0 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Compiling darling_core v0.13.4 [INFO] [stderr] Checking tempfile v3.27.0 [INFO] [stderr] Compiling teloxide-macros v0.8.0 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking bstr v1.12.1 [INFO] [stderr] Checking fancy-regex v0.13.0 [INFO] [stderr] Checking regex v1.12.3 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling darling_macro v0.13.4 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Compiling darling v0.13.4 [INFO] [stderr] Checking rustls-webpki v0.103.10 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Checking tokio v1.50.0 [INFO] [stderr] Compiling serde_with_macros v1.5.2 [INFO] [stderr] Checking futures-util v0.3.32 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking thiserror v2.0.18 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking kasuari v0.4.12 [INFO] [stderr] Checking yoke v0.8.1 [INFO] [stderr] Compiling pin-project-internal v1.1.11 [INFO] [stderr] Compiling derive_more v0.99.20 [INFO] [stderr] Compiling aquamarine v0.5.0 [INFO] [stderr] Checking zerovec v0.11.5 [INFO] [stderr] Checking zerotrie v0.2.3 [INFO] [stderr] Checking derive_more v2.1.1 [INFO] [stderr] Checking crossterm v0.29.0 [INFO] [stderr] Compiling rhai_codegen v3.1.0 [INFO] [stderr] Checking tiktoken-rs v0.9.1 [INFO] [stderr] Checking tinystr v0.8.2 [INFO] [stderr] Checking potential_utf v0.1.4 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Checking icu_locale_core v2.1.1 [INFO] [stderr] Checking pin-project v1.1.11 [INFO] [stderr] Checking icu_collections v2.1.1 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Checking zstd v0.13.3 [INFO] [stderr] Checking strum v0.27.2 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking ratatui-core v0.1.0 [INFO] [stderr] Checking icu_provider v2.1.1 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking serde_with v1.14.0 [INFO] [stderr] Checking serde_spanned v0.6.9 [INFO] [stderr] Checking icu_normalizer v2.1.1 [INFO] [stderr] Checking icu_properties v2.1.2 [INFO] [stderr] Checking toml_datetime v0.6.11 [INFO] [stderr] Checking toml_edit v0.22.27 [INFO] [stderr] Checking rhai v1.24.0 [INFO] [stderr] Checking ratatui-widgets v0.3.0 [INFO] [stderr] Checking ratatui-crossterm v0.1.0 [INFO] [stderr] Checking futures-executor v0.3.32 [INFO] [stderr] Checking futures v0.3.32 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking dptree v0.3.0 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking url v2.5.8 [INFO] [stderr] Checking tokio-util v0.7.18 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking hyper v1.8.1 [INFO] [stderr] Checking tower v0.5.3 [INFO] [stderr] Checking tokio-stream v0.1.18 [INFO] [stderr] Checking ratatui-macros v0.7.0 [INFO] [stderr] Checking ratatui v0.30.0 [INFO] [stderr] Checking h2 v0.3.27 [INFO] [stderr] Checking tokio-rustls v0.26.4 [INFO] [stderr] Checking tower-http v0.6.8 [INFO] [stderr] Checking hyper-util v0.1.20 [INFO] [stderr] Checking toml v0.8.23 [INFO] [stderr] Checking hyper-rustls v0.27.7 [INFO] [stderr] Checking reqwest v0.12.28 [INFO] [stderr] Checking hyper v0.14.32 [INFO] [stderr] Checking rusqlite v0.39.0 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking teloxide-core v0.10.1 [INFO] [stderr] Checking teloxide v0.13.0 [INFO] [stderr] Checking femtoclaw v1.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `AtomicBool` and `Ordering` [INFO] [stdout] --> src/core/chat_loop.rs:13:25 [INFO] [stdout] | [INFO] [stdout] 13 | use std::sync::atomic::{AtomicBool, Ordering}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/core/chat_loop.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | use std::sync::{mpsc, Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `teloxide::types::ParseMode` [INFO] [stdout] --> src/core/telegram.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use teloxide::types::ParseMode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Scope` [INFO] [stdout] --> src/skills/rhai_engine.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use rhai::{Engine, Scope, AST}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AtomicBool` and `Ordering` [INFO] [stdout] --> src/core/chat_loop.rs:13:25 [INFO] [stdout] | [INFO] [stdout] 13 | use std::sync::atomic::{AtomicBool, Ordering}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/core/chat_loop.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | use std::sync::{mpsc, Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `teloxide::types::ParseMode` [INFO] [stdout] --> src/core/telegram.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use teloxide::types::ParseMode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Scope` [INFO] [stdout] --> src/skills/rhai_engine.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use rhai::{Engine, Scope, AST}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `persona` [INFO] [stdout] --> src/core/context.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let persona = Persona::new_default("Test"); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_persona` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_first_run` is never read [INFO] [stdout] --> src/tui/app.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct App { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 135 | is_first_run: bool, [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 `is_first_run` is never read [INFO] [stdout] --> src/tui/app.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct App { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 135 | is_first_run: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AtomicBool` and `Ordering` [INFO] [stdout] --> src/core/chat_loop.rs:13:25 [INFO] [stdout] | [INFO] [stdout] 13 | use std::sync::atomic::{AtomicBool, Ordering}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/core/chat_loop.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | use std::sync::{mpsc, Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `teloxide::types::ParseMode` [INFO] [stdout] --> src/core/telegram.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use teloxide::types::ParseMode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `compress_data` and `decompress_data` [INFO] [stdout] --> src/db/mod.rs:12:20 [INFO] [stdout] | [INFO] [stdout] 12 | pub use compress::{compress_data, decompress_data}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Scope` [INFO] [stdout] --> src/skills/rhai_engine.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use rhai::{Engine, Scope, AST}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SkillAction`, `Skill`, and `save_skill` [INFO] [stdout] --> src/skills/mod.rs:11:40 [INFO] [stdout] | [INFO] [stdout] 11 | pub use loader::{load_skills_from_dir, save_skill, Skill, SkillAction, SkillType}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ToolError`, `ToolExecutor`, and `ToolResult` [INFO] [stdout] --> src/tools/mod.rs:15:20 [INFO] [stdout] | [INFO] [stdout] 15 | pub use executor::{ToolError, ToolExecutor, ToolResult}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `guide::JailingGuide` [INFO] [stdout] --> src/tools/mod.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub use guide::JailingGuide; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `prompt::build_system_prompt` [INFO] [stdout] --> src/tools/mod.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub use prompt::build_system_prompt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BUILTIN_TOOLS`, `SecurityLevel`, `ToolDef`, and `ToolParam` [INFO] [stdout] --> src/tools/mod.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | pub use registry::{SecurityLevel, ToolDef, ToolParam, BUILTIN_TOOLS}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AtomicBool` and `Ordering` [INFO] [stdout] --> src/core/chat_loop.rs:13:25 [INFO] [stdout] | [INFO] [stdout] 13 | use std::sync::atomic::{AtomicBool, Ordering}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/core/chat_loop.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | use std::sync::{mpsc, Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `teloxide::types::ParseMode` [INFO] [stdout] --> src/core/telegram.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use teloxide::types::ParseMode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `compress_data` and `decompress_data` [INFO] [stdout] --> src/db/mod.rs:12:20 [INFO] [stdout] | [INFO] [stdout] 12 | pub use compress::{compress_data, decompress_data}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Scope` [INFO] [stdout] --> src/skills/rhai_engine.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use rhai::{Engine, Scope, AST}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SkillAction`, `Skill`, and `save_skill` [INFO] [stdout] --> src/skills/mod.rs:11:40 [INFO] [stdout] | [INFO] [stdout] 11 | pub use loader::{load_skills_from_dir, save_skill, Skill, SkillAction, SkillType}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ToolError`, `ToolExecutor`, and `ToolResult` [INFO] [stdout] --> src/tools/mod.rs:15:20 [INFO] [stdout] | [INFO] [stdout] 15 | pub use executor::{ToolError, ToolExecutor, ToolResult}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `guide::JailingGuide` [INFO] [stdout] --> src/tools/mod.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub use guide::JailingGuide; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `prompt::build_system_prompt` [INFO] [stdout] --> src/tools/mod.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub use prompt::build_system_prompt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BUILTIN_TOOLS`, `SecurityLevel`, `ToolDef`, and `ToolParam` [INFO] [stdout] --> src/tools/mod.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | pub use registry::{SecurityLevel, ToolDef, ToolParam, BUILTIN_TOOLS}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `persona` [INFO] [stdout] --> src/core/context.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let persona = Persona::new_default("Test"); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_persona` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `native_name` is never used [INFO] [stdout] --> src/i18n/mod.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl Lang { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn native_name(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_HOME_NOT_FOUND` is never used [INFO] [stdout] --> src/i18n/keys.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const ERR_HOME_NOT_FOUND: &str = "err.home_not_found"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_SANDBOX_CREATE` is never used [INFO] [stdout] --> src/i18n/keys.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const ERR_SANDBOX_CREATE: &str = "err.sandbox_create"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_ALREADY_RUNNING` is never used [INFO] [stdout] --> src/i18n/keys.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const ERR_ALREADY_RUNNING: &str = "err.already_running"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_LOCK_FILE` is never used [INFO] [stdout] --> src/i18n/keys.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const ERR_LOCK_FILE: &str = "err.lock_file"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_KEY_DERIVATION` is never used [INFO] [stdout] --> src/i18n/keys.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const ERR_KEY_DERIVATION: &str = "err.key_derivation"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_ENCRYPTION` is never used [INFO] [stdout] --> src/i18n/keys.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const ERR_ENCRYPTION: &str = "err.encryption"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_DECRYPTION` is never used [INFO] [stdout] --> src/i18n/keys.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const ERR_DECRYPTION: &str = "err.decryption"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_CONFIG_IO` is never used [INFO] [stdout] --> src/i18n/keys.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const ERR_CONFIG_IO: &str = "err.config_io"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_INVALID_CONFIG` is never used [INFO] [stdout] --> src/i18n/keys.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const ERR_INVALID_CONFIG: &str = "err.invalid_config"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_SERIALIZATION` is never used [INFO] [stdout] --> src/i18n/keys.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const ERR_SERIALIZATION: &str = "err.serialization"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_MAX_AGENTS` is never used [INFO] [stdout] --> src/i18n/keys.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const ERR_MAX_AGENTS: &str = "err.max_agents"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_HTTP_CLIENT` is never used [INFO] [stdout] --> src/i18n/keys.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const ERR_HTTP_CLIENT: &str = "err.http_client"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_EMPTY` is never used [INFO] [stdout] --> src/i18n/keys.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const PW_EMPTY: &str = "pw.empty"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_TOO_SHORT` is never used [INFO] [stdout] --> src/i18n/keys.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const PW_TOO_SHORT: &str = "pw.too_short"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_MISMATCH` is never used [INFO] [stdout] --> src/i18n/keys.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const PW_MISMATCH: &str = "pw.mismatch"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_KEY_GENERATED` is never used [INFO] [stdout] --> src/i18n/keys.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const PW_KEY_GENERATED: &str = "pw.key_generated"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_SAVE_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const PW_SAVE_FAIL: &str = "pw.save_fail"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_DECRYPT_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const PW_DECRYPT_OK: &str = "pw.decrypt_ok"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_3FAIL_RESET` is never used [INFO] [stdout] --> src/i18n/keys.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const PW_3FAIL_RESET: &str = "pw.3fail_reset"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_WRONG_PW` is never used [INFO] [stdout] --> src/i18n/keys.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const PW_WRONG_PW: &str = "pw.wrong_pw"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_SAVE_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const ONBOARD_SAVE_OK: &str = "onboard.save_ok"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_SAVE_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const ONBOARD_SAVE_FAIL: &str = "onboard.save_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_LLM_WAIT` is never used [INFO] [stdout] --> src/i18n/keys.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const ONBOARD_LLM_WAIT: &str = "onboard.llm_status_wait"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_LLM_TESTING` is never used [INFO] [stdout] --> src/i18n/keys.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const ONBOARD_LLM_TESTING: &str = "onboard.llm_status_testing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_LLM_FAIL_RETRY` is never used [INFO] [stdout] --> src/i18n/keys.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const ONBOARD_LLM_FAIL_RETRY: &str = "onboard.llm_status_fail_retry"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_TG_WAIT` is never used [INFO] [stdout] --> src/i18n/keys.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const ONBOARD_TG_WAIT: &str = "onboard.tg_status_wait"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_TG_TESTING` is never used [INFO] [stdout] --> src/i18n/keys.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const ONBOARD_TG_TESTING: &str = "onboard.tg_status_testing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_TG_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const ONBOARD_TG_OK: &str = "onboard.tg_status_ok"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_TG_FAIL_RETRY` is never used [INFO] [stdout] --> src/i18n/keys.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const ONBOARD_TG_FAIL_RETRY: &str = "onboard.tg_status_fail_retry"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOOT_INIT_MSG` is never used [INFO] [stdout] --> src/i18n/keys.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const BOOT_INIT_MSG: &str = "boot.init_msg"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_LLM_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const FEED_LLM_OK: &str = "feed.llm_verify_ok"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_LLM_OK_SIMPLE` is never used [INFO] [stdout] --> src/i18n/keys.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const FEED_LLM_OK_SIMPLE: &str = "feed.llm_verify_ok_simple"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_LLM_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const FEED_LLM_FAIL: &str = "feed.llm_verify_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_TG_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const FEED_TG_OK: &str = "feed.tg_verify_ok"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_TG_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | pub const FEED_TG_FAIL: &str = "feed.tg_verify_fail"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_STATUS` is never used [INFO] [stdout] --> src/i18n/keys.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | pub const DASH_AGENT_STATUS: &str = "dash.agent_status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:55:11 [INFO] [stdout] | [INFO] [stdout] 55 | pub const DASH_AGENT_NAME: &str = "dash.agent_name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_MODEL` is never used [INFO] [stdout] --> src/i18n/keys.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const DASH_MODEL: &str = "dash.model"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SECURITY` is never used [INFO] [stdout] --> src/i18n/keys.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | pub const DASH_SECURITY: &str = "dash.security"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_LLM_NONE` is never used [INFO] [stdout] --> src/i18n/keys.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const DASH_LLM_NONE: &str = "dash.llm_none"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_HEADER` is never used [INFO] [stdout] --> src/i18n/keys.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | pub const DASH_SKILL_HEADER: &str = "dash.skill_header"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_BUILTIN` is never used [INFO] [stdout] --> src/i18n/keys.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const DASH_SKILL_BUILTIN: &str = "dash.skill_builtin"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_CORE_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const DASH_SKILL_CORE_FAIL: &str = "dash.skill_core_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_USER` is never used [INFO] [stdout] --> src/i18n/keys.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const DASH_SKILL_USER: &str = "dash.skill_user"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_USER_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const DASH_SKILL_USER_FAIL: &str = "dash.skill_user_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_TM_HEADER` is never used [INFO] [stdout] --> src/i18n/keys.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const DASH_TM_HEADER: &str = "dash.timemachine_header"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_TM_COLS` is never used [INFO] [stdout] --> src/i18n/keys.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const DASH_TM_COLS: &str = "dash.timemachine_cols"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_NO_RECORDS` is never used [INFO] [stdout] --> src/i18n/keys.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const DASH_NO_RECORDS: &str = "dash.no_records"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_TOTAL_COUNT` is never used [INFO] [stdout] --> src/i18n/keys.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const DASH_TOTAL_COUNT: &str = "dash.total_count"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_DB_QUERY_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | pub const DASH_DB_QUERY_FAIL: &str = "dash.db_query_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_DB_OPEN_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const DASH_DB_OPEN_FAIL: &str = "dash.db_open_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_SWITCH` is never used [INFO] [stdout] --> src/i18n/keys.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const DASH_AGENT_SWITCH: &str = "dash.agent_switch_header"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_NO_AGENTS` is never used [INFO] [stdout] --> src/i18n/keys.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const DASH_NO_AGENTS: &str = "dash.no_agents"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_ACTIVE` is never used [INFO] [stdout] --> src/i18n/keys.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | pub const DASH_ACTIVE: &str = "dash.active"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_INACTIVE` is never used [INFO] [stdout] --> src/i18n/keys.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const DASH_INACTIVE: &str = "dash.inactive"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_SWITCHED` is never used [INFO] [stdout] --> src/i18n/keys.rs:74:11 [INFO] [stdout] | [INFO] [stdout] 74 | pub const DASH_AGENT_SWITCHED: &str = "dash.agent_switched"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_NO_SWITCH` is never used [INFO] [stdout] --> src/i18n/keys.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const DASH_NO_SWITCH: &str = "dash.no_switch"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_ADDED` is never used [INFO] [stdout] --> src/i18n/keys.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const DASH_AGENT_ADDED: &str = "dash.agent_added"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_ADD_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const DASH_AGENT_ADD_FAIL: &str = "dash.agent_add_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_NO_CONFIG` is never used [INFO] [stdout] --> src/i18n/keys.rs:80:11 [INFO] [stdout] | [INFO] [stdout] 80 | pub const CLI_NO_CONFIG: &str = "cli.no_config"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_ENTER_PW` is never used [INFO] [stdout] --> src/i18n/keys.rs:81:11 [INFO] [stdout] | [INFO] [stdout] 81 | pub const CLI_ENTER_PW: &str = "cli.enter_pw"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_NO_TELEGRAM` is never used [INFO] [stdout] --> src/i18n/keys.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | pub const CLI_NO_TELEGRAM: &str = "cli.no_telegram"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_PAIRED` is never used [INFO] [stdout] --> src/i18n/keys.rs:83:11 [INFO] [stdout] | [INFO] [stdout] 83 | pub const CLI_PAIRED: &str = "cli.paired"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_CHAT_SAVED` is never used [INFO] [stdout] --> src/i18n/keys.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const CLI_CHAT_SAVED: &str = "cli.chat_saved"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_CHAT_SAVE_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const CLI_CHAT_SAVE_FAIL: &str = "cli.chat_save_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_MSG_RECEIVED` is never used [INFO] [stdout] --> src/i18n/keys.rs:86:11 [INFO] [stdout] | [INFO] [stdout] 86 | pub const CLI_MSG_RECEIVED: &str = "cli.msg_received"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_BOT_SHUTDOWN` is never used [INFO] [stdout] --> src/i18n/keys.rs:87:11 [INFO] [stdout] | [INFO] [stdout] 87 | pub const CLI_BOT_SHUTDOWN: &str = "cli.bot_shutdown"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_GRACEFUL` is never used [INFO] [stdout] --> src/i18n/keys.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | pub const CLI_GRACEFUL: &str = "cli.graceful_shutdown"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_LEVEL_SAFE` is never used [INFO] [stdout] --> src/i18n/keys.rs:91:11 [INFO] [stdout] | [INFO] [stdout] 91 | pub const TOOL_LEVEL_SAFE: &str = "tool.level.safe"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_LEVEL_JAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:92:11 [INFO] [stdout] | [INFO] [stdout] 92 | pub const TOOL_LEVEL_JAIL: &str = "tool.level.jail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_LEVEL_RESTRICTED` is never used [INFO] [stdout] --> src/i18n/keys.rs:93:11 [INFO] [stdout] | [INFO] [stdout] 93 | pub const TOOL_LEVEL_RESTRICTED: &str = "tool.level.restricted"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_FILE_READ_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:94:11 [INFO] [stdout] | [INFO] [stdout] 94 | pub const TOOL_FILE_READ_NAME: &str = "tool.file_read.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_FILE_WRITE_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:95:11 [INFO] [stdout] | [INFO] [stdout] 95 | pub const TOOL_FILE_WRITE_NAME: &str = "tool.file_write.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_FILE_LIST_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:96:11 [INFO] [stdout] | [INFO] [stdout] 96 | pub const TOOL_FILE_LIST_NAME: &str = "tool.file_list.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_SLEEP_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:97:11 [INFO] [stdout] | [INFO] [stdout] 97 | pub const TOOL_SLEEP_NAME: &str = "tool.sleep.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_PRINT_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:98:11 [INFO] [stdout] | [INFO] [stdout] 98 | pub const TOOL_PRINT_NAME: &str = "tool.print.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOT_PAIR_PROMPT` is never used [INFO] [stdout] --> src/i18n/keys.rs:101:11 [INFO] [stdout] | [INFO] [stdout] 101 | pub const BOT_PAIR_PROMPT: &str = "bot.pair_prompt"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOT_PAIR_SUCCESS` is never used [INFO] [stdout] --> src/i18n/keys.rs:102:11 [INFO] [stdout] | [INFO] [stdout] 102 | pub const BOT_PAIR_SUCCESS: &str = "bot.pair_success"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOT_PAIR_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:103:11 [INFO] [stdout] | [INFO] [stdout] 103 | pub const BOT_PAIR_FAIL: &str = "bot.pair_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOT_HELP` is never used [INFO] [stdout] --> src/i18n/keys.rs:104:11 [INFO] [stdout] | [INFO] [stdout] 104 | pub const BOT_HELP: &str = "bot.help"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_USER_MSG` is never used [INFO] [stdout] --> src/i18n/keys.rs:107:11 [INFO] [stdout] | [INFO] [stdout] 107 | pub const DB_TYPE_USER_MSG: &str = "db.type.user_msg"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_AGENT_RESP` is never used [INFO] [stdout] --> src/i18n/keys.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | pub const DB_TYPE_AGENT_RESP: &str = "db.type.agent_resp"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_FILE_OP` is never used [INFO] [stdout] --> src/i18n/keys.rs:109:11 [INFO] [stdout] | [INFO] [stdout] 109 | pub const DB_TYPE_FILE_OP: &str = "db.type.file_op"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_CONFIG_CHANGE` is never used [INFO] [stdout] --> src/i18n/keys.rs:110:11 [INFO] [stdout] | [INFO] [stdout] 110 | pub const DB_TYPE_CONFIG_CHANGE: &str = "db.type.config_change"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_TOOL_CALL` is never used [INFO] [stdout] --> src/i18n/keys.rs:111:11 [INFO] [stdout] | [INFO] [stdout] 111 | pub const DB_TYPE_TOOL_CALL: &str = "db.type.tool_call"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_SECURITY_EVENT` is never used [INFO] [stdout] --> src/i18n/keys.rs:112:11 [INFO] [stdout] | [INFO] [stdout] 112 | pub const DB_TYPE_SECURITY_EVENT: &str = "db.type.security_event"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VAL_TIMEOUT` is never used [INFO] [stdout] --> src/i18n/keys.rs:115:11 [INFO] [stdout] | [INFO] [stdout] 115 | pub const VAL_TIMEOUT: &str = "val.timeout"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VAL_CONNECT_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:116:11 [INFO] [stdout] | [INFO] [stdout] 116 | pub const VAL_CONNECT_FAIL: &str = "val.connect_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VAL_BOT_CONFIRMED` is never used [INFO] [stdout] --> src/i18n/keys.rs:117:11 [INFO] [stdout] | [INFO] [stdout] 117 | pub const VAL_BOT_CONFIRMED: &str = "val.bot_confirmed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VAL_CHECK_TOKEN` is never used [INFO] [stdout] --> src/i18n/keys.rs:118:11 [INFO] [stdout] | [INFO] [stdout] 118 | pub const VAL_CHECK_TOKEN: &str = "val.check_token"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `active_agent_mut` is never used [INFO] [stdout] --> src/config.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl AppConfig { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn active_agent_mut(&mut self) -> Option<&mut AgentConfig> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `model` and `tokens_used` are never read [INFO] [stdout] --> src/core/agent.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct AgentResponse { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 98 | pub model: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 99 | pub tokens_used: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AgentResponse` 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: function `chat` is never used [INFO] [stdout] --> src/core/agent.rs:250:14 [INFO] [stdout] | [INFO] [stdout] 250 | pub async fn chat(config: &AgentConfig, messages: &[ChatMessage]) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `root` is never read [INFO] [stdout] --> src/core/agent_manager.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct AgentPaths { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 18 | pub root: PathBuf, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AgentPaths` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `sandbox_root` is never read [INFO] [stdout] --> src/core/agent_manager.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 61 | pub struct AgentManager { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 62 | /// 샌드박스 루트 경로 [INFO] [stdout] 63 | sandbox_root: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_agent`, `count`, and `agent_ids` are never used [INFO] [stdout] --> src/core/agent_manager.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl AgentManager { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn add_agent(&mut self, agent_id: u8) -> Result<&AgentPaths, String> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn count(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn agent_ids(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `seed_bootstrap_file` is never used [INFO] [stdout] --> src/core/bootstrap.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn seed_bootstrap_file(workspace: &Path) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ToolUsed` and `Error` are never constructed [INFO] [stdout] --> src/core/chat_loop.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub enum ChatEvent { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 29 | ToolUsed(String), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | Error(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ChatEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `busy` is never read [INFO] [stdout] --> src/core/chat_loop.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub struct ChatWorker { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 52 | busy: std::sync::Arc, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_busy` is never used [INFO] [stdout] --> src/core/chat_loop.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl ChatWorker { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn is_busy(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `pending_count`, `clear_history`, and `history` are never used [INFO] [stdout] --> src/core/chat_loop.rs:397:12 [INFO] [stdout] | [INFO] [stdout] 192 | impl ChatSession { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 397 | pub fn pending_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 559 | pub fn clear_history(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 564 | pub fn history(&self) -> &[ChatMessage] { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `utilization` is never used [INFO] [stdout] --> src/core/context.rs:153:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl TokenUsage { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 152 | /// 사용률 (0.0 ~ 1.0+) [INFO] [stdout] 153 | pub fn utilization(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `load` is never used [INFO] [stdout] --> src/core/persona.rs:290:12 [INFO] [stdout] | [INFO] [stdout] 288 | impl UserProfile { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 289 | /// user.toml 로드 [INFO] [stdout] 290 | pub fn load(workspace: &Path) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/core/telegram.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | Started(String), [INFO] [stdout] | ------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `BotEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 27 - Started(String), [INFO] [stdout] 27 + Started(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/core/telegram.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | ResponseSent(String), [INFO] [stdout] | ------------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `BotEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 33 - ResponseSent(String), [INFO] [stdout] 33 + ResponseSent(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/core/telegram.rs:35:19 [INFO] [stdout] | [INFO] [stdout] 35 | AgentSwitched(u8), [INFO] [stdout] | ------------- ^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `BotEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 35 - AgentSwitched(u8), [INFO] [stdout] 35 + AgentSwitched(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Shutdown` is never constructed [INFO] [stdout] --> src/core/telegram.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub enum BotCommand { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 48 | Shutdown, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BotCommand` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `set_agents` are never used [INFO] [stdout] --> src/core/telegram.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 66 | impl BotState { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 67 | pub fn new(pin: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn set_agents(&mut self, ids: Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OfflineQueue` is never constructed [INFO] [stdout] --> src/core/telegram.rs:104:12 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct OfflineQueue { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `enqueue`, `drain`, `len`, and `is_empty` are never used [INFO] [stdout] --> src/core/telegram.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 111 | impl OfflineQueue { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 112 | pub fn new(max_size: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn enqueue(&mut self, msg: String) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn drain(&mut self) -> Vec { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `reset` is never used [INFO] [stdout] --> src/core/telegram.rs:181:12 [INFO] [stdout] | [INFO] [stdout] 155 | impl Backoff { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_shutdown_flag` is never used [INFO] [stdout] --> src/core/telegram.rs:197:8 [INFO] [stdout] | [INFO] [stdout] 197 | pub fn create_shutdown_flag() -> Arc { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `content` is never read [INFO] [stdout] --> src/db/store.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 84 | pub struct ActionRecord { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 89 | pub content: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ActionRecord` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `db_path` is never read [INFO] [stdout] --> src/db/store.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 96 | pub struct FemtoDb { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 97 | conn: Connection, [INFO] [stdout] 98 | db_path: PathBuf, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/db/store.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl FemtoDb { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn recent_actions(&self, limit: usize) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn actions_filtered( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 237 | pub fn undo_by_id(&self, id: i64) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn undo_last(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | pub fn check_integrity(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn backup(&self) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 289 | pub fn restore_from_backup(&self) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | pub fn action_count_filtered(&self, action_type: &ActionType) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `log_file` is never read [INFO] [stdout] --> src/sandbox.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct SandboxPaths { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 41 | pub log_file: PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SandboxPaths` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `release` is never used [INFO] [stdout] --> src/sandbox.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 89 | impl ProcessLock { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn release(&self) -> FemtoResult<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `BlacklistedCommand` is never constructed [INFO] [stdout] --> src/security/jail.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum JailViolation { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 20 | BlacklistedCommand(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JailViolation` 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: constant `BLACKLISTED_COMMANDS` is never used [INFO] [stdout] --> src/security/jail.rs:38:7 [INFO] [stdout] | [INFO] [stdout] 38 | const BLACKLISTED_COMMANDS: &[&str] = &[ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_command` is never used [INFO] [stdout] --> src/security/jail.rs:120:8 [INFO] [stdout] | [INFO] [stdout] 120 | pub fn validate_command(command: &str) -> Result<(), JailViolation> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cleanup_temp` is never used [INFO] [stdout] --> src/security/jail.rs:132:8 [INFO] [stdout] | [INFO] [stdout] 132 | pub fn cleanup_temp(workspace: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `version`, `prompt_template`, `system_prompt`, `allowed_actions`, and `is_builtin` are never read [INFO] [stdout] --> src/skills/loader.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct Skill { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 96 | pub version: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 97 | pub prompt_template: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 98 | pub system_prompt: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 99 | pub allowed_actions: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub is_builtin: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Skill` 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: function `save_skill` is never used [INFO] [stdout] --> src/skills/loader.rs:207:8 [INFO] [stdout] | [INFO] [stdout] 207 | pub fn save_skill(skill: &Skill, user_dir: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `workspace` is never read [INFO] [stdout] --> src/skills/rhai_engine.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct RhaiEngine { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | workspace: PathBuf, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `compile` and `workspace` are never used [INFO] [stdout] --> src/skills/rhai_engine.rs:186:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl RhaiEngine { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn compile(&self, script: &str) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn workspace(&self) -> &Path { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Timeout` and `CommandBlocked` are never constructed [INFO] [stdout] --> src/tools/executor.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub enum ToolError { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 31 | Timeout(String), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 32 | /// 블랙리스트 명령어 [INFO] [stdout] 33 | CommandBlocked(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ToolError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tool_id` and `security_event` are never read [INFO] [stdout] --> src/tools/executor.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct ToolResult { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 110 | /// 도구 ID [INFO] [stdout] 111 | pub tool_id: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub security_event: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ToolResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `reset_failures` is never used [INFO] [stdout] --> src/tools/executor.rs:291:12 [INFO] [stdout] | [INFO] [stdout] 130 | impl ToolExecutor { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 291 | pub fn reset_failures(&mut self, tool_id: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `welcome_message`, `explain_workspace`, and `help_for_error` are never used [INFO] [stdout] --> src/tools/guide.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl JailingGuide { [INFO] [stdout] | ----------------- associated functions in this implementation [INFO] [stdout] 14 | /// [v0.5.0] 첫 대화 시 workspace 개념을 소개하는 메시지 [INFO] [stdout] 15 | pub fn welcome_message() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn explain_workspace() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn help_for_error(error_type: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tool_summary` is never used [INFO] [stdout] --> src/tools/prompt.rs:101:8 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn tool_summary() -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Restricted` is never constructed [INFO] [stdout] --> src/tools/registry.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum SecurityLevel { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | Restricted, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SecurityLevel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `display` is never used [INFO] [stdout] --> src/tools/registry.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl SecurityLevel { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 22 | /// [v0.5.0] 보안 수준 표시명 (영어 → 다국어 지원 시 msg!() 전환 가능) [INFO] [stdout] 23 | pub fn display(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_first_run` is never read [INFO] [stdout] --> src/tui/app.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct App { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 135 | is_first_run: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SURFACE` is never used [INFO] [stdout] --> src/tui/theme.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const SURFACE: Color = Color::Rgb(0x14, 0x0E, 0x00); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_HOME_NOT_FOUND` is never used [INFO] [stdout] --> src/i18n/keys.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const ERR_HOME_NOT_FOUND: &str = "err.home_not_found"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_SANDBOX_CREATE` is never used [INFO] [stdout] --> src/i18n/keys.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const ERR_SANDBOX_CREATE: &str = "err.sandbox_create"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_ALREADY_RUNNING` is never used [INFO] [stdout] --> src/i18n/keys.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const ERR_ALREADY_RUNNING: &str = "err.already_running"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_LOCK_FILE` is never used [INFO] [stdout] --> src/i18n/keys.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const ERR_LOCK_FILE: &str = "err.lock_file"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_KEY_DERIVATION` is never used [INFO] [stdout] --> src/i18n/keys.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const ERR_KEY_DERIVATION: &str = "err.key_derivation"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_ENCRYPTION` is never used [INFO] [stdout] --> src/i18n/keys.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const ERR_ENCRYPTION: &str = "err.encryption"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_DECRYPTION` is never used [INFO] [stdout] --> src/i18n/keys.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const ERR_DECRYPTION: &str = "err.decryption"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_CONFIG_IO` is never used [INFO] [stdout] --> src/i18n/keys.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const ERR_CONFIG_IO: &str = "err.config_io"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_INVALID_CONFIG` is never used [INFO] [stdout] --> src/i18n/keys.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const ERR_INVALID_CONFIG: &str = "err.invalid_config"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_SERIALIZATION` is never used [INFO] [stdout] --> src/i18n/keys.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const ERR_SERIALIZATION: &str = "err.serialization"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_MAX_AGENTS` is never used [INFO] [stdout] --> src/i18n/keys.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const ERR_MAX_AGENTS: &str = "err.max_agents"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ERR_HTTP_CLIENT` is never used [INFO] [stdout] --> src/i18n/keys.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const ERR_HTTP_CLIENT: &str = "err.http_client"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_EMPTY` is never used [INFO] [stdout] --> src/i18n/keys.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const PW_EMPTY: &str = "pw.empty"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_TOO_SHORT` is never used [INFO] [stdout] --> src/i18n/keys.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const PW_TOO_SHORT: &str = "pw.too_short"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_MISMATCH` is never used [INFO] [stdout] --> src/i18n/keys.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const PW_MISMATCH: &str = "pw.mismatch"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_KEY_GENERATED` is never used [INFO] [stdout] --> src/i18n/keys.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const PW_KEY_GENERATED: &str = "pw.key_generated"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_SAVE_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const PW_SAVE_FAIL: &str = "pw.save_fail"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_DECRYPT_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const PW_DECRYPT_OK: &str = "pw.decrypt_ok"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_3FAIL_RESET` is never used [INFO] [stdout] --> src/i18n/keys.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const PW_3FAIL_RESET: &str = "pw.3fail_reset"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PW_WRONG_PW` is never used [INFO] [stdout] --> src/i18n/keys.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const PW_WRONG_PW: &str = "pw.wrong_pw"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_SAVE_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const ONBOARD_SAVE_OK: &str = "onboard.save_ok"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_SAVE_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const ONBOARD_SAVE_FAIL: &str = "onboard.save_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_LLM_WAIT` is never used [INFO] [stdout] --> src/i18n/keys.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const ONBOARD_LLM_WAIT: &str = "onboard.llm_status_wait"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_LLM_TESTING` is never used [INFO] [stdout] --> src/i18n/keys.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const ONBOARD_LLM_TESTING: &str = "onboard.llm_status_testing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_LLM_FAIL_RETRY` is never used [INFO] [stdout] --> src/i18n/keys.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const ONBOARD_LLM_FAIL_RETRY: &str = "onboard.llm_status_fail_retry"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_TG_WAIT` is never used [INFO] [stdout] --> src/i18n/keys.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const ONBOARD_TG_WAIT: &str = "onboard.tg_status_wait"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_TG_TESTING` is never used [INFO] [stdout] --> src/i18n/keys.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const ONBOARD_TG_TESTING: &str = "onboard.tg_status_testing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_TG_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const ONBOARD_TG_OK: &str = "onboard.tg_status_ok"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ONBOARD_TG_FAIL_RETRY` is never used [INFO] [stdout] --> src/i18n/keys.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const ONBOARD_TG_FAIL_RETRY: &str = "onboard.tg_status_fail_retry"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOOT_INIT_MSG` is never used [INFO] [stdout] --> src/i18n/keys.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const BOOT_INIT_MSG: &str = "boot.init_msg"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_LLM_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const FEED_LLM_OK: &str = "feed.llm_verify_ok"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_LLM_OK_SIMPLE` is never used [INFO] [stdout] --> src/i18n/keys.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const FEED_LLM_OK_SIMPLE: &str = "feed.llm_verify_ok_simple"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_LLM_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const FEED_LLM_FAIL: &str = "feed.llm_verify_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_TG_OK` is never used [INFO] [stdout] --> src/i18n/keys.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const FEED_TG_OK: &str = "feed.tg_verify_ok"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEED_TG_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | pub const FEED_TG_FAIL: &str = "feed.tg_verify_fail"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_STATUS` is never used [INFO] [stdout] --> src/i18n/keys.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | pub const DASH_AGENT_STATUS: &str = "dash.agent_status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:55:11 [INFO] [stdout] | [INFO] [stdout] 55 | pub const DASH_AGENT_NAME: &str = "dash.agent_name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_MODEL` is never used [INFO] [stdout] --> src/i18n/keys.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const DASH_MODEL: &str = "dash.model"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SECURITY` is never used [INFO] [stdout] --> src/i18n/keys.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | pub const DASH_SECURITY: &str = "dash.security"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_LLM_NONE` is never used [INFO] [stdout] --> src/i18n/keys.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const DASH_LLM_NONE: &str = "dash.llm_none"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_HEADER` is never used [INFO] [stdout] --> src/i18n/keys.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | pub const DASH_SKILL_HEADER: &str = "dash.skill_header"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_BUILTIN` is never used [INFO] [stdout] --> src/i18n/keys.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const DASH_SKILL_BUILTIN: &str = "dash.skill_builtin"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_CORE_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const DASH_SKILL_CORE_FAIL: &str = "dash.skill_core_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_USER` is never used [INFO] [stdout] --> src/i18n/keys.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const DASH_SKILL_USER: &str = "dash.skill_user"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_SKILL_USER_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const DASH_SKILL_USER_FAIL: &str = "dash.skill_user_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_TM_HEADER` is never used [INFO] [stdout] --> src/i18n/keys.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const DASH_TM_HEADER: &str = "dash.timemachine_header"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_TM_COLS` is never used [INFO] [stdout] --> src/i18n/keys.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const DASH_TM_COLS: &str = "dash.timemachine_cols"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_NO_RECORDS` is never used [INFO] [stdout] --> src/i18n/keys.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const DASH_NO_RECORDS: &str = "dash.no_records"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_TOTAL_COUNT` is never used [INFO] [stdout] --> src/i18n/keys.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const DASH_TOTAL_COUNT: &str = "dash.total_count"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_DB_QUERY_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | pub const DASH_DB_QUERY_FAIL: &str = "dash.db_query_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_DB_OPEN_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const DASH_DB_OPEN_FAIL: &str = "dash.db_open_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_SWITCH` is never used [INFO] [stdout] --> src/i18n/keys.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const DASH_AGENT_SWITCH: &str = "dash.agent_switch_header"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_NO_AGENTS` is never used [INFO] [stdout] --> src/i18n/keys.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const DASH_NO_AGENTS: &str = "dash.no_agents"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_ACTIVE` is never used [INFO] [stdout] --> src/i18n/keys.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | pub const DASH_ACTIVE: &str = "dash.active"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_INACTIVE` is never used [INFO] [stdout] --> src/i18n/keys.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const DASH_INACTIVE: &str = "dash.inactive"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_SWITCHED` is never used [INFO] [stdout] --> src/i18n/keys.rs:74:11 [INFO] [stdout] | [INFO] [stdout] 74 | pub const DASH_AGENT_SWITCHED: &str = "dash.agent_switched"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_NO_SWITCH` is never used [INFO] [stdout] --> src/i18n/keys.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const DASH_NO_SWITCH: &str = "dash.no_switch"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_ADDED` is never used [INFO] [stdout] --> src/i18n/keys.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const DASH_AGENT_ADDED: &str = "dash.agent_added"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DASH_AGENT_ADD_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const DASH_AGENT_ADD_FAIL: &str = "dash.agent_add_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_NO_CONFIG` is never used [INFO] [stdout] --> src/i18n/keys.rs:80:11 [INFO] [stdout] | [INFO] [stdout] 80 | pub const CLI_NO_CONFIG: &str = "cli.no_config"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_ENTER_PW` is never used [INFO] [stdout] --> src/i18n/keys.rs:81:11 [INFO] [stdout] | [INFO] [stdout] 81 | pub const CLI_ENTER_PW: &str = "cli.enter_pw"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_NO_TELEGRAM` is never used [INFO] [stdout] --> src/i18n/keys.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | pub const CLI_NO_TELEGRAM: &str = "cli.no_telegram"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_PAIRED` is never used [INFO] [stdout] --> src/i18n/keys.rs:83:11 [INFO] [stdout] | [INFO] [stdout] 83 | pub const CLI_PAIRED: &str = "cli.paired"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_CHAT_SAVED` is never used [INFO] [stdout] --> src/i18n/keys.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const CLI_CHAT_SAVED: &str = "cli.chat_saved"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_CHAT_SAVE_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const CLI_CHAT_SAVE_FAIL: &str = "cli.chat_save_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_MSG_RECEIVED` is never used [INFO] [stdout] --> src/i18n/keys.rs:86:11 [INFO] [stdout] | [INFO] [stdout] 86 | pub const CLI_MSG_RECEIVED: &str = "cli.msg_received"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_BOT_SHUTDOWN` is never used [INFO] [stdout] --> src/i18n/keys.rs:87:11 [INFO] [stdout] | [INFO] [stdout] 87 | pub const CLI_BOT_SHUTDOWN: &str = "cli.bot_shutdown"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLI_GRACEFUL` is never used [INFO] [stdout] --> src/i18n/keys.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | pub const CLI_GRACEFUL: &str = "cli.graceful_shutdown"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_LEVEL_SAFE` is never used [INFO] [stdout] --> src/i18n/keys.rs:91:11 [INFO] [stdout] | [INFO] [stdout] 91 | pub const TOOL_LEVEL_SAFE: &str = "tool.level.safe"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_LEVEL_JAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:92:11 [INFO] [stdout] | [INFO] [stdout] 92 | pub const TOOL_LEVEL_JAIL: &str = "tool.level.jail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_LEVEL_RESTRICTED` is never used [INFO] [stdout] --> src/i18n/keys.rs:93:11 [INFO] [stdout] | [INFO] [stdout] 93 | pub const TOOL_LEVEL_RESTRICTED: &str = "tool.level.restricted"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_FILE_READ_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:94:11 [INFO] [stdout] | [INFO] [stdout] 94 | pub const TOOL_FILE_READ_NAME: &str = "tool.file_read.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_FILE_WRITE_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:95:11 [INFO] [stdout] | [INFO] [stdout] 95 | pub const TOOL_FILE_WRITE_NAME: &str = "tool.file_write.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_FILE_LIST_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:96:11 [INFO] [stdout] | [INFO] [stdout] 96 | pub const TOOL_FILE_LIST_NAME: &str = "tool.file_list.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_SLEEP_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:97:11 [INFO] [stdout] | [INFO] [stdout] 97 | pub const TOOL_SLEEP_NAME: &str = "tool.sleep.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOOL_PRINT_NAME` is never used [INFO] [stdout] --> src/i18n/keys.rs:98:11 [INFO] [stdout] | [INFO] [stdout] 98 | pub const TOOL_PRINT_NAME: &str = "tool.print.name"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOT_PAIR_PROMPT` is never used [INFO] [stdout] --> src/i18n/keys.rs:101:11 [INFO] [stdout] | [INFO] [stdout] 101 | pub const BOT_PAIR_PROMPT: &str = "bot.pair_prompt"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOT_PAIR_SUCCESS` is never used [INFO] [stdout] --> src/i18n/keys.rs:102:11 [INFO] [stdout] | [INFO] [stdout] 102 | pub const BOT_PAIR_SUCCESS: &str = "bot.pair_success"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOT_PAIR_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:103:11 [INFO] [stdout] | [INFO] [stdout] 103 | pub const BOT_PAIR_FAIL: &str = "bot.pair_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOT_HELP` is never used [INFO] [stdout] --> src/i18n/keys.rs:104:11 [INFO] [stdout] | [INFO] [stdout] 104 | pub const BOT_HELP: &str = "bot.help"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_USER_MSG` is never used [INFO] [stdout] --> src/i18n/keys.rs:107:11 [INFO] [stdout] | [INFO] [stdout] 107 | pub const DB_TYPE_USER_MSG: &str = "db.type.user_msg"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_AGENT_RESP` is never used [INFO] [stdout] --> src/i18n/keys.rs:108:11 [INFO] [stdout] | [INFO] [stdout] 108 | pub const DB_TYPE_AGENT_RESP: &str = "db.type.agent_resp"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_FILE_OP` is never used [INFO] [stdout] --> src/i18n/keys.rs:109:11 [INFO] [stdout] | [INFO] [stdout] 109 | pub const DB_TYPE_FILE_OP: &str = "db.type.file_op"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_CONFIG_CHANGE` is never used [INFO] [stdout] --> src/i18n/keys.rs:110:11 [INFO] [stdout] | [INFO] [stdout] 110 | pub const DB_TYPE_CONFIG_CHANGE: &str = "db.type.config_change"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_TOOL_CALL` is never used [INFO] [stdout] --> src/i18n/keys.rs:111:11 [INFO] [stdout] | [INFO] [stdout] 111 | pub const DB_TYPE_TOOL_CALL: &str = "db.type.tool_call"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_TYPE_SECURITY_EVENT` is never used [INFO] [stdout] --> src/i18n/keys.rs:112:11 [INFO] [stdout] | [INFO] [stdout] 112 | pub const DB_TYPE_SECURITY_EVENT: &str = "db.type.security_event"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VAL_TIMEOUT` is never used [INFO] [stdout] --> src/i18n/keys.rs:115:11 [INFO] [stdout] | [INFO] [stdout] 115 | pub const VAL_TIMEOUT: &str = "val.timeout"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VAL_CONNECT_FAIL` is never used [INFO] [stdout] --> src/i18n/keys.rs:116:11 [INFO] [stdout] | [INFO] [stdout] 116 | pub const VAL_CONNECT_FAIL: &str = "val.connect_fail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VAL_BOT_CONFIRMED` is never used [INFO] [stdout] --> src/i18n/keys.rs:117:11 [INFO] [stdout] | [INFO] [stdout] 117 | pub const VAL_BOT_CONFIRMED: &str = "val.bot_confirmed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VAL_CHECK_TOKEN` is never used [INFO] [stdout] --> src/i18n/keys.rs:118:11 [INFO] [stdout] | [INFO] [stdout] 118 | pub const VAL_CHECK_TOKEN: &str = "val.check_token"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `active_agent_mut` is never used [INFO] [stdout] --> src/config.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl AppConfig { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn active_agent_mut(&mut self) -> Option<&mut AgentConfig> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `model` and `tokens_used` are never read [INFO] [stdout] --> src/core/agent.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct AgentResponse { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 98 | pub model: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 99 | pub tokens_used: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AgentResponse` 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: function `chat` is never used [INFO] [stdout] --> src/core/agent.rs:250:14 [INFO] [stdout] | [INFO] [stdout] 250 | pub async fn chat(config: &AgentConfig, messages: &[ChatMessage]) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ToolUsed` and `Error` are never constructed [INFO] [stdout] --> src/core/chat_loop.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub enum ChatEvent { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 29 | ToolUsed(String), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | Error(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ChatEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `busy` is never read [INFO] [stdout] --> src/core/chat_loop.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub struct ChatWorker { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 52 | busy: std::sync::Arc, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_busy` is never used [INFO] [stdout] --> src/core/chat_loop.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl ChatWorker { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn is_busy(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `pending_count` is never used [INFO] [stdout] --> src/core/chat_loop.rs:397:12 [INFO] [stdout] | [INFO] [stdout] 192 | impl ChatSession { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 397 | pub fn pending_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `load` is never used [INFO] [stdout] --> src/core/persona.rs:290:12 [INFO] [stdout] | [INFO] [stdout] 288 | impl UserProfile { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 289 | /// user.toml 로드 [INFO] [stdout] 290 | pub fn load(workspace: &Path) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/core/telegram.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | Started(String), [INFO] [stdout] | ------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `BotEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 27 - Started(String), [INFO] [stdout] 27 + Started(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/core/telegram.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | ResponseSent(String), [INFO] [stdout] | ------------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `BotEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 33 - ResponseSent(String), [INFO] [stdout] 33 + ResponseSent(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/core/telegram.rs:35:19 [INFO] [stdout] | [INFO] [stdout] 35 | AgentSwitched(u8), [INFO] [stdout] | ------------- ^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `BotEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 35 - AgentSwitched(u8), [INFO] [stdout] 35 + AgentSwitched(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Shutdown` is never constructed [INFO] [stdout] --> src/core/telegram.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub enum BotCommand { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 48 | Shutdown, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BotCommand` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `set_agents` are never used [INFO] [stdout] --> src/core/telegram.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 66 | impl BotState { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 67 | pub fn new(pin: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn set_agents(&mut self, ids: Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_shutdown_flag` is never used [INFO] [stdout] --> src/core/telegram.rs:197:8 [INFO] [stdout] | [INFO] [stdout] 197 | pub fn create_shutdown_flag() -> Arc { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `restore_from_backup` is never used [INFO] [stdout] --> src/db/store.rs:289:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl FemtoDb { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 289 | pub fn restore_from_backup(&self) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `log_file` is never read [INFO] [stdout] --> src/sandbox.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct SandboxPaths { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 41 | pub log_file: PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SandboxPaths` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `release` is never used [INFO] [stdout] --> src/sandbox.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 89 | impl ProcessLock { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn release(&self) -> FemtoResult<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `workspace` is never read [INFO] [stdout] --> src/skills/rhai_engine.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct RhaiEngine { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | workspace: PathBuf, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `workspace` is never used [INFO] [stdout] --> src/skills/rhai_engine.rs:206:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl RhaiEngine { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn workspace(&self) -> &Path { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Timeout` and `CommandBlocked` are never constructed [INFO] [stdout] --> src/tools/executor.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub enum ToolError { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 31 | Timeout(String), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 32 | /// 블랙리스트 명령어 [INFO] [stdout] 33 | CommandBlocked(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ToolError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tool_id` is never read [INFO] [stdout] --> src/tools/executor.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct ToolResult { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 110 | /// 도구 ID [INFO] [stdout] 111 | pub tool_id: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ToolResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Restricted` is never constructed [INFO] [stdout] --> src/tools/registry.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum SecurityLevel { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | Restricted, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SecurityLevel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_first_run` is never read [INFO] [stdout] --> src/tui/app.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct App { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 135 | is_first_run: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SURFACE` is never used [INFO] [stdout] --> src/tui/theme.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const SURFACE: Color = Color::Rgb(0x14, 0x0E, 0x00); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 48s [INFO] running `Command { std: "docker" "inspect" "32b357d16860968b50444c30793d1a8a53103e610f7f16ca10b21b6284727aa5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "32b357d16860968b50444c30793d1a8a53103e610f7f16ca10b21b6284727aa5", kill_on_drop: false }` [INFO] [stdout] 32b357d16860968b50444c30793d1a8a53103e610f7f16ca10b21b6284727aa5