[INFO] cloning repository https://github.com/jowharshamshiri/refac
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jowharshamshiri/refac" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjowharshamshiri%2Frefac", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjowharshamshiri%2Frefac'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4249fb7c051f059663a32852f34f7f5b9150a572
[INFO] checking jowharshamshiri/refac against master#568b11762723b001bfa693d0f21c5dad01d4e813 for pr-149058
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjowharshamshiri%2Frefac" "/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/jowharshamshiri/refac
[INFO] finished tweaking git repo https://github.com/jowharshamshiri/refac
[INFO] tweaked toml for git repo https://github.com/jowharshamshiri/refac written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jowharshamshiri/refac on toolchain 568b11762723b001bfa693d0f21c5dad01d4e813
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+568b11762723b001bfa693d0f21c5dad01d4e813" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jowharshamshiri/refac 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" "+568b11762723b001bfa693d0f21c5dad01d4e813" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded xattr v1.5.1
[INFO] [stderr]   Downloaded libredox v0.1.6
[INFO] [stderr]   Downloaded clap_complete v4.5.55
[INFO] [stderr]   Downloaded chardet v0.2.4
[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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+568b11762723b001bfa693d0f21c5dad01d4e813" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 34157aaf78415b4cb5b519d715d83253bdbef989d308aaf272c431f9093ca2e9
[INFO] running `Command { std: "docker" "start" "-a" "34157aaf78415b4cb5b519d715d83253bdbef989d308aaf272c431f9093ca2e9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "34157aaf78415b4cb5b519d715d83253bdbef989d308aaf272c431f9093ca2e9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "34157aaf78415b4cb5b519d715d83253bdbef989d308aaf272c431f9093ca2e9", kill_on_drop: false }`
[INFO] [stdout] 34157aaf78415b4cb5b519d715d83253bdbef989d308aaf272c431f9093ca2e9
[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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+568b11762723b001bfa693d0f21c5dad01d4e813" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c1a5d7c85894df3e4c5e0e4cf03da6f33845835a53290b68f5e649283ce47932
[INFO] running `Command { std: "docker" "start" "-a" "c1a5d7c85894df3e4c5e0e4cf03da6f33845835a53290b68f5e649283ce47932", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling cc v1.2.30
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling rustls v0.20.9
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling litemap v0.8.0
[INFO] [stderr]    Compiling writeable v0.6.1
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]    Compiling socket2 v0.6.0
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling spin v0.5.2
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling rustix v1.0.8
[INFO] [stderr]    Compiling tinyvec v1.9.0
[INFO] [stderr]    Compiling slab v0.4.10
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]    Compiling iana-time-zone v0.1.63
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]    Compiling serde_json v1.0.141
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]     Checking anstyle-query v1.1.3
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]     Checking anstream v0.6.19
[INFO] [stderr]    Compiling rustls-pemfile v1.0.4
[INFO] [stderr]    Compiling crc v3.3.0
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling futures-intrusive v0.4.2
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling atoi v1.0.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling uuid v1.17.0
[INFO] [stderr]     Checking unicode-width v0.2.1
[INFO] [stderr]    Compiling portable-atomic v1.11.1
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]     Checking destructure_traitobject v0.2.0
[INFO] [stderr]     Checking clap_builder v4.5.41
[INFO] [stderr]     Checking unsafe-any-ors v1.0.0
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking sqlformat v0.2.6
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling libsqlite3-sys v0.24.2
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking bstr v1.12.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]    Compiling axum v0.6.20
[INFO] [stderr]    Compiling hashlink v0.8.4
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]     Checking tempfile v3.20.0
[INFO] [stderr]     Checking crc32fast v1.5.0
[INFO] [stderr]     Checking xattr v1.5.1
[INFO] [stderr]     Checking typemap-ors v1.0.0
[INFO] [stderr]     Checking thread-id v4.2.2
[INFO] [stderr]     Checking predicates-core v1.0.9
[INFO] [stderr]     Checking http-range-header v0.3.1
[INFO] [stderr]    Compiling workspace v0.62.182680 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking arc-swap v1.7.1
[INFO] [stderr]     Checking log-mdc v0.1.0
[INFO] [stderr]     Checking tar v0.4.44
[INFO] [stderr]     Checking flate2 v1.1.2
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]     Checking float-cmp v0.10.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking indicatif v0.17.11
[INFO] [stderr]     Checking content_inspector v0.2.4
[INFO] [stderr]     Checking termtree v0.5.1
[INFO] [stderr]     Checking difflib v0.4.0
[INFO] [stderr]     Checking normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling assert_cmd v2.0.17
[INFO] [stderr]     Checking chardet v0.2.4
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking predicates-tree v1.0.12
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]     Checking yansi v1.0.1
[INFO] [stderr]     Checking predicates v3.1.3
[INFO] [stderr]     Checking pretty_assertions v1.4.1
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]     Checking webpki v0.22.4
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]     Checking webpki-roots v0.22.6
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling clap_derive v4.5.41
[INFO] [stderr]     Checking axum-core v0.3.4
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking dialoguer v0.11.0
[INFO] [stderr]    Compiling flume v0.10.14
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling tokio-rustls v0.23.4
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]     Checking simple_asn1 v0.6.3
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling pest v2.8.1
[INFO] [stderr]    Compiling sqlx-rt v0.6.3
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking clap v4.5.41
[INFO] [stderr]     Checking clap_complete v4.5.55
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]    Compiling pest_meta v2.8.1
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]    Compiling pest_generator v2.8.1
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]    Compiling pest_derive v2.8.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking serde-value v0.7.0
[INFO] [stderr]     Checking serde_path_to_error v0.1.17
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking globset v0.4.16
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]     Checking ignore v0.4.23
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking tower-http v0.4.4
[INFO] [stderr]     Checking tungstenite v0.20.1
[INFO] [stderr]     Checking jsonwebtoken v8.3.0
[INFO] [stderr]     Checking chrono-tz v0.9.0
[INFO] [stderr]     Checking globwalk v0.9.1
[INFO] [stderr]     Checking log4rs v1.3.0
[INFO] [stderr]     Checking tokio-tungstenite v0.20.1
[INFO] [stderr]    Compiling sqlx-core v0.6.3
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking tera v1.20.0
[INFO] [stderr]    Compiling sqlx-macros v0.6.3
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking sqlx v0.6.3
[INFO] [stdout] warning: methods `generate_features_md`, `generate_template_features`, `generate_directives_md`, and `generate_progress_md` are never used
[INFO] [stdout]     --> src/mcp_protocol.rs:1547:8
[INFO] [stdout]      |
[INFO] [stdout]  103 | impl McpProtocolHandler {
[INFO] [stdout]      | ----------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1547 |     fn generate_features_md(&self, name: &str, template_type: &str, initialize_features: bool) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1583 |     fn generate_template_features(&self, template_type: &str) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1617 |     fn generate_directives_md(&self) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1659 |     fn generate_progress_md(&self, name: &str) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `disabled_for_schema_migration`
[INFO] [stdout]  --> tests/dashboard_tests.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![cfg(disabled_for_schema_migration)]
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(disabled_for_schema_migration)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(disabled_for_schema_migration)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `disabled_for_schema_migration`
[INFO] [stdout]  --> tests/end_to_end_insite_tests.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![cfg(disabled_for_schema_migration)]
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(disabled_for_schema_migration)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(disabled_for_schema_migration)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]   --> tests/refac_diff_preview_tests.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let engine = RenameEngine::new(args)?;
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> tests/refac_diff_preview_tests.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let engine = RenameEngine::new(args)?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> tests/refac_diff_preview_tests.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let engine = RenameEngine::new(args)?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> tests/refac_diff_preview_tests.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let engine = RenameEngine::new(args)?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> tests/refac_diff_preview_tests.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 269 |     let engine = RenameEngine::new(args)?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> tests/refac_diff_preview_tests.rs:322:9
[INFO] [stdout]     |
[INFO] [stdout] 322 |     let engine = RenameEngine::new(args)?;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `generate_features_md`, `generate_template_features`, `generate_directives_md`, and `generate_progress_md` are never used
[INFO] [stdout]     --> src/mcp_protocol.rs:1547:8
[INFO] [stdout]      |
[INFO] [stdout]  103 | impl McpProtocolHandler {
[INFO] [stdout]      | ----------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1547 |     fn generate_features_md(&self, name: &str, template_type: &str, initialize_features: bool) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1583 |     fn generate_template_features(&self, template_type: &str) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1617 |     fn generate_directives_md(&self) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1659 |     fn generate_progress_md(&self, name: &str) -> Result<String> {
[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 import: `std::fs`
[INFO] [stdout]     --> src/bin/ws.rs:8864:9
[INFO] [stdout]      |
[INFO] [stdout] 8864 |     use std::fs;
[INFO] [stdout]      |         ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]     --> src/bin/ws.rs:8864:9
[INFO] [stdout]      |
[INFO] [stdout] 8864 |     use std::fs;
[INFO] [stdout]      |         ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `feature_id`
[INFO] [stdout]     --> src/bin/ws.rs:6442:25
[INFO] [stdout]      |
[INFO] [stdout] 6442 |                     let feature_id = format!("F{:05}", i + 1);
[INFO] [stdout]      |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_feature_id`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `task_id`
[INFO] [stdout]     --> src/bin/ws.rs:6460:21
[INFO] [stdout]      |
[INFO] [stdout] 6460 |                 let task_id = format!("T{:06}", 1);
[INFO] [stdout]      |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `directive_id`
[INFO] [stdout]     --> src/bin/ws.rs:6471:21
[INFO] [stdout]      |
[INFO] [stdout] 6471 |                 let directive_id = format!("D{:03}", 1);
[INFO] [stdout]      |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_directive_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:7691:13
[INFO] [stdout]      |
[INFO] [stdout] 7691 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_entity_type`
[INFO] [stdout]     --> src/bin/ws.rs:7694:13
[INFO] [stdout]      |
[INFO] [stdout] 7694 |         let from_entity_type = parse_entity_type(&from_type)?;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_entity_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_entity_type`
[INFO] [stdout]     --> src/bin/ws.rs:7695:13
[INFO] [stdout]      |
[INFO] [stdout] 7695 |         let to_entity_type = parse_entity_type(&to_type)?;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_entity_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_entity`
[INFO] [stdout]     --> src/bin/ws.rs:7683:18
[INFO] [stdout]      |
[INFO] [stdout] 7683 | fn link_entities(from_entity: String, from_type: String, to_entity: String, to_type: String, relationship_type: String, descriptio...
[INFO] [stdout]      |                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_entity`
[INFO] [stdout]     --> src/bin/ws.rs:7683:58
[INFO] [stdout]      |
[INFO] [stdout] 7683 | ...g, from_type: String, to_entity: String, to_type: String, relationship_type: String, description: Option<String>) -> Result<()> {
[INFO] [stdout]      |                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `relationship_type`
[INFO] [stdout]     --> src/bin/ws.rs:7683:94
[INFO] [stdout]      |
[INFO] [stdout] 7683 | ...type: String, relationship_type: String, description: Option<String>) -> Result<()> {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relationship_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `description`
[INFO] [stdout]     --> src/bin/ws.rs:7683:121
[INFO] [stdout]      |
[INFO] [stdout] 7683 | ...nship_type: String, description: Option<String>) -> Result<()> {
[INFO] [stdout]      |                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_description`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7708:13
[INFO] [stdout]      |
[INFO] [stdout] 7708 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7755:13
[INFO] [stdout]      |
[INFO] [stdout] 7755 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_type_enum`
[INFO] [stdout]     --> src/bin/ws.rs:7859:13
[INFO] [stdout]      |
[INFO] [stdout] 7859 |         let entity_type_enum = parse_entity_type(&entity_type)?;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_type_enum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type_enum`
[INFO] [stdout]     --> src/bin/ws.rs:7860:13
[INFO] [stdout]      |
[INFO] [stdout] 7860 |         let note_type_enum = parse_note_type(&note_type)?;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type_enum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_id`
[INFO] [stdout]     --> src/bin/ws.rs:7852:41
[INFO] [stdout]      |
[INFO] [stdout] 7852 | fn add_entity_note(entity_type: String, entity_id: String, title: String, content: String, note_type: String, _tags: Option<String...
[INFO] [stdout]      |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `title`
[INFO] [stdout]     --> src/bin/ws.rs:7852:60
[INFO] [stdout]      |
[INFO] [stdout] 7852 | ...tring, entity_id: String, title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_title`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]     --> src/bin/ws.rs:7852:75
[INFO] [stdout]      |
[INFO] [stdout] 7852 | ... String, title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:7875:13
[INFO] [stdout]      |
[INFO] [stdout] 7875 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `title`
[INFO] [stdout]     --> src/bin/ws.rs:7868:21
[INFO] [stdout]      |
[INFO] [stdout] 7868 | fn add_project_note(title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_title`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]     --> src/bin/ws.rs:7868:36
[INFO] [stdout]      |
[INFO] [stdout] 7868 | fn add_project_note(title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type`
[INFO] [stdout]     --> src/bin/ws.rs:7868:53
[INFO] [stdout]      |
[INFO] [stdout] 7868 | fn add_project_note(title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:7890:13
[INFO] [stdout]      |
[INFO] [stdout] 7890 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_id`
[INFO] [stdout]     --> src/bin/ws.rs:7883:45
[INFO] [stdout]      |
[INFO] [stdout] 7883 | fn list_notes(_entity_type: Option<String>, entity_id: Option<String>, _note_type: Option<String>, project_wide: bool, _pinned: bo...
[INFO] [stdout]      |                                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project_wide`
[INFO] [stdout]     --> src/bin/ws.rs:7883:100
[INFO] [stdout]      |
[INFO] [stdout] 7883 | ...e: Option<String>, project_wide: bool, _pinned: bool) -> Result<()> {
[INFO] [stdout]      |                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_wide`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:7917:13
[INFO] [stdout]      |
[INFO] [stdout] 7917 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type`
[INFO] [stdout]     --> src/bin/ws.rs:7910:32
[INFO] [stdout]      |
[INFO] [stdout] 7910 | fn search_notes(query: String, note_type: Option<String>, format: String) -> Result<()> {
[INFO] [stdout]      |                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7947:13
[INFO] [stdout]      |
[INFO] [stdout] 7947 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tags_vec`
[INFO] [stdout]     --> src/bin/ws.rs:7949:13
[INFO] [stdout]      |
[INFO] [stdout] 7949 |         let tags_vec: Option<Vec<String>> = tags.map(|t| t.split(',').map(|s| s.trim().to_string()).collect());
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tags_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `title`
[INFO] [stdout]     --> src/bin/ws.rs:7943:33
[INFO] [stdout]      |
[INFO] [stdout] 7943 | fn update_note(note_id: String, title: Option<String>, content: Option<String>, tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_title`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]     --> src/bin/ws.rs:7943:56
[INFO] [stdout]      |
[INFO] [stdout] 7943 | fn update_note(note_id: String, title: Option<String>, content: Option<String>, tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7963:13
[INFO] [stdout]      |
[INFO] [stdout] 7963 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7988:13
[INFO] [stdout]      |
[INFO] [stdout] 7988 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:8007:13
[INFO] [stdout]      |
[INFO] [stdout] 8007 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_type`
[INFO] [stdout]     --> src/bin/ws.rs:8000:88
[INFO] [stdout]      |
[INFO] [stdout] 8000 | ...arget_type: String, entity_type: Option<String>, link_type: String) -> Result<()> {
[INFO] [stdout]      |                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]     --> src/bin/ws.rs:8891:9
[INFO] [stdout]      |
[INFO] [stdout] 8891 |     for result in results {
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modified`
[INFO] [stdout]     --> src/bin/ws.rs:8909:13
[INFO] [stdout]      |
[INFO] [stdout] 8909 |         let modified: DateTime<Utc> = meta.modified()?.into();
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extension`
[INFO] [stdout]     --> src/bin/ws.rs:8913:25
[INFO] [stdout]      |
[INFO] [stdout] 8913 |             if let Some(extension) = path.extension() {
[INFO] [stdout]      |                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extension`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sessions`
[INFO] [stdout]     --> src/bin/ws.rs:8946:34
[INFO] [stdout]      |
[INFO] [stdout] 8946 | async fn handle_export_artifacts(sessions: &[String], format: &str, output: Option<String>, include_content: bool) -> anyhow::Resu...
[INFO] [stdout]      |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sessions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]     --> src/bin/ws.rs:8946:55
[INFO] [stdout]      |
[INFO] [stdout] 8946 | ...cts(sessions: &[String], format: &str, output: Option<String>, include_content: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]     --> src/bin/ws.rs:8946:69
[INFO] [stdout]      |
[INFO] [stdout] 8946 | ...&[String], format: &str, output: Option<String>, include_content: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `include_content`
[INFO] [stdout]     --> src/bin/ws.rs:8946:93
[INFO] [stdout]      |
[INFO] [stdout] 8946 | ...Option<String>, include_content: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_include_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session_id`
[INFO] [stdout]     --> src/bin/ws.rs:8950:35
[INFO] [stdout]      |
[INFO] [stdout] 8950 | async fn handle_archive_artifacts(session_id: &str, format: &str, output: Option<String>, remove_originals: bool) -> anyhow::Resul...
[INFO] [stdout]      |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]     --> src/bin/ws.rs:8950:53
[INFO] [stdout]      |
[INFO] [stdout] 8950 | ...ifacts(session_id: &str, format: &str, output: Option<String>, remove_originals: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]     --> src/bin/ws.rs:8950:67
[INFO] [stdout]      |
[INFO] [stdout] 8950 | ..._id: &str, format: &str, output: Option<String>, remove_originals: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remove_originals`
[INFO] [stdout]     --> src/bin/ws.rs:8950:91
[INFO] [stdout]      |
[INFO] [stdout] 8950 | ...ption<String>, remove_originals: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remove_originals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_sample_project` is never used
[INFO] [stdout]     --> src/bin/ws.rs:2231:4
[INFO] [stdout]      |
[INFO] [stdout] 2231 | fn create_sample_project(force: bool) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `populate_sample_data` is never used
[INFO] [stdout]     --> src/bin/ws.rs:2358:4
[INFO] [stdout]      |
[INFO] [stdout] 2358 | fn populate_sample_data(force: bool) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `populate_sample_data_async` is never used
[INFO] [stdout]     --> src/bin/ws.rs:2387:10
[INFO] [stdout]      |
[INFO] [stdout] 2387 | async fn populate_sample_data_async(force: bool) -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_task` is never used
[INFO] [stdout]     --> src/bin/ws.rs:4350:4
[INFO] [stdout]      |
[INFO] [stdout] 4350 | fn add_task(title: String, description: String, feature: Option<String>, priority: String, auto_feature: bool) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_feature_from_description` is never used
[INFO] [stdout]     --> src/bin/ws.rs:4393:4
[INFO] [stdout]      |
[INFO] [stdout] 4393 | fn detect_feature_from_description(description: &str) -> Option<String> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_task_to_backlog` is never used
[INFO] [stdout]     --> src/bin/ws.rs:4418:4
[INFO] [stdout]      |
[INFO] [stdout] 4418 | fn save_task_to_backlog(task: &Task) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_initial_task_backlog` is never used
[INFO] [stdout]     --> src/bin/ws.rs:4454:4
[INFO] [stdout]      |
[INFO] [stdout] 4454 | fn create_initial_task_backlog() -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_feature_to_file` is never used
[INFO] [stdout]     --> src/bin/ws.rs:5563:4
[INFO] [stdout]      |
[INFO] [stdout] 5563 | fn add_feature_to_file(title: String, description: String, category: String, state: String) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_next_feature_id` is never used
[INFO] [stdout]     --> src/bin/ws.rs:5737:4
[INFO] [stdout]      |
[INFO] [stdout] 5737 | fn get_next_feature_id(features_content: &str) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_feature_to_features_file` is never used
[INFO] [stdout]     --> src/bin/ws.rs:5754:4
[INFO] [stdout]      |
[INFO] [stdout] 5754 | fn add_feature_to_features_file(id: &str, title: &str, description: &str, state: &str, category: &str) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_context_threshold_startup` is never used
[INFO] [stdout]     --> src/bin/ws.rs:5973:4
[INFO] [stdout]      |
[INFO] [stdout] 5973 | fn check_context_threshold_startup() -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_list_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8731:10
[INFO] [stdout]      |
[INFO] [stdout] 8731 | async fn handle_list_artifacts(
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_organize_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8815:10
[INFO] [stdout]      |
[INFO] [stdout] 8815 | async fn handle_organize_artifacts(categorize: bool, manifest: bool, tag: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_search_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8863:10
[INFO] [stdout]      |
[INFO] [stdout] 8863 | async fn handle_search_artifacts(query: &str, content: bool, names: bool, limit: u32) -> anyhow::Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_show_artifact` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8897:10
[INFO] [stdout]      |
[INFO] [stdout] 8897 | async fn handle_show_artifact(artifact_path: &str, content: bool, metadata: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_export_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8946:10
[INFO] [stdout]      |
[INFO] [stdout] 8946 | async fn handle_export_artifacts(sessions: &[String], format: &str, output: Option<String>, include_content: bool) -> anyhow::Resu...
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_archive_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8950:10
[INFO] [stdout]      |
[INFO] [stdout] 8950 | async fn handle_archive_artifacts(session_id: &str, format: &str, output: Option<String>, remove_originals: bool) -> anyhow::Resul...
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArtifactInfo` is never constructed
[INFO] [stdout]     --> src/bin/ws.rs:8957:8
[INFO] [stdout]      |
[INFO] [stdout] 8957 | struct ArtifactInfo {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchResult` is never constructed
[INFO] [stdout]     --> src/bin/ws.rs:8967:8
[INFO] [stdout]      |
[INFO] [stdout] 8967 | struct SearchResult {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_artifacts_recursive` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8972:4
[INFO] [stdout]      |
[INFO] [stdout] 8972 | fn collect_artifacts_recursive(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_file_size` is never used
[INFO] [stdout]     --> src/bin/ws.rs:9007:4
[INFO] [stdout]      |
[INFO] [stdout] 9007 | fn format_file_size(bytes: u64) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_session_id_from_path` is never used
[INFO] [stdout]     --> src/bin/ws.rs:9025:4
[INFO] [stdout]      |
[INFO] [stdout] 9025 | fn extract_session_id_from_path(_path: &Path) -> Option<String> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_old_files` is never used
[INFO] [stdout]     --> src/bin/ws.rs:9029:4
[INFO] [stdout]      |
[INFO] [stdout] 9029 | fn find_old_files(dir: &Path, cutoff: std::time::SystemTime, files: &mut Vec<PathBuf>) -> anyhow::Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_artifacts_recursive` is never used
[INFO] [stdout]     --> src/bin/ws.rs:9053:4
[INFO] [stdout]      |
[INFO] [stdout] 9053 | fn search_artifacts_recursive(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `feature_id`
[INFO] [stdout]     --> src/bin/ws.rs:6442:25
[INFO] [stdout]      |
[INFO] [stdout] 6442 |                     let feature_id = format!("F{:05}", i + 1);
[INFO] [stdout]      |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_feature_id`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `task_id`
[INFO] [stdout]     --> src/bin/ws.rs:6460:21
[INFO] [stdout]      |
[INFO] [stdout] 6460 |                 let task_id = format!("T{:06}", 1);
[INFO] [stdout]      |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `directive_id`
[INFO] [stdout]     --> src/bin/ws.rs:6471:21
[INFO] [stdout]      |
[INFO] [stdout] 6471 |                 let directive_id = format!("D{:03}", 1);
[INFO] [stdout]      |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_directive_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:7691:13
[INFO] [stdout]      |
[INFO] [stdout] 7691 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_entity_type`
[INFO] [stdout]     --> src/bin/ws.rs:7694:13
[INFO] [stdout]      |
[INFO] [stdout] 7694 |         let from_entity_type = parse_entity_type(&from_type)?;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_entity_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_entity_type`
[INFO] [stdout]     --> src/bin/ws.rs:7695:13
[INFO] [stdout]      |
[INFO] [stdout] 7695 |         let to_entity_type = parse_entity_type(&to_type)?;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_entity_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_entity`
[INFO] [stdout]     --> src/bin/ws.rs:7683:18
[INFO] [stdout]      |
[INFO] [stdout] 7683 | fn link_entities(from_entity: String, from_type: String, to_entity: String, to_type: String, relationship_type: String, descriptio...
[INFO] [stdout]      |                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_entity`
[INFO] [stdout]     --> src/bin/ws.rs:7683:58
[INFO] [stdout]      |
[INFO] [stdout] 7683 | ...g, from_type: String, to_entity: String, to_type: String, relationship_type: String, description: Option<String>) -> Result<()> {
[INFO] [stdout]      |                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `relationship_type`
[INFO] [stdout]     --> src/bin/ws.rs:7683:94
[INFO] [stdout]      |
[INFO] [stdout] 7683 | ...type: String, relationship_type: String, description: Option<String>) -> Result<()> {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relationship_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `description`
[INFO] [stdout]     --> src/bin/ws.rs:7683:121
[INFO] [stdout]      |
[INFO] [stdout] 7683 | ...nship_type: String, description: Option<String>) -> Result<()> {
[INFO] [stdout]      |                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_description`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7708:13
[INFO] [stdout]      |
[INFO] [stdout] 7708 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7755:13
[INFO] [stdout]      |
[INFO] [stdout] 7755 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_type_enum`
[INFO] [stdout]     --> src/bin/ws.rs:7859:13
[INFO] [stdout]      |
[INFO] [stdout] 7859 |         let entity_type_enum = parse_entity_type(&entity_type)?;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_type_enum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type_enum`
[INFO] [stdout]     --> src/bin/ws.rs:7860:13
[INFO] [stdout]      |
[INFO] [stdout] 7860 |         let note_type_enum = parse_note_type(&note_type)?;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type_enum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_id`
[INFO] [stdout]     --> src/bin/ws.rs:7852:41
[INFO] [stdout]      |
[INFO] [stdout] 7852 | fn add_entity_note(entity_type: String, entity_id: String, title: String, content: String, note_type: String, _tags: Option<String...
[INFO] [stdout]      |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `title`
[INFO] [stdout]     --> src/bin/ws.rs:7852:60
[INFO] [stdout]      |
[INFO] [stdout] 7852 | ...tring, entity_id: String, title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_title`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]     --> src/bin/ws.rs:7852:75
[INFO] [stdout]      |
[INFO] [stdout] 7852 | ... String, title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:7875:13
[INFO] [stdout]      |
[INFO] [stdout] 7875 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `title`
[INFO] [stdout]     --> src/bin/ws.rs:7868:21
[INFO] [stdout]      |
[INFO] [stdout] 7868 | fn add_project_note(title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_title`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]     --> src/bin/ws.rs:7868:36
[INFO] [stdout]      |
[INFO] [stdout] 7868 | fn add_project_note(title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type`
[INFO] [stdout]     --> src/bin/ws.rs:7868:53
[INFO] [stdout]      |
[INFO] [stdout] 7868 | fn add_project_note(title: String, content: String, note_type: String, _tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:7890:13
[INFO] [stdout]      |
[INFO] [stdout] 7890 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_id`
[INFO] [stdout]     --> src/bin/ws.rs:7883:45
[INFO] [stdout]      |
[INFO] [stdout] 7883 | fn list_notes(_entity_type: Option<String>, entity_id: Option<String>, _note_type: Option<String>, project_wide: bool, _pinned: bo...
[INFO] [stdout]      |                                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project_wide`
[INFO] [stdout]     --> src/bin/ws.rs:7883:100
[INFO] [stdout]      |
[INFO] [stdout] 7883 | ...e: Option<String>, project_wide: bool, _pinned: bool) -> Result<()> {
[INFO] [stdout]      |                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_wide`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:7917:13
[INFO] [stdout]      |
[INFO] [stdout] 7917 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note_type`
[INFO] [stdout]     --> src/bin/ws.rs:7910:32
[INFO] [stdout]      |
[INFO] [stdout] 7910 | fn search_notes(query: String, note_type: Option<String>, format: String) -> Result<()> {
[INFO] [stdout]      |                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7947:13
[INFO] [stdout]      |
[INFO] [stdout] 7947 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tags_vec`
[INFO] [stdout]     --> src/bin/ws.rs:7949:13
[INFO] [stdout]      |
[INFO] [stdout] 7949 |         let tags_vec: Option<Vec<String>> = tags.map(|t| t.split(',').map(|s| s.trim().to_string()).collect());
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tags_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `title`
[INFO] [stdout]     --> src/bin/ws.rs:7943:33
[INFO] [stdout]      |
[INFO] [stdout] 7943 | fn update_note(note_id: String, title: Option<String>, content: Option<String>, tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_title`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `content`
[INFO] [stdout]     --> src/bin/ws.rs:7943:56
[INFO] [stdout]      |
[INFO] [stdout] 7943 | fn update_note(note_id: String, title: Option<String>, content: Option<String>, tags: Option<String>) -> Result<()> {
[INFO] [stdout]      |                                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7963:13
[INFO] [stdout]      |
[INFO] [stdout] 7963 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]     --> src/bin/ws.rs:7988:13
[INFO] [stdout]      |
[INFO] [stdout] 7988 |         let pool = workspace::entities::database::initialize_database(&db_path).await?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]     --> src/bin/ws.rs:8007:13
[INFO] [stdout]      |
[INFO] [stdout] 8007 |         let project = entity_manager.get_current_project().await?;
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_type`
[INFO] [stdout]     --> src/bin/ws.rs:8000:88
[INFO] [stdout]      |
[INFO] [stdout] 8000 | ...arget_type: String, entity_type: Option<String>, link_type: String) -> Result<()> {
[INFO] [stdout]      |                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]     --> src/bin/ws.rs:8891:9
[INFO] [stdout]      |
[INFO] [stdout] 8891 |     for result in results {
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modified`
[INFO] [stdout]     --> src/bin/ws.rs:8909:13
[INFO] [stdout]      |
[INFO] [stdout] 8909 |         let modified: DateTime<Utc> = meta.modified()?.into();
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modified`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extension`
[INFO] [stdout]     --> src/bin/ws.rs:8913:25
[INFO] [stdout]      |
[INFO] [stdout] 8913 |             if let Some(extension) = path.extension() {
[INFO] [stdout]      |                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extension`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sessions`
[INFO] [stdout]     --> src/bin/ws.rs:8946:34
[INFO] [stdout]      |
[INFO] [stdout] 8946 | async fn handle_export_artifacts(sessions: &[String], format: &str, output: Option<String>, include_content: bool) -> anyhow::Resu...
[INFO] [stdout]      |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sessions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]     --> src/bin/ws.rs:8946:55
[INFO] [stdout]      |
[INFO] [stdout] 8946 | ...cts(sessions: &[String], format: &str, output: Option<String>, include_content: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]     --> src/bin/ws.rs:8946:69
[INFO] [stdout]      |
[INFO] [stdout] 8946 | ...&[String], format: &str, output: Option<String>, include_content: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `include_content`
[INFO] [stdout]     --> src/bin/ws.rs:8946:93
[INFO] [stdout]      |
[INFO] [stdout] 8946 | ...Option<String>, include_content: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_include_content`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session_id`
[INFO] [stdout]     --> src/bin/ws.rs:8950:35
[INFO] [stdout]      |
[INFO] [stdout] 8950 | async fn handle_archive_artifacts(session_id: &str, format: &str, output: Option<String>, remove_originals: bool) -> anyhow::Resul...
[INFO] [stdout]      |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `format`
[INFO] [stdout]     --> src/bin/ws.rs:8950:53
[INFO] [stdout]      |
[INFO] [stdout] 8950 | ...ifacts(session_id: &str, format: &str, output: Option<String>, remove_originals: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]     --> src/bin/ws.rs:8950:67
[INFO] [stdout]      |
[INFO] [stdout] 8950 | ..._id: &str, format: &str, output: Option<String>, remove_originals: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remove_originals`
[INFO] [stdout]     --> src/bin/ws.rs:8950:91
[INFO] [stdout]      |
[INFO] [stdout] 8950 | ...ption<String>, remove_originals: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remove_originals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_sample_project` is never used
[INFO] [stdout]     --> src/bin/ws.rs:2231:4
[INFO] [stdout]      |
[INFO] [stdout] 2231 | fn create_sample_project(force: bool) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `populate_sample_data` is never used
[INFO] [stdout]     --> src/bin/ws.rs:2358:4
[INFO] [stdout]      |
[INFO] [stdout] 2358 | fn populate_sample_data(force: bool) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `populate_sample_data_async` is never used
[INFO] [stdout]     --> src/bin/ws.rs:2387:10
[INFO] [stdout]      |
[INFO] [stdout] 2387 | async fn populate_sample_data_async(force: bool) -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_task` is never used
[INFO] [stdout]     --> src/bin/ws.rs:4350:4
[INFO] [stdout]      |
[INFO] [stdout] 4350 | fn add_task(title: String, description: String, feature: Option<String>, priority: String, auto_feature: bool) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_feature_from_description` is never used
[INFO] [stdout]     --> src/bin/ws.rs:4393:4
[INFO] [stdout]      |
[INFO] [stdout] 4393 | fn detect_feature_from_description(description: &str) -> Option<String> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_task_to_backlog` is never used
[INFO] [stdout]     --> src/bin/ws.rs:4418:4
[INFO] [stdout]      |
[INFO] [stdout] 4418 | fn save_task_to_backlog(task: &Task) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_initial_task_backlog` is never used
[INFO] [stdout]     --> src/bin/ws.rs:4454:4
[INFO] [stdout]      |
[INFO] [stdout] 4454 | fn create_initial_task_backlog() -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_feature_to_file` is never used
[INFO] [stdout]     --> src/bin/ws.rs:5563:4
[INFO] [stdout]      |
[INFO] [stdout] 5563 | fn add_feature_to_file(title: String, description: String, category: String, state: String) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_next_feature_id` is never used
[INFO] [stdout]     --> src/bin/ws.rs:5737:4
[INFO] [stdout]      |
[INFO] [stdout] 5737 | fn get_next_feature_id(features_content: &str) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_feature_to_features_file` is never used
[INFO] [stdout]     --> src/bin/ws.rs:5754:4
[INFO] [stdout]      |
[INFO] [stdout] 5754 | fn add_feature_to_features_file(id: &str, title: &str, description: &str, state: &str, category: &str) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_context_threshold_startup` is never used
[INFO] [stdout]     --> src/bin/ws.rs:5973:4
[INFO] [stdout]      |
[INFO] [stdout] 5973 | fn check_context_threshold_startup() -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_list_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8731:10
[INFO] [stdout]      |
[INFO] [stdout] 8731 | async fn handle_list_artifacts(
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_organize_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8815:10
[INFO] [stdout]      |
[INFO] [stdout] 8815 | async fn handle_organize_artifacts(categorize: bool, manifest: bool, tag: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_search_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8863:10
[INFO] [stdout]      |
[INFO] [stdout] 8863 | async fn handle_search_artifacts(query: &str, content: bool, names: bool, limit: u32) -> anyhow::Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_show_artifact` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8897:10
[INFO] [stdout]      |
[INFO] [stdout] 8897 | async fn handle_show_artifact(artifact_path: &str, content: bool, metadata: bool) -> anyhow::Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_export_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8946:10
[INFO] [stdout]      |
[INFO] [stdout] 8946 | async fn handle_export_artifacts(sessions: &[String], format: &str, output: Option<String>, include_content: bool) -> anyhow::Resu...
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_archive_artifacts` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8950:10
[INFO] [stdout]      |
[INFO] [stdout] 8950 | async fn handle_archive_artifacts(session_id: &str, format: &str, output: Option<String>, remove_originals: bool) -> anyhow::Resul...
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArtifactInfo` is never constructed
[INFO] [stdout]     --> src/bin/ws.rs:8957:8
[INFO] [stdout]      |
[INFO] [stdout] 8957 | struct ArtifactInfo {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchResult` is never constructed
[INFO] [stdout]     --> src/bin/ws.rs:8967:8
[INFO] [stdout]      |
[INFO] [stdout] 8967 | struct SearchResult {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_artifacts_recursive` is never used
[INFO] [stdout]     --> src/bin/ws.rs:8972:4
[INFO] [stdout]      |
[INFO] [stdout] 8972 | fn collect_artifacts_recursive(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_file_size` is never used
[INFO] [stdout]     --> src/bin/ws.rs:9007:4
[INFO] [stdout]      |
[INFO] [stdout] 9007 | fn format_file_size(bytes: u64) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_session_id_from_path` is never used
[INFO] [stdout]     --> src/bin/ws.rs:9025:4
[INFO] [stdout]      |
[INFO] [stdout] 9025 | fn extract_session_id_from_path(_path: &Path) -> Option<String> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_old_files` is never used
[INFO] [stdout]     --> src/bin/ws.rs:9029:4
[INFO] [stdout]      |
[INFO] [stdout] 9029 | fn find_old_files(dir: &Path, cutoff: std::time::SystemTime, files: &mut Vec<PathBuf>) -> anyhow::Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_artifacts_recursive` is never used
[INFO] [stdout]     --> src/bin/ws.rs:9053:4
[INFO] [stdout]      |
[INFO] [stdout] 9053 | fn search_artifacts_recursive(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 46s
[INFO] running `Command { std: "docker" "inspect" "c1a5d7c85894df3e4c5e0e4cf03da6f33845835a53290b68f5e649283ce47932", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c1a5d7c85894df3e4c5e0e4cf03da6f33845835a53290b68f5e649283ce47932", kill_on_drop: false }`
[INFO] [stdout] c1a5d7c85894df3e4c5e0e4cf03da6f33845835a53290b68f5e649283ce47932
