[INFO] cloning repository https://github.com/masojie/SCIA-SUPREME
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/masojie/SCIA-SUPREME" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmasojie%2FSCIA-SUPREME", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmasojie%2FSCIA-SUPREME'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6a498b90a0d31e9e9994bf48a3e4195ba502e730
[INFO] checking masojie/SCIA-SUPREME against 3154cc1a3e6424e44f438a95007d043ed5ceaaf6+rustflags=-Znext-solver=coherence for pr-133502-30
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmasojie%2FSCIA-SUPREME" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/masojie/SCIA-SUPREME
[INFO] finished tweaking git repo https://github.com/masojie/SCIA-SUPREME
[INFO] tweaked toml for git repo https://github.com/masojie/SCIA-SUPREME written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/masojie/SCIA-SUPREME on toolchain 3154cc1a3e6424e44f438a95007d043ed5ceaaf6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/masojie/SCIA-SUPREME 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" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded chunked_transfer v1.5.0
[INFO] [stderr]   Downloaded tokio-test v0.4.5
[INFO] [stderr]   Downloaded tiny_http v0.12.0
[INFO] [stderr]   Downloaded wasip2 v1.0.3+wasi-0.2.9
[INFO] [stderr]   Downloaded ghash v0.5.1
[INFO] [stderr]   Downloaded polyval v0.6.2
[INFO] [stderr]   Downloaded ctr v0.9.2
[INFO] [stderr]   Downloaded ascii v1.1.0
[INFO] [stderr]   Downloaded colored v2.2.0
[INFO] [stderr]   Downloaded typenum v1.20.0
[INFO] [stderr]   Downloaded rusqlite v0.31.0
[INFO] [stderr]   Downloaded aes-gcm v0.10.3
[INFO] [stderr]   Downloaded tokio v1.52.1
[INFO] [stderr]   Downloaded libsqlite3-sys v0.28.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58
[INFO] running `Command { std: "docker" "start" "6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Znext-solver=coherence" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]     Checking typenum v1.20.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking futures-task v0.3.32
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]     Checking tokio v1.52.1
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]     Checking base64ct v1.8.3
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking rustls-pemfile v1.0.4
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking hashlink v0.9.1
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]     Checking ascii v1.1.0
[INFO] [stderr]     Checking chunked_transfer v1.5.0
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]     Checking fallible-iterator v0.3.0
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking webpki-roots v0.25.4
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking tiny_http v0.12.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking uuid v1.23.1
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking tokio-test v0.4.5
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking rusqlite v0.31.0
[INFO] [stderr]     Checking scia v3.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:688:34
[INFO] [stdout]     |
[INFO] [stdout] 688 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0);
[INFO] [stdout]     |                                  ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 688 -             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0);
[INFO] [stdout] 688 +             brain.learn(3, 80.0, Some(60.0), "BULLISH EMA", 2, 5.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:688:19
[INFO] [stdout]     |
[INFO] [stdout] 688 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0);
[INFO] [stdout]     |                   ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 688 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0, /* f32 */);
[INFO] [stdout]     |                                                                         +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:724:30
[INFO] [stdout]     |
[INFO] [stdout] 724 |         brain.learn(1, 60.0, Some(40.0, 75.0), "BEARISH EMA", 0, 0.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 724 -         brain.learn(1, 60.0, Some(40.0, 75.0), "BEARISH EMA", 0, 0.0);
[INFO] [stdout] 724 +         brain.learn(1, 60.0, Some(40.0), "BEARISH EMA", 0, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:724:15
[INFO] [stdout]     |
[INFO] [stdout] 724 |         brain.learn(1, 60.0, Some(40.0, 75.0), "BEARISH EMA", 0, 0.0);
[INFO] [stdout]     |               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 724 |         brain.learn(1, 60.0, Some(40.0, 75.0), "BEARISH EMA", 0, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:725:30
[INFO] [stdout]     |
[INFO] [stdout] 725 |         brain.learn(3, 85.0, Some(65.0, 75.0), "BULLISH EMA", 3, 10.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 725 -         brain.learn(3, 85.0, Some(65.0, 75.0), "BULLISH EMA", 3, 10.0);
[INFO] [stdout] 725 +         brain.learn(3, 85.0, Some(65.0), "BULLISH EMA", 3, 10.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:725:15
[INFO] [stdout]     |
[INFO] [stdout] 725 |         brain.learn(3, 85.0, Some(65.0, 75.0), "BULLISH EMA", 3, 10.0);
[INFO] [stdout]     |               ^^^^^--------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 725 |         brain.learn(3, 85.0, Some(65.0, 75.0), "BULLISH EMA", 3, 10.0, /* f32 */);
[INFO] [stdout]     |                                                                      +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:746:30
[INFO] [stdout]     |
[INFO] [stdout] 746 |         brain.learn(3, 75.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 746 -         brain.learn(3, 75.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout] 746 +         brain.learn(3, 75.0, Some(55.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:746:15
[INFO] [stdout]     |
[INFO] [stdout] 746 |         brain.learn(3, 75.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 746 |         brain.learn(3, 75.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:853:46
[INFO] [stdout]     |
[INFO] [stdout] 853 |         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 853 -         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout] 853 +         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:853:31
[INFO] [stdout]     |
[INFO] [stdout] 853 |         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 853 |         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */); }
[INFO] [stdout]     |                                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:871:46
[INFO] [stdout]     |
[INFO] [stdout] 871 |         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0); }
[INFO] [stdout]     |                                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 871 -         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0); }
[INFO] [stdout] 871 +         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0), "BULLISH EMA", 2, 5.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:871:31
[INFO] [stdout]     |
[INFO] [stdout] 871 |         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0); }
[INFO] [stdout]     |                               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 871 |         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0, /* f32 */); }
[INFO] [stdout]     |                                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:882:30
[INFO] [stdout]     |
[INFO] [stdout] 882 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 882 -         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout] 882 +         brain.learn(1, 80.0, Some(60.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:882:15
[INFO] [stdout]     |
[INFO] [stdout] 882 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 882 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:883:30
[INFO] [stdout]     |
[INFO] [stdout] 883 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 883 -         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout] 883 +         brain.learn(1, 80.0, Some(60.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:883:15
[INFO] [stdout]     |
[INFO] [stdout] 883 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 883 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:899:46
[INFO] [stdout]     |
[INFO] [stdout] 899 |         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 899 -         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout] 899 +         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:899:31
[INFO] [stdout]     |
[INFO] [stdout] 899 |         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 899 |         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */); }
[INFO] [stdout]     |                                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:907:47
[INFO] [stdout]     |
[INFO] [stdout] 907 |         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                               ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 907 -         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout] 907 +         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:907:32
[INFO] [stdout]     |
[INFO] [stdout] 907 |         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 907 |         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */); }
[INFO] [stdout]     |                                                                                      +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:927:34
[INFO] [stdout]     |
[INFO] [stdout] 927 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |                                  ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 927 -             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout] 927 +             brain.learn(3, 80.0, Some(60.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:927:19
[INFO] [stdout]     |
[INFO] [stdout] 927 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |                   ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 927 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                         +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:940:47
[INFO] [stdout]     |
[INFO] [stdout] 940 |         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                               ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 940 -         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout] 940 +         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:940:32
[INFO] [stdout]     |
[INFO] [stdout] 940 |         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 940 |         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */); }
[INFO] [stdout]     |                                                                                      +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `scia` (lib test) due to 24 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:688:34
[INFO] [stdout]     |
[INFO] [stdout] 688 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0);
[INFO] [stdout]     |                                  ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 688 -             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0);
[INFO] [stdout] 688 +             brain.learn(3, 80.0, Some(60.0), "BULLISH EMA", 2, 5.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:688:19
[INFO] [stdout]     |
[INFO] [stdout] 688 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0);
[INFO] [stdout]     |                   ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 688 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0, /* f32 */);
[INFO] [stdout]     |                                                                         +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:724:30
[INFO] [stdout]     |
[INFO] [stdout] 724 |         brain.learn(1, 60.0, Some(40.0, 75.0), "BEARISH EMA", 0, 0.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 724 -         brain.learn(1, 60.0, Some(40.0, 75.0), "BEARISH EMA", 0, 0.0);
[INFO] [stdout] 724 +         brain.learn(1, 60.0, Some(40.0), "BEARISH EMA", 0, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:724:15
[INFO] [stdout]     |
[INFO] [stdout] 724 |         brain.learn(1, 60.0, Some(40.0, 75.0), "BEARISH EMA", 0, 0.0);
[INFO] [stdout]     |               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 724 |         brain.learn(1, 60.0, Some(40.0, 75.0), "BEARISH EMA", 0, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:725:30
[INFO] [stdout]     |
[INFO] [stdout] 725 |         brain.learn(3, 85.0, Some(65.0, 75.0), "BULLISH EMA", 3, 10.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 725 -         brain.learn(3, 85.0, Some(65.0, 75.0), "BULLISH EMA", 3, 10.0);
[INFO] [stdout] 725 +         brain.learn(3, 85.0, Some(65.0), "BULLISH EMA", 3, 10.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:725:15
[INFO] [stdout]     |
[INFO] [stdout] 725 |         brain.learn(3, 85.0, Some(65.0, 75.0), "BULLISH EMA", 3, 10.0);
[INFO] [stdout]     |               ^^^^^--------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 725 |         brain.learn(3, 85.0, Some(65.0, 75.0), "BULLISH EMA", 3, 10.0, /* f32 */);
[INFO] [stdout]     |                                                                      +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:746:30
[INFO] [stdout]     |
[INFO] [stdout] 746 |         brain.learn(3, 75.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 746 -         brain.learn(3, 75.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout] 746 +         brain.learn(3, 75.0, Some(55.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:746:15
[INFO] [stdout]     |
[INFO] [stdout] 746 |         brain.learn(3, 75.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 746 |         brain.learn(3, 75.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:853:46
[INFO] [stdout]     |
[INFO] [stdout] 853 |         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 853 -         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout] 853 +         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:853:31
[INFO] [stdout]     |
[INFO] [stdout] 853 |         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 853 |         for _ in 0..5 { brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */); }
[INFO] [stdout]     |                                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:871:46
[INFO] [stdout]     |
[INFO] [stdout] 871 |         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0); }
[INFO] [stdout]     |                                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 871 -         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0); }
[INFO] [stdout] 871 +         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0), "BULLISH EMA", 2, 5.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:871:31
[INFO] [stdout]     |
[INFO] [stdout] 871 |         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0); }
[INFO] [stdout]     |                               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 871 |         for _ in 0..5 { brain.learn(3, 85.0, Some(60.0, 75.0), "BULLISH EMA", 2, 5.0, /* f32 */); }
[INFO] [stdout]     |                                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:882:30
[INFO] [stdout]     |
[INFO] [stdout] 882 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 882 -         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout] 882 +         brain.learn(1, 80.0, Some(60.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:882:15
[INFO] [stdout]     |
[INFO] [stdout] 882 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 882 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:883:30
[INFO] [stdout]     |
[INFO] [stdout] 883 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 883 -         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout] 883 +         brain.learn(1, 80.0, Some(60.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:883:15
[INFO] [stdout]     |
[INFO] [stdout] 883 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0);
[INFO] [stdout]     |               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 883 |         brain.learn(1, 80.0, Some(60.0, 75.0), "BULLISH EMA", 0, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:899:46
[INFO] [stdout]     |
[INFO] [stdout] 899 |         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                              ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 899 -         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout] 899 +         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:899:31
[INFO] [stdout]     |
[INFO] [stdout] 899 |         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                               ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 899 |         for _ in 0..5 { brain.learn(3, 85.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */); }
[INFO] [stdout]     |                                                                                     +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:907:47
[INFO] [stdout]     |
[INFO] [stdout] 907 |         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                               ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 907 -         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout] 907 +         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:907:32
[INFO] [stdout]     |
[INFO] [stdout] 907 |         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 907 |         for _ in 0..25 { brain.learn(3, 80.0, Some(55.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */); }
[INFO] [stdout]     |                                                                                      +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:927:34
[INFO] [stdout]     |
[INFO] [stdout] 927 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |                                  ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 927 -             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout] 927 +             brain.learn(3, 80.0, Some(60.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:927:19
[INFO] [stdout]     |
[INFO] [stdout] 927 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0);
[INFO] [stdout]     |                   ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 927 |             brain.learn(3, 80.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */);
[INFO] [stdout]     |                                                                         +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this enum variant takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:940:47
[INFO] [stdout]     |
[INFO] [stdout] 940 |         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                               ^^^^       ---- unexpected argument #2 of type `{float}`
[INFO] [stdout]     |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/library/core/src/option.rs:606:4
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 940 -         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout] 940 +         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 7 arguments but 6 arguments were supplied
[INFO] [stdout]    --> src/ai_brain.rs:940:32
[INFO] [stdout]     |
[INFO] [stdout] 940 |         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0); }
[INFO] [stdout]     |                                ^^^^^-------------------------------------------------- argument #7 of type `f32` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/ai_brain.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn learn(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |         pip_thr: f32,  // dynamic threshold dari scia_config (default 75.0)
[INFO] [stdout]     |         ------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 940 |         for _ in 0..20 { brain.learn(3, 90.0, Some(60.0, 75.0), "BULLISH EMA", 1, 0.0, /* f32 */); }
[INFO] [stdout]     |                                                                                      +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_scans`
[INFO] [stdout]     --> src/dashboard_server.rs:2474:17
[INFO] [stdout]      |
[INFO] [stdout] 2474 |             let total_scans: i64 = qi("SELECT COUNT(*) FROM price_cache");
[INFO] [stdout]      |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_scans`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_scans`
[INFO] [stdout]     --> src/dashboard_server.rs:2474:17
[INFO] [stdout]      |
[INFO] [stdout] 2474 |             let total_scans: i64 = qi("SELECT COUNT(*) FROM price_cache");
[INFO] [stdout]      |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_scans`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `scia` (bin "scia" test) due to 24 previous errors; 1 warning emitted
[INFO] [stdout] warning: field `ephemeral` is never read
[INFO] [stdout]   --> src/security.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct SecurityCore {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 44 |     ephemeral:  bool,       // true = keys random (tidak persist)
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/security.rs:204:12
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl SecurityCore {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn is_ephemeral(&self) -> bool { self.ephemeral }
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn encrypt_layer1(&self, data: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn decrypt_layer1(&self, data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub fn encrypt_layer2(&self, data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn decrypt_layer2(&self, data: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |     pub fn lock_intel(&self, data: &str) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     pub fn unlock_intel(&self, locked: &str) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `first_seen` and `last_seen` are never read
[INFO] [stdout]   --> src/memory.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct WhaleIntel {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub first_seen:       String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 17 |     pub last_seen:        String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WhaleIntel` 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 `timestamp` is never read
[INFO] [stdout]   --> src/memory.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct TradeEvent {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub timestamp:    String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TradeEvent` 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_in_memory` and `get_pending_outcomes` are never used
[INFO] [stdout]    --> src/memory.rs:68:12
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl MemoryEngine {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub fn new_in_memory() -> Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 513 |     pub fn get_pending_outcomes(&self, timeframe: &str) -> Vec<(i64, String, f64)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Candle` is never constructed
[INFO] [stdout]   --> src/analytics.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Candle {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timeframe`, `ema_fast`, `ema_slow`, `fib_level`, and `strength` are never read
[INFO] [stdout]   --> src/analytics.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct MarketSignal {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 25 |     pub timeframe:      String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub ema_fast:       Option<f64>,     // [FIX] Nilai EMA fast untuk debugging
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 30 |     pub ema_slow:       Option<f64>,     // [FIX] Nilai EMA slow untuk debugging
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 31 |     pub fib_level:      Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 32 |     pub pattern:        Option<String>,
[INFO] [stdout] 33 |     pub strength:       f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MarketSignal` 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 `timestamp` is never read
[INFO] [stdout]   --> src/whale_tracker.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct HeliusTransaction {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub timestamp: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeliusTransaction` 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 `from` and `to` are never read
[INFO] [stdout]   --> src/whale_tracker.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct NativeTransfer {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 51 |     #[serde(rename = "fromUserAccount")]
[INFO] [stdout] 52 |     pub from: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 53 |     #[serde(rename = "toUserAccount")]
[INFO] [stdout] 54 |     pub to: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NativeTransfer` 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 `from` and `to` are never read
[INFO] [stdout]   --> src/whale_tracker.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct TokenTransfer {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 60 |     #[serde(rename = "fromUserAccount")]
[INFO] [stdout] 61 |     pub from: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 62 |     #[serde(rename = "toUserAccount")]
[INFO] [stdout] 63 |     pub to: Option<String>,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenTransfer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DexScreenerPair` is never constructed
[INFO] [stdout]   --> src/whale_tracker.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct DexScreenerPair {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DexToken` is never constructed
[INFO] [stdout]   --> src/whale_tracker.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct DexToken {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DexLiquidity` is never constructed
[INFO] [stdout]   --> src/whale_tracker.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct DexLiquidity { pub usd: Option<f64> }
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DexVolume` is never constructed
[INFO] [stdout]   --> src/whale_tracker.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub struct DexVolume { pub h1: Option<f64>, pub h24: Option<f64> }
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DexTxns` is never constructed
[INFO] [stdout]   --> src/whale_tracker.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub struct DexTxns { pub m5: Option<DexTxnCount> }
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DexTxnCount` is never constructed
[INFO] [stdout]   --> src/whale_tracker.rs:99:12
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub struct DexTxnCount { pub buys: Option<u64>, pub sells: Option<u64> }
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/whale_tracker.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct CoinSnapshot {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CoinSnapshot` 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 `wallet_short`, `coin_mint`, `coin_symbol`, `platform`, and `historical_volume` are never read
[INFO] [stdout]    --> src/whale_tracker.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct WhaleAlert {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 116 |     pub wallet: String,
[INFO] [stdout] 117 |     pub wallet_short: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 118 |     pub coin_mint: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 119 |     pub coin_symbol: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 120 |     pub volume_sol: f64,
[INFO] [stdout] 121 |     pub platform: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub historical_volume: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WhaleAlert` 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 `wallet_short` and `first_seen_at` are never read
[INFO] [stdout]   --> src/whale_tracer.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct TracedWhale {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 32 |     pub wallet:        String,
[INFO] [stdout] 33 |     pub wallet_short:  String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 34 |     pub first_seen_at: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TracedWhale` 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 `coin_mint` is never read
[INFO] [stdout]   --> src/whale_tracer.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct WhaleAppearance {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub coin_mint:    String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WhaleAppearance` 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 `r236`, `r786`, `e100`, and `e1272` are never read
[INFO] [stdout]    --> src/elliott_wave.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct FibLevels {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 133 |     // Retracement (dari high ke low swing)
[INFO] [stdout] 134 |     pub r236: f64,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub r786: f64,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 139 |     // Extension (dari low, target ke atas)
[INFO] [stdout] 140 |     pub e100:  f64,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 141 |     pub e1272: f64,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FibLevels` 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 `last_updated` is never read
[INFO] [stdout]    --> src/elliott_wave.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub struct ShadowIntel {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub last_updated: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ShadowIntel` 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 function `with_mint` is never used
[INFO] [stdout]    --> src/elliott_wave.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 271 | impl WaveRegistry {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn with_mint(mint: &str) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `fib_target` is never read
[INFO] [stdout]    --> src/elliott_wave.rs:324:9
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub struct WaveSignal {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fib_target:    Option<f64>,          // 1.618 target (backward compat)
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WaveSignal` 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 `trend_strength`, `staleness_hours`, and `win_streak` are never read
[INFO] [stdout]   --> src/ai_brain.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct AiVerdict {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub trend_strength:      f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 96 |     /// Jam sejak record pola terakhir (0 = fresh, tinggi = stale)
[INFO] [stdout] 97 |     pub staleness_hours:     f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 98 |     /// Berapa record terakhir yang berturut-turut WIN
[INFO] [stdout] 99 |     pub win_streak:          u32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AiVerdict` 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 `confirmed_outcomes` is never read
[INFO] [stdout]    --> src/ai_brain.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct AiStats {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub confirmed_outcomes: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `db_ok`, `total_patterns`, `avg_outcome_global`, `whale_count`, and `gold_whales` are never read
[INFO] [stdout]    --> src/ai_brain.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct BrainHealthReport {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 136 |     pub db_ok:              bool,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 137 |     pub total_patterns:     i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 138 |     pub avg_outcome_global: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 139 |     pub whale_count:        i64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 140 |     pub gold_whales:        i64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BrainHealthReport` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/backtesting.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct SignalCapture {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub wave:            u8,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub sol_price_usd:   f64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 29 |     pub whale_count:     u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 30 |     pub dna_bonus:       f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 31 |     pub captured_at:     String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 32 |     pub price_1h_later:  Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 33 |     pub price_4h_later:  Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 34 |     pub price_24h_later: Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 35 |     pub pct_move_1h:     Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 36 |     pub pct_move_4h:     Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 37 |     pub pct_move_24h:    Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 38 |     pub outcome_1h:      Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 39 |     pub outcome_4h:      Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 40 |     pub outcome_24h:     Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SignalCapture` 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 `lqv_min` and `whale_min_sol` are never read
[INFO] [stdout]    --> src/backtesting.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub struct DynamicThresholds {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub lqv_min:       f32, // minimum LQV threshold
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 314 |     pub whale_min_sol:  f32, // minimum whale SOL threshold
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DynamicThresholds` 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 `win_rate_high_vol` is never read
[INFO] [stdout]    --> src/backtesting.rs:414:9
[INFO] [stdout]     |
[INFO] [stdout] 406 | pub struct LqvCalibrationReport {
[INFO] [stdout]     |            -------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 414 |     pub win_rate_high_vol:   f64,    // win rate saat vol_24h >= 5M
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LqvCalibrationReport` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `pass_rate` and `summary` are never used
[INFO] [stdout]    --> src/quality_filter.rs:316:12
[INFO] [stdout]     |
[INFO] [stdout] 291 | impl FilterStats {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 316 |     pub fn pass_rate(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 322 |     pub fn summary(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `evict_old` is never used
[INFO] [stdout]   --> src/price_cache.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl PriceCache {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn evict_old(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/scia_voice.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct ChatMessage {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 32 |     pub id:        i64,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatMessage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_price_cached` is never used
[INFO] [stdout]    --> src/sol_price.rs:121:12
[INFO] [stdout]     |
[INFO] [stdout]  42 | impl SolPriceFetcher {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn get_price_cached(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ToolContext` is never constructed
[INFO] [stdout]   --> src/tools/mod.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct ToolContext {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PermissionMode` is never used
[INFO] [stdout]   --> src/tools/mod.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub enum PermissionMode { Default, Plan, Auto, Bypass }
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ProgressCallback` is never used
[INFO] [stdout]   --> src/tools/mod.rs:35:10
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub type ProgressCallback = Box<dyn Fn(&ToolProgress) + Send + Sync>;
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ToolProgress` is never used
[INFO] [stdout]   --> src/tools/mod.rs:38:10
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub enum ToolProgress {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ToolResult` is never constructed
[INFO] [stdout]   --> src/tools/mod.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct ToolResult {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `description`, `input_schema`, `execute`, and `is_read_only` are never used
[INFO] [stdout]   --> src/tools/mod.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub trait Tool: Send + Sync {
[INFO] [stdout]    |           ---- methods in this trait
[INFO] [stdout] 54 |     fn name(&self)        -> &str;
[INFO] [stdout] 55 |     fn description(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 56 |     fn input_schema(&self) -> Value;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 57 |     async fn execute(
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn is_read_only(&self) -> bool { false }
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `register` and `get` are never used
[INFO] [stdout]    --> src/tools/mod.rs:91:12
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl ToolRegistry {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn register(&self, tool: Arc<dyn Tool>) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub async fn get(&self, name: &str) -> Option<Arc<dyn Tool>> {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_TIMEOUT_SECS` is never used
[INFO] [stdout]   --> src/tools/bash.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const DEFAULT_TIMEOUT_SECS: u64 = 120;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_OUTPUT_BYTES` is never used
[INFO] [stdout]   --> src/tools/bash.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const MAX_OUTPUT_BYTES: usize   = 10 * 1024 * 1024;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BashInput` is never constructed
[INFO] [stdout]   --> src/tools/bash.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct BashInput {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_read_only_command` is never used
[INFO] [stdout]   --> src/tools/bash.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl BashTool {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 25 |     pub fn new() -> Self { Self { name: "Bash".to_string() } }
[INFO] [stdout] 26 |     fn is_read_only_command(&self, command: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_TIMEOUT_SECS` is never used
[INFO] [stdout]   --> src/tools/grep.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const DEFAULT_TIMEOUT_SECS: u64 = 30;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_MATCHES` is never used
[INFO] [stdout]   --> src/tools/grep.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const MAX_MATCHES: usize        = 500;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrepInput` is never constructed
[INFO] [stdout]   --> src/tools/grep.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct GrepInput {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CACHE_TTL_SECS` is never used
[INFO] [stdout]   --> src/tools/web_fetch.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const CACHE_TTL_SECS: u64    = 900;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_CONTENT_LEN` is never used
[INFO] [stdout]   --> src/tools/web_fetch.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const MAX_CONTENT_LEN: usize = 100_000;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WebFetchInput` is never constructed
[INFO] [stdout]   --> src/tools/web_fetch.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct WebFetchInput {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `content` and `timestamp` are never read
[INFO] [stdout]   --> src/tools/web_fetch.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct CacheEntry { content: String, timestamp: u64 }
[INFO] [stdout]    |        ----------   ^^^^^^^          ^^^^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CacheEntry` 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 `client` and `cache` are never read
[INFO] [stdout]   --> src/tools/web_fetch.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct WebFetchTool {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 31 |     name:   String,
[INFO] [stdout] 32 |     client: Client,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 33 |     cache:  Arc<Mutex<HashMap<String, CacheEntry>>>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_cached`, `set_cache`, and `html_to_text` are never used
[INFO] [stdout]   --> src/tools/web_fetch.rs:51:14
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl WebFetchTool {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 51 |     async fn get_cached(&self, url: &str) -> Option<String> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     async fn set_cache(&self, url: &str, content: String) {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     fn html_to_text(&self, html: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WebSearchInput` is never constructed
[INFO] [stdout]   --> src/tools/web_search.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct WebSearchInput {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `client` is never read
[INFO] [stdout]   --> src/tools/web_search.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct WebSearchTool {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 18 |     name:   String,
[INFO] [stdout] 19 |     client: Client,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TodoInput` is never used
[INFO] [stdout]   --> src/tools/todo.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum TodoInput {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `todos` is never read
[INFO] [stdout]   --> src/tools/todo.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct TodoTool {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 39 |     name:  String,
[INFO] [stdout] 40 |     todos: Arc<Mutex<HashMap<String, TodoItem>>>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AskUserInput` is never constructed
[INFO] [stdout]  --> src/tools/ask_user.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct AskUserInput {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `when_to_use`, `source`, `color`, `omit_context`, and `system_prompt` are never read
[INFO] [stdout]   --> src/agent/definition.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct AgentDefinition {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 15 |     pub agent_type:      String,
[INFO] [stdout] 16 |     pub when_to_use:     String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub source:          AgentSource,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 20 |     pub model:           Option<String>,
[INFO] [stdout] 21 |     pub color:           Option<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 22 |     pub background:      bool,
[INFO] [stdout] 23 |     pub omit_context:    bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 24 |     pub system_prompt:   String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AgentDefinition` 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 `with_color` is never used
[INFO] [stdout]   --> src/agent/definition.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl AgentDefinition {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn with_color(mut self, color: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `register` and `get_all` are never used
[INFO] [stdout]    --> src/agent/definition.rs:127:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl AgentRegistry {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn register(&self, agent: AgentDefinition) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub async fn get_all(&self) -> Vec<AgentDefinition> {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Idle` and `Killed` are never constructed
[INFO] [stdout]   --> src/agent/spawn.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum AgentStatus { Running, Idle, Completed, Failed, Killed }
[INFO] [stdout]    |          -----------            ^^^^                     ^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          variants in this enum
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AgentStatus` 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 `task_id`, `agent_id`, `agent_type`, `created_at`, and `abort_sender` are never read
[INFO] [stdout]   --> src/agent/spawn.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct AgentTask {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 18 |     pub task_id:      String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 19 |     pub agent_id:     String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 20 |     pub agent_type:   String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 21 |     pub status:       AgentStatus,
[INFO] [stdout] 22 |     pub created_at:   u64,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 23 |     pub completed_at: Option<u64>,
[INFO] [stdout] 24 |     abort_sender:     Arc<Mutex<Option<oneshot::Sender<()>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AgentTask` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `run_in_background` are never read
[INFO] [stdout]   --> src/agent/spawn.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct SpawnConfig {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub description:      String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 33 |     pub run_in_background: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpawnConfig` 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 `agent_id` and `task_id` are never read
[INFO] [stdout]   --> src/agent/spawn.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct SpawnResult {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 40 |     pub success:  bool,
[INFO] [stdout] 41 |     pub agent_id: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 42 |     pub task_id:  Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpawnResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `stop_agent` and `get_running_agents` are never used
[INFO] [stdout]    --> src/agent/spawn.rs:141:18
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl AgentSpawner {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub async fn stop_agent(&self, agent_id: &str) -> Result<bool, String> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub async fn get_running_agents(&self) -> Vec<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `error` and `tool_calls_count` are never read
[INFO] [stdout]   --> src/agent/runner.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct AgentRunResult {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub error:            Option<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 43 |     pub tool_calls_count: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AgentRunResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `execute_tool` is never used
[INFO] [stdout]    --> src/agent/runner.rs:128:18
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl AgentRunner {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub async fn execute_tool(&self, tool_name: &str, input: &str) -> Result<String, String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AgentMessage` is never constructed
[INFO] [stdout]    --> src/agent/runner.rs:512:12
[INFO] [stdout]     |
[INFO] [stdout] 512 | pub struct AgentMessage {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AgentMessenger` is never constructed
[INFO] [stdout]    --> src/agent/runner.rs:519:12
[INFO] [stdout]     |
[INFO] [stdout] 519 | pub struct AgentMessenger {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `send`, and `receive` are never used
[INFO] [stdout]    --> src/agent/runner.rs:524:12
[INFO] [stdout]     |
[INFO] [stdout] 523 | impl AgentMessenger {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 524 |     pub fn new() -> Self { Self { messages: Arc::new(Mutex::new(HashMap::new())) } }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 525 |     pub async fn send(&self, from: &str, to: &str, content: &str) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 532 |     pub async fn receive(&self, to: &str) -> Vec<AgentMessage> {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PermissionResult` is never used
[INFO] [stdout]   --> src/permission.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum PermissionResult {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pending` and `resolved` are never read
[INFO] [stdout]   --> src/permission.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct PermissionContext {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 52 |     rules:    Arc<Mutex<Vec<PermissionRule>>>,
[INFO] [stdout] 53 |     pending:  Arc<Mutex<HashMap<String, PermissionRequest>>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 54 |     resolved: Arc<Mutex<HashMap<String, PermissionRequest>>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check`, `match_pattern`, `create_request`, `resolve_request`, `poll_response`, and `handle_worker_permission` are never used
[INFO] [stdout]    --> src/permission.rs:125:18
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl PermissionContext {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn check(
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     fn match_pattern(&self, pattern: &str, input: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub async fn create_request(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     pub async fn resolve_request(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub async fn poll_response(&self, id: &str, timeout_secs: u64) -> Option<PermissionRequest> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub async fn handle_worker_permission(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `outcome_checker`, `backtest_outcome_checker`, `filter_persister`, `sol_price_sync`, `daily_summary`, and `predator_executor` are never read
[INFO] [stdout]    --> src/spawn_tasks.rs:349:9
[INFO] [stdout]     |
[INFO] [stdout] 348 | pub struct BackgroundTasks {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 349 |     pub outcome_checker:          JoinHandle<()>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 350 |     pub backtest_outcome_checker: JoinHandle<()>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 351 |     pub filter_persister:         JoinHandle<()>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 352 |     pub sol_price_sync:           JoinHandle<()>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 353 |     pub daily_summary:            JoinHandle<()>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 354 |     /// Predator executor — Some jika PREDATOR_EXECUTION_ENABLED=true, None jika RECON only.
[INFO] [stdout] 355 |     pub predator_executor:        Option<JoinHandle<()>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kirim_error` is never used
[INFO] [stdout]    --> src/telegram.rs:135:8
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub fn kirim_error(modul: &str, detail: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58", kill_on_drop: false }`
[INFO] [stdout] 6e3a78bb8d503fd4e588ee7c556f725c0b4a2cfcecdde46c0ee3c8f8e76f2f58
