[INFO] cloning repository https://github.com/Butoshi/buddy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Butoshi/buddy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FButoshi%2Fbuddy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FButoshi%2Fbuddy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 355f5742f192d4284b5db8bf9d941218e3817d97 [INFO] testing Butoshi/buddy against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FButoshi%2Fbuddy" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Butoshi/buddy [INFO] finished tweaking git repo https://github.com/Butoshi/buddy [INFO] tweaked toml for git repo https://github.com/Butoshi/buddy written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Butoshi/buddy on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Butoshi/buddy 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" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b6a9b958590d1379e457936e66ec2c4cbb656087e1111daee5ef852ca61bb551 [INFO] running `Command { std: "docker" "start" "-a" "b6a9b958590d1379e457936e66ec2c4cbb656087e1111daee5ef852ca61bb551", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b6a9b958590d1379e457936e66ec2c4cbb656087e1111daee5ef852ca61bb551", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b6a9b958590d1379e457936e66ec2c4cbb656087e1111daee5ef852ca61bb551", kill_on_drop: false }` [INFO] [stdout] b6a9b958590d1379e457936e66ec2c4cbb656087e1111daee5ef852ca61bb551 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f35d1b6d1e87f336cec6030f3149f1df0b9c5343c47ffd4fd7e3eef482fae21e [INFO] running `Command { std: "docker" "start" "-a" "f35d1b6d1e87f336cec6030f3149f1df0b9c5343c47ffd4fd7e3eef482fae21e", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling subtle v2.4.1 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling zerocopy v0.8.47 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling cc v1.2.57 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling crunchy v0.2.4 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling winnow v1.0.0 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling block-padding v0.2.1 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.114 [INFO] [stderr] Compiling toml_datetime v1.0.1+spec-1.1.0 [INFO] [stderr] Compiling libsecp256k1-core v0.2.2 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling toml_parser v1.0.10+spec-1.1.0 [INFO] [stderr] Compiling hashbrown v0.13.2 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling toml_edit v0.25.5+spec-1.1.0 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling base64 v0.21.7 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling ark-std v0.4.0 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling tinyvec v1.11.0 [INFO] [stderr] Compiling proc-macro-crate v3.5.0 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling ahash v0.7.8 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling feature-probe v0.1.1 [INFO] [stderr] Compiling bv v0.11.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling zeroize_derive v1.4.3 [INFO] [stderr] Compiling ark-serialize-derive v0.4.2 [INFO] [stderr] Compiling ark-ff-macros v0.4.2 [INFO] [stderr] Compiling ark-ff-asm v0.4.2 [INFO] [stderr] Compiling zeroize v1.3.0 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Compiling libsecp256k1-gen-genmult v0.2.1 [INFO] [stderr] Compiling proc-macro-crate v0.1.5 [INFO] [stderr] Compiling libsecp256k1-gen-ecmult v0.2.1 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling solana-frozen-abi-macro v1.18.26 [INFO] [stderr] Compiling bitmaps v2.1.0 [INFO] [stderr] Compiling im v15.1.0 [INFO] [stderr] Compiling bumpalo v3.20.2 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling keccak v0.1.6 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.114 [INFO] [stderr] Compiling borsh v1.6.1 [INFO] [stderr] Compiling libsecp256k1 v0.6.0 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling borsh-schema-derive-internal v0.9.3 [INFO] [stderr] Compiling sized-chunks v0.6.5 [INFO] [stderr] Compiling borsh-derive-internal v0.9.3 [INFO] [stderr] Compiling borsh-schema-derive-internal v0.10.4 [INFO] [stderr] Compiling borsh-derive-internal v0.10.4 [INFO] [stderr] Compiling wasm-bindgen v0.2.114 [INFO] [stderr] Compiling blake3 v1.8.3 [INFO] [stderr] Compiling rand_xoshiro v0.6.0 [INFO] [stderr] Compiling solana-frozen-abi v1.18.26 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling memoffset v0.9.1 [INFO] [stderr] Compiling bs58 v0.4.0 [INFO] [stderr] Compiling arrayref v0.3.9 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling borsh-derive v0.10.4 [INFO] [stderr] Compiling borsh-derive v0.9.3 [INFO] [stderr] Compiling hashbrown v0.11.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling borsh-derive v1.6.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling unicode-normalization v0.1.25 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.114 [INFO] [stderr] Compiling solana-program v1.18.26 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling crypto-mac v0.8.0 [INFO] [stderr] Compiling sha2 v0.9.9 [INFO] [stderr] Compiling curve25519-dalek v3.2.1 [INFO] [stderr] Compiling hmac v0.8.1 [INFO] [stderr] Compiling hmac-drbg v0.3.0 [INFO] [stderr] Compiling pbkdf2 v0.4.0 [INFO] [stderr] Compiling ark-serialize v0.4.2 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling memmap2 v0.5.10 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling ark-ff v0.4.2 [INFO] [stderr] Compiling serde_bytes v0.11.19 [INFO] [stderr] Compiling base64 v0.12.3 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling constant_time_eq v0.4.2 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling tiny-bip39 v0.8.2 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling borsh v0.9.3 [INFO] [stderr] Compiling borsh v0.10.4 [INFO] [stderr] Compiling solana-sdk-macro v1.18.26 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling signature v1.6.4 [INFO] [stderr] Compiling ed25519 v1.5.3 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling humantime v2.3.0 [INFO] [stderr] Compiling ed25519-dalek v1.0.1 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling env_logger v0.9.3 [INFO] [stderr] Compiling num_enum_derive v0.7.6 [INFO] [stderr] Compiling solana-sdk v1.18.26 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling derivation-path v0.2.0 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling num_enum v0.7.6 [INFO] [stderr] Compiling solana-logger v1.18.26 [INFO] [stderr] Compiling ed25519-dalek-bip32 v0.2.0 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling pbkdf2 v0.11.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling qualifier_attr v0.2.2 [INFO] [stderr] Compiling ark-poly v0.4.2 [INFO] [stderr] Compiling qstring v0.7.2 [INFO] [stderr] Compiling uriparse v0.6.4 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling siphasher v0.3.11 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling assert_matches v1.5.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling serde_with_macros v2.3.3 [INFO] [stderr] Compiling ark-ec v0.4.2 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling serde_with v2.3.3 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling tower-service v0.3.3 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling ark-bn254 v0.4.0 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling openssl-sys v0.9.112 [INFO] [stderr] Compiling light-poseidon v0.2.0 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling openssl-probe v0.2.1 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling simd-adler32 v0.3.8 [INFO] [stderr] Compiling try-lock v0.2.5 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling h2 v0.3.27 [INFO] [stderr] Compiling want v0.3.1 [INFO] [stderr] Compiling http-body v0.4.6 [INFO] [stderr] Compiling cipher v0.3.0 [INFO] [stderr] Compiling rustls-pemfile v1.0.4 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling universal-hash v0.4.1 [INFO] [stderr] Compiling num-bigint v0.2.6 [INFO] [stderr] Compiling compression-core v0.4.31 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling compression-codecs v0.4.37 [INFO] [stderr] Compiling rustls-webpki v0.101.7 [INFO] [stderr] Compiling sct v0.7.1 [INFO] [stderr] Compiling polyval v0.5.3 [INFO] [stderr] Compiling aes v0.7.5 [INFO] [stderr] Compiling ctr v0.8.0 [INFO] [stderr] Compiling aead v0.4.3 [INFO] [stderr] Compiling num-complex v0.2.4 [INFO] [stderr] Compiling num-rational v0.2.4 [INFO] [stderr] Compiling webpki-roots v0.25.4 [INFO] [stderr] Compiling aes-gcm-siv v0.10.3 [INFO] [stderr] Compiling async-compression v0.4.41 [INFO] [stderr] Compiling spl-program-error-derive v0.3.2 [INFO] [stderr] Compiling spl-discriminator-syn v0.1.2 [INFO] [stderr] Compiling sha3 v0.9.1 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling merlin v3.0.0 [INFO] [stderr] Compiling scroll_derive v0.11.1 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling sync_wrapper v0.1.2 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling scroll v0.11.0 [INFO] [stderr] Compiling unreachable v1.0.0 [INFO] [stderr] Compiling spl-discriminator-derive v0.1.2 [INFO] [stderr] Compiling gethostname v0.2.3 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling plain v0.2.3 [INFO] [stderr] Compiling ascii v0.9.3 [INFO] [stderr] Compiling goblin v0.5.4 [INFO] [stderr] Compiling enum-iterator-derive v1.5.0 [INFO] [stderr] Compiling tokio-rustls v0.24.1 [INFO] [stderr] Compiling combine v3.8.1 [INFO] [stderr] Compiling hyper v0.14.32 [INFO] [stderr] Compiling num v0.2.1 [INFO] [stderr] Compiling hash32 v0.2.1 [INFO] [stderr] Compiling solana-program-runtime v1.18.26 [INFO] [stderr] Compiling winnow v0.5.40 [INFO] [stderr] Compiling rustc-demangle v0.1.27 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling enum-iterator v1.5.0 [INFO] [stderr] Compiling percentage v0.1.0 [INFO] [stderr] Compiling eager v0.1.0 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Compiling num-conv v0.2.0 [INFO] [stderr] Compiling time-core v0.1.8 [INFO] [stderr] Compiling deranged v0.5.8 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Compiling time-macros v0.2.27 [INFO] [stderr] Compiling hyper-tls v0.5.0 [INFO] [stderr] Compiling hyper-rustls v0.24.2 [INFO] [stderr] Compiling solana_rbpf v0.8.3 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling reqwest v0.11.27 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling time v0.3.47 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Compiling zstd-safe v5.0.2+zstd.1.5.2 [INFO] [stderr] Compiling solana-security-txt v1.1.2 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Compiling solana-version v1.18.26 [INFO] [stderr] Compiling solana-vote-program v1.18.26 [INFO] [stderr] Compiling num_enum_derive v0.6.1 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling data-encoding v2.10.0 [INFO] [stderr] Compiling num_enum v0.6.1 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling memoffset v0.7.1 [INFO] [stderr] Compiling jsonrpc-core v18.0.0 [INFO] [stderr] Compiling rusticata-macros v4.1.0 [INFO] [stderr] Compiling asn1-rs-derive v0.4.0 [INFO] [stderr] Compiling pem v1.1.1 [INFO] [stderr] Compiling yasna v0.5.2 [INFO] [stderr] Compiling asn1-rs-impl v0.1.0 [INFO] [stderr] Compiling spl-program-error v0.3.0 [INFO] [stderr] Compiling spl-discriminator v0.1.0 [INFO] [stderr] Compiling spl-token v4.0.0 [INFO] [stderr] Compiling spl-memo v4.0.0 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling portable-atomic v1.13.1 [INFO] [stderr] Compiling rcgen v0.10.0 [INFO] [stderr] Compiling asn1-rs v0.5.2 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling openssl-probe v0.1.6 [INFO] [stderr] Compiling oid-registry v0.6.1 [INFO] [stderr] Compiling const-oid v0.7.1 [INFO] [stderr] Compiling der v0.5.1 [INFO] [stderr] Compiling rustls-native-certs v0.6.3 [INFO] [stderr] Compiling nix v0.26.4 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling dlopen2_derive v0.3.0 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling solana-perf v1.18.26 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling base64ct v1.8.3 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling os_str_bytes v6.6.1 [INFO] [stderr] Compiling event-listener v2.5.3 [INFO] [stderr] Compiling clap_lex v0.2.4 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling spki v0.5.4 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling dlopen2 v0.5.0 [INFO] [stderr] Compiling solana-rayon-threadlimit v1.18.26 [INFO] [stderr] Compiling der-parser v8.2.0 [INFO] [stderr] Compiling quinn-proto v0.10.6 [INFO] [stderr] Compiling webpki-roots v0.24.0 [INFO] [stderr] Compiling quinn-udp v0.4.1 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling caps v0.5.6 [INFO] [stderr] Compiling textwrap v0.16.2 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling tower-layer v0.3.3 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling dialoguer v0.10.4 [INFO] [stderr] Compiling clap v3.2.25 [INFO] [stderr] Compiling async-channel v1.9.0 [INFO] [stderr] Compiling solana-zk-token-sdk v1.18.26 [INFO] [stderr] Compiling solana-metrics v1.18.26 [INFO] [stderr] Compiling solana-measure v1.18.26 [INFO] [stderr] Compiling solana-connection-cache v1.18.26 [INFO] [stderr] Compiling x509-parser v0.14.0 [INFO] [stderr] Compiling tungstenite v0.20.1 [INFO] [stderr] Compiling pkcs8 v0.8.0 [INFO] [stderr] Compiling rtoolbox v0.0.3 [INFO] [stderr] Compiling solana-config-program v1.18.26 [INFO] [stderr] Compiling quinn v0.10.2 [INFO] [stderr] Compiling zstd v0.11.2+zstd.1.5.2 [INFO] [stderr] Compiling histogram v0.6.9 [INFO] [stderr] Compiling ansi_term v0.12.1 [INFO] [stderr] Compiling unicase v2.9.0 [INFO] [stderr] Compiling vec_map v0.8.2 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling solana-streamer v1.18.26 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling solana-net-utils v1.18.26 [INFO] [stderr] Compiling tokio-tungstenite v0.20.1 [INFO] [stderr] Compiling rpassword v7.4.0 [INFO] [stderr] Compiling solana-remote-wallet v1.18.26 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling spl-pod v0.1.0 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling atomic-waker v1.1.2 [INFO] [stderr] Compiling hyper v1.9.0 [INFO] [stderr] Compiling async-mutex v1.4.1 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling spl-type-length-value v0.3.0 [INFO] [stderr] Compiling spl-token-group-interface v0.1.0 [INFO] [stderr] Compiling spl-tlv-account-resolution v0.5.1 [INFO] [stderr] Compiling spl-token-metadata-interface v0.2.0 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling solana-clap-utils v1.18.26 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling spl-transfer-hook-interface v0.4.1 [INFO] [stderr] Compiling axum-core v0.4.5 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling solana-udp-client v1.18.26 [INFO] [stderr] Compiling tungstenite v0.21.0 [INFO] [stderr] Compiling spl-token-2022 v1.0.0 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling http-range-header v0.4.2 [INFO] [stderr] Compiling tokio-tungstenite v0.21.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling tower v0.4.13 [INFO] [stderr] Compiling tower-http v0.5.2 [INFO] [stderr] Compiling colored v2.2.0 [INFO] [stderr] Compiling bs58 v0.5.1 [INFO] [stderr] Compiling dotenv v0.15.0 [INFO] [stderr] Compiling axum v0.7.9 [INFO] [stderr] Compiling solana-account-decoder v1.18.26 [INFO] [stderr] Compiling spl-associated-token-account v2.3.0 [INFO] [stderr] Compiling solana-transaction-status v1.18.26 [INFO] [stderr] Compiling solana-rpc-client-api v1.18.26 [INFO] [stderr] Compiling solana-rpc-client v1.18.26 [INFO] [stderr] Compiling solana-pubsub-client v1.18.26 [INFO] [stderr] Compiling solana-quic-client v1.18.26 [INFO] [stderr] Compiling solana-rpc-client-nonce-utils v1.18.26 [INFO] [stderr] Compiling solana-thin-client v1.18.26 [INFO] [stderr] Compiling solana-tpu-client v1.18.26 [INFO] [stderr] Compiling solana-client v1.18.26 [INFO] [stderr] Compiling buddy_bot v1.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/config.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | use anyhow::{Result, Context}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CreateEvent`, `TradeEvent`, and `TradingDecision` [INFO] [stdout] --> src/websocket.rs:15:20 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::types::{TradeEvent, CreateEvent, TokenState, WhaleBuy, TradingDecision}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SignalType` [INFO] [stdout] --> src/analyzer.rs:7:61 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::predator_engine::{PredatorEngine, TokenSnapshot, SignalType}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signer` [INFO] [stdout] --> src/trader.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | signature::{Keypair, Signer}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error` [INFO] [stdout] --> src/trader.rs:11:27 [INFO] [stdout] | [INFO] [stdout] 11 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DateTime` and `Duration` [INFO] [stdout] --> src/position_manager.rs:4:14 [INFO] [stdout] | [INFO] [stdout] 4 | use chrono::{DateTime, Utc, Duration}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/position_manager.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::RwLock` [INFO] [stdout] --> src/price_cache.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use tokio::sync::RwLock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/price_cache.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | #[cfg(feature = "ai")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:48:7 [INFO] [stdout] | [INFO] [stdout] 48 | #[cfg(feature = "ai")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:53:7 [INFO] [stdout] | [INFO] [stdout] 53 | #[cfg(feature = "ai")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:102:11 [INFO] [stdout] | [INFO] [stdout] 102 | #[cfg(not(feature = "ai"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:105:11 [INFO] [stdout] | [INFO] [stdout] 105 | #[cfg(not(feature = "ai"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug` and `warn` [INFO] [stdout] --> src/turbo_trader.rs:17:21 [INFO] [stdout] | [INFO] [stdout] 17 | use tracing::{info, warn, error, debug}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/turbo_trader.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | (stats.successful_txs as f64 / stats.total_txs as f64 * 100.0) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 289 - (stats.successful_txs as f64 / stats.total_txs as f64 * 100.0) [INFO] [stdout] 289 + stats.successful_txs as f64 / stats.total_txs as f64 * 100.0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/predator_engine.rs:11:28 [INFO] [stdout] | [INFO] [stdout] 11 | use tracing::{info, debug, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/runner_tracker.rs:11:17 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/runner_tracker.rs:12:24 [INFO] [stdout] | [INFO] [stdout] 12 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug` and `warn` [INFO] [stdout] --> src/wallet_reputation.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | use tracing::{info, debug, warn}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/wallet_reputation.rs:14:29 [INFO] [stdout] | [INFO] [stdout] 14 | use chrono::{DateTime, Utc, Duration}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/exit_agent.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | use tracing::{info, debug, warn}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/entry_timing.rs:12:24 [INFO] [stdout] | [INFO] [stdout] 12 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/entry_timing.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | use tracing::{info, debug}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/market_cycle.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | use tracing::{info, debug}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HeaderValue` [INFO] [stdout] --> src/dashboard.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | http::{header, Method, HeaderValue}, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::VecDeque` [INFO] [stdout] --> src/dashboard.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::collections::VecDeque; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/brain.rs:14:21 [INFO] [stdout] | [INFO] [stdout] 14 | use tracing::{info, debug}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DashboardData` [INFO] [stdout] --> src/unified_agent.rs:31:40 [INFO] [stdout] | [INFO] [stdout] 31 | use crate::dashboard::{DashboardState, DashboardData, TokenEvent, RunnerInfo}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AgentDecision` [INFO] [stdout] --> src/unified_agent.rs:32:44 [INFO] [stdout] | [INFO] [stdout] 32 | use crate::adaptive_agent::{AdaptiveAgent, AgentDecision}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/token_history.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::RwLock` [INFO] [stdout] --> src/token_history.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use tokio::sync::RwLock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error`, `info`, and `warn` [INFO] [stdout] --> src/main.rs:29:15 [INFO] [stdout] | [INFO] [stdout] 29 | use tracing::{info, warn, error, Level}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `analysis_done` [INFO] [stdout] --> src/websocket.rs:549:21 [INFO] [stdout] | [INFO] [stdout] 549 | let analysis_done = token_state.analysis_8s_done; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_analysis_done` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mc` [INFO] [stdout] --> src/brain.rs:231:9 [INFO] [stdout] | [INFO] [stdout] 231 | mc: f64, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_mc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `endpoint` [INFO] [stdout] --> src/turbo_trader.rs:248:66 [INFO] [stdout] | [INFO] [stdout] 248 | async fn update_success(&self, rpc_name: &str, latency: u64, endpoint: &RPCEndpoint) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_endpoint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mint` [INFO] [stdout] --> src/adaptive_agent.rs:375:9 [INFO] [stdout] | [INFO] [stdout] 375 | mint: &str, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mc` [INFO] [stdout] --> src/adaptive_agent.rs:376:9 [INFO] [stdout] | [INFO] [stdout] 376 | mc: f64, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_mc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `txn` [INFO] [stdout] --> src/adaptive_agent.rs:377:9 [INFO] [stdout] | [INFO] [stdout] 377 | txn: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_txn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `combo_key` [INFO] [stdout] --> src/adaptive_agent.rs:456:14 [INFO] [stdout] | [INFO] [stdout] 456 | for (combo_key, combo) in combos.iter() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `slippage_bps` [INFO] [stdout] --> src/trader.rs:195:56 [INFO] [stdout] | [INFO] [stdout] 195 | pub async fn sell(&self, mint: &str, percent: u32, slippage_bps: u32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slippage_bps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `combo_key` [INFO] [stdout] --> src/adaptive_agent.rs:559:14 [INFO] [stdout] | [INFO] [stdout] 559 | for (combo_key, combo) in combos.iter_mut() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `profit_ratio` [INFO] [stdout] --> src/position_manager.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | let profit_ratio = current_mc / position.entry_mc; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_profit_ratio` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/predator_engine.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | let mut warnings = Vec::new(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `combo_key` [INFO] [stdout] --> src/adaptive_agent.rs:615:14 [INFO] [stdout] | [INFO] [stdout] 615 | for (combo_key, combo) in combos.iter_mut() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pnl_percent` [INFO] [stdout] --> src/adaptive_agent.rs:889:9 [INFO] [stdout] | [INFO] [stdout] 889 | pnl_percent: f64, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pnl_percent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `confidence` is never read [INFO] [stdout] --> src/market_cycle.rs:334:30 [INFO] [stdout] | [INFO] [stdout] 334 | let mut confidence = 0.5; [INFO] [stdout] | ^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 374 | confidence = 0.7; [INFO] [stdout] | ---------------- `confidence` is overwritten here before the previous value is read [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/unified_agent.rs:335:24 [INFO] [stdout] | [INFO] [stdout] 335 | if let Err(e) = agent_read.load_filters("adaptive_filters.json").await { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/unified_agent.rs:1525:13 [INFO] [stdout] | [INFO] [stdout] 1525 | let tokens = self.tokens.clone(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `was_caught` [INFO] [stdout] --> src/token_history.rs:193:9 [INFO] [stdout] | [INFO] [stdout] 193 | was_caught: bool, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_was_caught` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:97:16 [INFO] [stdout] | [INFO] [stdout] 97 | if let Err(e) = dashboard.load_pnl_history("pnl_history.json").await { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/config.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Config { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | pub priority_fee: f64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub threshold_15s: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub max_price_8s: f64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 28 | pub max_price_15s: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub auto_buy_max_txn: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | pub auto_buy_min_traders: u32, [INFO] [stdout] 34 | pub auto_buy_max_traders: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub ai_min_txn: u32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 40 | pub ai_min_traders: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 41 | pub ai_min_buy_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub elite_wallet_max_mc: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 46 | pub elite_min_buy_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 47 | pub elite_min_whale_count: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub price_jump_tolerance: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub skip_if_txn_below: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 54 | pub skip_if_buy_ratio_below: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub pumpfun_ws: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Config` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_elite_wallet` is never used [INFO] [stdout] --> src/config.rs:165:12 [INFO] [stdout] | [INFO] [stdout] 65 | impl Config { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn is_elite_wallet(&self, wallet: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHALE_THRESHOLD_SOL` is never used [INFO] [stdout] --> src/websocket.rs:30:7 [INFO] [stdout] | [INFO] [stdout] 30 | const WHALE_THRESHOLD_SOL: f64 = 3.5; // ~$500 at $140/SOL [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PumpPortalWebSocket` is never constructed [INFO] [stdout] --> src/websocket.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct PumpPortalWebSocket { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/websocket.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 60 | impl PumpPortalWebSocket { [INFO] [stdout] | ------------------------ associated items in this implementation [INFO] [stdout] 61 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub async fn run(&mut self) -> Result<()> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | async fn connect_and_listen(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | async fn handle_message( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | async fn handle_create_event( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 439 | async fn handle_trade_event(&mut self, json: &serde_json::Value, is_buy: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 647 | async fn analyze_token_8s(&mut self, mint: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 737 | async fn analyze_token_15s(&mut self, mint: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 824 | async fn analyze_token_continuous(&mut self, mint: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1125 | async fn execute_buy(&mut self, mint: &str, reason: &str, confidence: f64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1225 | async fn check_positions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1300 | async fn execute_sell(&mut self, mint: &str, percent: u32, signal: crate::exit_agent::ExitSignal) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1398 | async fn cleanup_old_tokens(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1407 | async fn print_stats(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1604 | async fn learn_from_completed_runners(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/analyzer.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Analyzer { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 10 | config: Config, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `send_via_rpc` is never used [INFO] [stdout] --> src/trader.rs:316:14 [INFO] [stdout] | [INFO] [stdout] 36 | impl SolanaTrader { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 316 | async fn send_via_rpc(&self, tx_bytes: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PositionStats` is never constructed [INFO] [stdout] --> src/position_manager.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct PositionStats { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `mark_partial_sold`, `record_progressive_sell`, and `get_stats` are never used [INFO] [stdout] --> src/position_manager.rs:166:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl PositionManager { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn mark_partial_sold(&mut self, mint: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn record_progressive_sell(&mut self, mint: &str, percent: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub fn get_stats(&self) -> PositionStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COINGECKO_SOL_URL` is never used [INFO] [stdout] --> src/price_cache.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const COINGECKO_SOL_URL: &str = "https://api.coingecko.com/api/v3/simple/price?ids=solana&vs_currencies=usd"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEXSCREENER_URL` is never used [INFO] [stdout] --> src/price_cache.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const DEXSCREENER_URL: &str = "https://api.dexscreener.com/tokens/v1/solana/"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PUMPFUN_API_URL` is never used [INFO] [stdout] --> src/price_cache.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const PUMPFUN_API_URL: &str = "https://frontend-api.pump.fun/coins/"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PriceData` is never constructed [INFO] [stdout] --> src/price_cache.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct PriceData { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HolderData` is never constructed [INFO] [stdout] --> src/price_cache.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct HolderData { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PriceCache` is never constructed [INFO] [stdout] --> src/price_cache.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct PriceCache { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/price_cache.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl PriceCache { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 58 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn update_from_trade(&mut self, mint: &str, mc_sol: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn get_price(&self, mint: &str) -> PriceData { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn get_sol_price(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn set_sol_price(&mut self, price: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn cleanup_old(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn get_holder_count(&self, mint: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub async fn fetch_holder_count(&mut self, mint: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub async fn fetch_from_dexscreener(&mut self, mint: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | pub async fn refresh_sol_price(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DexScreenerPair` is never constructed [INFO] [stdout] --> src/price_cache.rs:231:8 [INFO] [stdout] | [INFO] [stdout] 231 | struct DexScreenerPair { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DexScreenerVolume` is never constructed [INFO] [stdout] --> src/price_cache.rs:242:8 [INFO] [stdout] | [INFO] [stdout] 242 | struct DexScreenerVolume { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CoinGeckoResponse` is never constructed [INFO] [stdout] --> src/price_cache.rs:249:8 [INFO] [stdout] | [INFO] [stdout] 249 | struct CoinGeckoResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SolanaPrice` is never constructed [INFO] [stdout] --> src/price_cache.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | struct SolanaPrice { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PumpFunCoinResponse` is never constructed [INFO] [stdout] --> src/price_cache.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | struct PumpFunCoinResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Features10s` is never constructed [INFO] [stdout] --> src/ai_predictor.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Features10s { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_token_state` and `to_array` are never used [INFO] [stdout] --> src/ai_predictor.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Features10s { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 28 | pub fn from_token_state(state: &TokenState) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn to_array(&self) -> [f32; 6] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TradeEvent` is never constructed [INFO] [stdout] --> src/types.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct TradeEvent { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CreateEvent` is never constructed [INFO] [stdout] --> src/types.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct CreateEvent { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `first_trade_at`, `analysis_8s_done`, and `analysis_15s_done` are never read [INFO] [stdout] --> src/types.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct TokenState { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 56 | pub first_trade_at: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub analysis_8s_done: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 89 | pub analysis_15s_done: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenState` 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 `update_peak` is never used [INFO] [stdout] --> src/types.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 92 | impl TokenState { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn update_peak(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `timestamp` and `is_elite` are never read [INFO] [stdout] --> src/types.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 203 | pub struct WhaleBuy { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 206 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 207 | pub is_elite: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WhaleBuy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Wait` is never constructed [INFO] [stdout] --> src/types.rs:262:5 [INFO] [stdout] | [INFO] [stdout] 259 | pub enum TradingDecision { [INFO] [stdout] | --------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 262 | Wait, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TradingDecision` 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 `supports_jito` is never read [INFO] [stdout] --> src/turbo_trader.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct RPCEndpoint { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | pub supports_jito: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RPCEndpoint` 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 `get_stats` and `get_leaderboard` are never used [INFO] [stdout] --> src/turbo_trader.rs:280:18 [INFO] [stdout] | [INFO] [stdout] 84 | impl TurboTrader { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 280 | pub async fn get_stats(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | pub async fn get_leaderboard(&self) -> Vec<(String, u64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `signal_type`, `priority`, `filters_passed`, `filters_failed`, and `warnings` are never read [INFO] [stdout] --> src/predator_engine.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct EntryDecision { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub signal_type: SignalType, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 20 | pub priority: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 21 | pub filters_passed: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 22 | pub filters_failed: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 23 | pub warnings: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EntryDecision` 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 `ExitDecision` is never constructed [INFO] [stdout] --> src/predator_engine.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct ExitDecision { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExitType` is never used [INFO] [stdout] --> src/predator_engine.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | pub enum ExitType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Urgency` is never used [INFO] [stdout] --> src/predator_engine.rs:56:10 [INFO] [stdout] | [INFO] [stdout] 56 | pub enum Urgency { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `mint`, `symbol`, and `elite_wallets` are never read [INFO] [stdout] --> src/predator_engine.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct TokenSnapshot { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 65 | pub mint: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 66 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub elite_wallets: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenSnapshot` 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 `whale_min_amount_sol` and `coordinated_buying_window_ms` are never read [INFO] [stdout] --> src/predator_engine.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct PredatorConfig { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 86 | pub whale_min_amount_sol: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 87 | pub consecutive_whale_count: u32, [INFO] [stdout] 88 | pub coordinated_buying_window_ms: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_elite_wallet`, `analyze_exit`, and `get_stats` are never used [INFO] [stdout] --> src/predator_engine.rs:150:12 [INFO] [stdout] | [INFO] [stdout] 135 | impl PredatorEngine { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn add_elite_wallet(&mut self, wallet: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn analyze_exit( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 422 | pub fn get_stats(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `dead_threshold_secs` is never read [INFO] [stdout] --> src/runner_tracker.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 134 | pub struct TrackerConfig { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 139 | pub dead_threshold_secs: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrackerConfig` 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 `save_to_file`, `get_summary`, `get_missed_runners`, and `get_all_runners` are never used [INFO] [stdout] --> src/runner_tracker.rs:411:18 [INFO] [stdout] | [INFO] [stdout] 163 | impl RunnerTracker { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 411 | pub async fn save_to_file(&self, filename: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 420 | pub async fn get_summary(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 438 | pub async fn get_missed_runners(&self) -> Vec<(String, String, f64, String, String, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 463 | pub async fn get_all_runners(&self) -> Vec<(String, String, f64, bool, String, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Volatile` is never constructed [INFO] [stdout] --> src/adaptive_agent.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub enum MarketMode { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 45 | Volatile, // Unpredictable, be cautious [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketMode` 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 `confidence`, `reasoning`, and `adjusted_threshold` are never read [INFO] [stdout] --> src/adaptive_agent.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct AgentDecision { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 51 | pub should_buy: bool, [INFO] [stdout] 52 | pub confidence: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 53 | pub reasoning: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub adjusted_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AgentDecision` 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 `min_pattern_observations` is never read [INFO] [stdout] --> src/adaptive_agent.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct AgentConfig { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 105 | pub min_pattern_observations: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AgentConfig` 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 `recent_patterns` is never read [INFO] [stdout] --> src/adaptive_agent.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 199 | struct MarketMemory { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 203 | recent_patterns: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketMemory` 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 methods are never used [INFO] [stdout] --> src/adaptive_agent.rs:655:18 [INFO] [stdout] | [INFO] [stdout] 216 | impl AdaptiveAgent { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 655 | pub async fn observe_token(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 661 | pub async fn get_stats(&self) -> AgentStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 667 | pub async fn get_pattern_scores(&self) -> Vec<(String, f64, f64, Trend)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 678 | pub async fn get_combo_scores(&self) -> Vec<(String, f64, f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 690 | pub async fn get_market_mode(&self) -> MarketMode { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 779 | pub async fn get_filters(&self) -> AdaptiveFilters { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 927 | pub async fn get_optimal_stop_loss(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calculate_reputation`, and `classify_wallet` are never used [INFO] [stdout] --> src/wallet_reputation.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 71 | impl WalletReputation { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 72 | fn new(address: String, is_elite: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | fn calculate_reputation(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | fn classify_wallet(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `auto_buy_threshold`, `block_threshold`, `min_trades_for_trust`, and `max_recent_trades` are never read [INFO] [stdout] --> src/wallet_reputation.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 167 | pub struct ReputationConfig { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 168 | /// Auto-buy threshold (wallets with score above this trigger auto-buy) [INFO] [stdout] 169 | pub auto_buy_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub block_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub min_trades_for_trust: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub max_recent_trades: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReputationConfig` 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 `config` and `elite_wallets` are never read [INFO] [stdout] --> src/wallet_reputation.rs:198:5 [INFO] [stdout] | [INFO] [stdout] 193 | pub struct WalletReputationTracker { [INFO] [stdout] | ----------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 198 | config: ReputationConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | elite_wallets: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `record_buy`, `record_outcome`, `should_auto_buy`, `should_block`, `get_top_wallets`, and `get_stats` are never used [INFO] [stdout] --> src/wallet_reputation.rs:220:18 [INFO] [stdout] | [INFO] [stdout] 204 | impl WalletReputationTracker { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 220 | pub async fn record_buy( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 255 | pub async fn record_outcome( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub async fn should_auto_buy(&self, wallet: &str) -> (bool, f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | pub async fn should_block(&self, wallet: &str) -> (bool, String) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | pub async fn get_top_wallets(&self, limit: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 365 | pub async fn get_stats(&self) -> ReputationStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReputationStats` is never constructed [INFO] [stdout] --> src/wallet_reputation.rs:408:12 [INFO] [stdout] | [INFO] [stdout] 408 | pub struct ReputationStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExitSignal` is never used [INFO] [stdout] --> src/exit_agent.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum ExitSignal { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_reason`, `expected_peak`, and `optimal_hold_time` are never used [INFO] [stdout] --> src/exit_agent.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl EntryPattern { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 40 | pub fn from_reason(reason: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn expected_peak(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn optimal_hold_time(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExitDecision` is never constructed [INFO] [stdout] --> src/exit_agent.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 83 | pub struct ExitDecision { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `velocity_drop_threshold`, `volume_spike_threshold`, `min_partial_profit`, and `peak_lookback` are never read [INFO] [stdout] --> src/exit_agent.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct ExitAgentConfig { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 112 | /// Velocity drop threshold (% drop from peak) [INFO] [stdout] 113 | pub velocity_drop_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub volume_spike_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub min_partial_profit: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub peak_lookback: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExitAgentConfig` 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: multiple fields are never read [INFO] [stdout] --> src/exit_agent.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 138 | pub struct PositionExit { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 139 | pub mint: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 140 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 141 | pub entry_mc: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 142 | pub entry_pattern: EntryPattern, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 143 | pub entry_time: DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub current_mc: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 147 | pub peak_mc: f64, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 148 | pub current_multiplier: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub recent_velocities: Vec<(DateTime, f64)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 152 | pub peak_velocity: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub recent_volumes: Vec<(DateTime, f64)>, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 156 | pub avg_volume: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub partial_sold: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 160 | pub partial_exit_mc: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PositionExit` 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 `positions`, `exit_history`, `config`, and `learned_peaks` are never read [INFO] [stdout] --> src/exit_agent.rs:166:5 [INFO] [stdout] | [INFO] [stdout] 164 | pub struct ExitAgent { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 165 | /// Tracked positions [INFO] [stdout] 166 | positions: Arc>>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | exit_history: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | config: ExitAgentConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | learned_peaks: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/exit_agent.rs:195:18 [INFO] [stdout] | [INFO] [stdout] 178 | impl ExitAgent { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 195 | pub async fn track_position( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub async fn update_position( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 265 | pub async fn analyze_exit(&self, mint: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 369 | pub async fn record_exit( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 414 | async fn learn_from_exit(&self, record: &ExitRecord) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 441 | pub async fn get_stats(&self) -> ExitStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 462 | pub async fn mark_partial_sold(&self, mint: &str, exit_mc: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExitStats` is never constructed [INFO] [stdout] --> src/exit_agent.rs:472:12 [INFO] [stdout] | [INFO] [stdout] 472 | pub struct ExitStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_u8` is never used [INFO] [stdout] --> src/entry_timing.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl UrgencyLevel { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn as_u8(&self) -> u8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `urgency`, `confidence`, `optimal_time_range`, `current_age`, `reasoning`, and `time_score` are never read [INFO] [stdout] --> src/entry_timing.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct EntryWindow { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 66 | pub should_enter: bool, [INFO] [stdout] 67 | pub urgency: UrgencyLevel, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 68 | pub confidence: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 69 | pub optimal_time_range: (f64, f64), // (min_seconds, max_seconds) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 70 | pub current_age: f64, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 71 | pub reasoning: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 72 | pub time_score: f64, // How good is the timing (0-1) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EntryWindow` 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 `mint` is never read [INFO] [stdout] --> src/entry_timing.rs:78:5 [INFO] [stdout] | [INFO] [stdout] 77 | struct TokenEntry { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 78 | mint: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenEntry` 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: multiple fields are never read [INFO] [stdout] --> src/entry_timing.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 96 | struct EntrySnapshot { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 97 | age_seconds: f64, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 98 | confidence: f64, [INFO] [stdout] 99 | urgency: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 100 | patterns_present: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 101 | whale_count: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 102 | elite_count: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 103 | velocity: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 104 | timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EntrySnapshot` 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 `get_stats` and `cleanup` are never used [INFO] [stdout] --> src/entry_timing.rs:473:18 [INFO] [stdout] | [INFO] [stdout] 146 | impl EntryTimingAnalyzer { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 473 | pub async fn get_stats(&self) -> EntryStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 495 | pub async fn cleanup(&self, max_age_seconds: i64) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EntryStats` is never constructed [INFO] [stdout] --> src/entry_timing.rs:503:12 [INFO] [stdout] | [INFO] [stdout] 503 | pub struct EntryStats { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `buy_strategy`, `sell_strategy`, and `threshold_multiplier` are never used [INFO] [stdout] --> src/market_cycle.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl CyclePhase { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 26 | /// Get buying strategy for this phase [INFO] [stdout] 27 | pub fn buy_strategy(&self) -> BuyStrategy { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn sell_strategy(&self) -> SellStrategy { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn threshold_multiplier(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BuyStrategy` is never used [INFO] [stdout] --> src/market_cycle.rs:58:10 [INFO] [stdout] | [INFO] [stdout] 58 | pub enum BuyStrategy { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `SellStrategy` is never used [INFO] [stdout] --> src/market_cycle.rs:67:10 [INFO] [stdout] | [INFO] [stdout] 67 | pub enum SellStrategy { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CycleAnalysis` is never constructed [INFO] [stdout] --> src/market_cycle.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct CycleAnalysis { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/market_cycle.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 86 | struct MarketDataPoint { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 87 | timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 88 | price_mc: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 89 | volume: f64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 90 | whale_buys: u32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 91 | whale_sells: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 92 | retail_buys: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 93 | retail_sells: u32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 94 | velocity: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketDataPoint` 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 `data_points`, `current_phase`, `phase_started_at`, and `config` are never read [INFO] [stdout] --> src/market_cycle.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 98 | pub struct MarketCycleDetector { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 99 | /// Recent market data (rolling window) [INFO] [stdout] 100 | data_points: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | current_phase: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | phase_started_at: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | config: CycleConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `min_data_points`, `distribution_volume_mult`, and `distribution_whale_sell_ratio` are never read [INFO] [stdout] --> src/market_cycle.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 113 | pub struct CycleConfig { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 118 | pub min_data_points: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub distribution_volume_mult: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub distribution_whale_sell_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CycleConfig` 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: multiple methods are never used [INFO] [stdout] --> src/market_cycle.rs:155:18 [INFO] [stdout] | [INFO] [stdout] 138 | impl MarketCycleDetector { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 155 | pub async fn add_data_point( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub async fn detect_phase(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 237 | fn calculate_price_trend(&self, points: &[&MarketDataPoint]) -> PriceTrend { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | fn calculate_volume_trend(&self, points: &[&MarketDataPoint]) -> VolumeTrend { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 286 | fn calculate_whale_behavior(&self, points: &[&MarketDataPoint]) -> WhaleBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 306 | fn calculate_retail_behavior(&self, points: &[&MarketDataPoint]) -> RetailBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | fn identify_phase( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub async fn get_current_phase(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PriceTrend` is never used [INFO] [stdout] --> src/market_cycle.rs:403:6 [INFO] [stdout] | [INFO] [stdout] 403 | enum PriceTrend { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `VolumeTrend` is never used [INFO] [stdout] --> src/market_cycle.rs:412:6 [INFO] [stdout] | [INFO] [stdout] 412 | enum VolumeTrend { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `WhaleBehavior` is never used [INFO] [stdout] --> src/market_cycle.rs:420:6 [INFO] [stdout] | [INFO] [stdout] 420 | enum WhaleBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RetailBehavior` is never used [INFO] [stdout] --> src/market_cycle.rs:427:6 [INFO] [stdout] | [INFO] [stdout] 427 | enum RetailBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `update_data` is never used [INFO] [stdout] --> src/dashboard.rs:174:18 [INFO] [stdout] | [INFO] [stdout] 167 | impl DashboardState { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 174 | pub async fn update_data(&self, data: DashboardData) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CausalAnalysis` is never constructed [INFO] [stdout] --> src/brain.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct CausalAnalysis { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `observe_trade`, and `predict_buy` are never used [INFO] [stdout] --> src/brain.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 70 | impl WalletProfile { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 71 | pub fn new(address: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn observe_trade(&mut self, entry_time: f64, mc: f64, outcome: bool, multiplier: f64, narrative: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn predict_buy(&self, mc: f64, narrative: &str, age: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `causal_patterns` is never read [INFO] [stdout] --> src/brain.rs:212:5 [INFO] [stdout] | [INFO] [stdout] 204 | pub struct Brain { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 212 | causal_patterns: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `analyze_causality`, `observe_wallet`, `predict_wallet_buy`, `reflect`, `get_wallet_profiles`, and `get_reflections` are never used [INFO] [stdout] --> src/brain.rs:225:18 [INFO] [stdout] | [INFO] [stdout] 215 | impl Brain { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 225 | pub async fn analyze_causality( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | pub async fn observe_wallet(&self, address: &str, entry_time: f64, mc: f64, outcome: bool, multiplier: f64, narrative: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 335 | pub async fn predict_wallet_buy(&self, address: &str, mc: f64, narrative: &str, age: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub async fn reflect( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 409 | pub async fn get_wallet_profiles(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 415 | pub async fn get_reflections(&self, limit: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `market_detector` and `exit_agent` are never read [INFO] [stdout] --> src/unified_agent.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct UnifiedAgent { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 77 | market_detector: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | exit_agent: Arc>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_stats` is never used [INFO] [stdout] --> src/unified_agent.rs:1899:18 [INFO] [stdout] | [INFO] [stdout] 303 | impl UnifiedAgent { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1899 | pub async fn get_stats(&self) -> UnifiedStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/websocket.rs:534:21 [INFO] [stdout] | [INFO] [stdout] 534 | drop(token_state); [INFO] [stdout] | ^^^^^-----------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut TokenState` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 534 - drop(token_state); [INFO] [stdout] 534 + let _ = token_state; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/websocket.rs:561:17 [INFO] [stdout] | [INFO] [stdout] 561 | drop(token_state); // Drop mutable borrow before execute_buy [INFO] [stdout] | ^^^^^-----------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut TokenState` [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 561 - drop(token_state); // Drop mutable borrow before execute_buy [INFO] [stdout] 561 + let _ = token_state; // Drop mutable borrow before execute_buy [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `traderPublicKey` should have a snake case name [INFO] [stdout] --> src/types.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | pub traderPublicKey: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `trader_public_key` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `bondingCurveKey` should have a snake case name [INFO] [stdout] --> src/types.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub bondingCurveKey: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `bonding_curve_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `vTokensInBondingCurve` should have a snake case name [INFO] [stdout] --> src/types.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub vTokensInBondingCurve: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `v_tokens_in_bonding_curve` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `vSolInBondingCurve` should have a snake case name [INFO] [stdout] --> src/types.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub vSolInBondingCurve: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `v_sol_in_bonding_curve` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `marketCapSol` should have a snake case name [INFO] [stdout] --> src/types.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | pub marketCapSol: Option, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `market_cap_sol` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `initialBuy` should have a snake case name [INFO] [stdout] --> src/types.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | pub initialBuy: Option, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `initial_buy` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8m 35s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: solana-client v1.18.26 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "f35d1b6d1e87f336cec6030f3149f1df0b9c5343c47ffd4fd7e3eef482fae21e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f35d1b6d1e87f336cec6030f3149f1df0b9c5343c47ffd4fd7e3eef482fae21e", kill_on_drop: false }` [INFO] [stdout] f35d1b6d1e87f336cec6030f3149f1df0b9c5343c47ffd4fd7e3eef482fae21e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 91d332a52e61b60e7e21a698fb98bb800ff6b857de838a19b06e854cf35bbe53 [INFO] running `Command { std: "docker" "start" "-a" "91d332a52e61b60e7e21a698fb98bb800ff6b857de838a19b06e854cf35bbe53", kill_on_drop: false }` [INFO] [stderr] Compiling buddy_bot v1.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/config.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | use anyhow::{Result, Context}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CreateEvent`, `TradeEvent`, and `TradingDecision` [INFO] [stdout] --> src/websocket.rs:15:20 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::types::{TradeEvent, CreateEvent, TokenState, WhaleBuy, TradingDecision}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SignalType` [INFO] [stdout] --> src/analyzer.rs:7:61 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::predator_engine::{PredatorEngine, TokenSnapshot, SignalType}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signer` [INFO] [stdout] --> src/trader.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | signature::{Keypair, Signer}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error` [INFO] [stdout] --> src/trader.rs:11:27 [INFO] [stdout] | [INFO] [stdout] 11 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DateTime` and `Duration` [INFO] [stdout] --> src/position_manager.rs:4:14 [INFO] [stdout] | [INFO] [stdout] 4 | use chrono::{DateTime, Utc, Duration}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/position_manager.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::RwLock` [INFO] [stdout] --> src/price_cache.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use tokio::sync::RwLock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/price_cache.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | #[cfg(feature = "ai")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:48:7 [INFO] [stdout] | [INFO] [stdout] 48 | #[cfg(feature = "ai")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:53:7 [INFO] [stdout] | [INFO] [stdout] 53 | #[cfg(feature = "ai")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:102:11 [INFO] [stdout] | [INFO] [stdout] 102 | #[cfg(not(feature = "ai"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `ai` [INFO] [stdout] --> src/ai_predictor.rs:105:11 [INFO] [stdout] | [INFO] [stdout] 105 | #[cfg(not(feature = "ai"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default` [INFO] [stdout] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug` and `warn` [INFO] [stdout] --> src/turbo_trader.rs:17:21 [INFO] [stdout] | [INFO] [stdout] 17 | use tracing::{info, warn, error, debug}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/turbo_trader.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | (stats.successful_txs as f64 / stats.total_txs as f64 * 100.0) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 289 - (stats.successful_txs as f64 / stats.total_txs as f64 * 100.0) [INFO] [stdout] 289 + stats.successful_txs as f64 / stats.total_txs as f64 * 100.0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/predator_engine.rs:11:28 [INFO] [stdout] | [INFO] [stdout] 11 | use tracing::{info, debug, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/runner_tracker.rs:11:17 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/runner_tracker.rs:12:24 [INFO] [stdout] | [INFO] [stdout] 12 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug` and `warn` [INFO] [stdout] --> src/wallet_reputation.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | use tracing::{info, debug, warn}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/wallet_reputation.rs:14:29 [INFO] [stdout] | [INFO] [stdout] 14 | use chrono::{DateTime, Utc, Duration}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/exit_agent.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | use tracing::{info, debug, warn}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/entry_timing.rs:12:24 [INFO] [stdout] | [INFO] [stdout] 12 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/entry_timing.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | use tracing::{info, debug}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/market_cycle.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | use tracing::{info, debug}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HeaderValue` [INFO] [stdout] --> src/dashboard.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | http::{header, Method, HeaderValue}, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::VecDeque` [INFO] [stdout] --> src/dashboard.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::collections::VecDeque; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/brain.rs:14:21 [INFO] [stdout] | [INFO] [stdout] 14 | use tracing::{info, debug}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DashboardData` [INFO] [stdout] --> src/unified_agent.rs:31:40 [INFO] [stdout] | [INFO] [stdout] 31 | use crate::dashboard::{DashboardState, DashboardData, TokenEvent, RunnerInfo}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AgentDecision` [INFO] [stdout] --> src/unified_agent.rs:32:44 [INFO] [stdout] | [INFO] [stdout] 32 | use crate::adaptive_agent::{AdaptiveAgent, AgentDecision}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/token_history.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::RwLock` [INFO] [stdout] --> src/token_history.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use tokio::sync::RwLock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error`, `info`, and `warn` [INFO] [stdout] --> src/main.rs:29:15 [INFO] [stdout] | [INFO] [stdout] 29 | use tracing::{info, warn, error, Level}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `analysis_done` [INFO] [stdout] --> src/websocket.rs:549:21 [INFO] [stdout] | [INFO] [stdout] 549 | let analysis_done = token_state.analysis_8s_done; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_analysis_done` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mc` [INFO] [stdout] --> src/brain.rs:231:9 [INFO] [stdout] | [INFO] [stdout] 231 | mc: f64, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_mc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `endpoint` [INFO] [stdout] --> src/turbo_trader.rs:248:66 [INFO] [stdout] | [INFO] [stdout] 248 | async fn update_success(&self, rpc_name: &str, latency: u64, endpoint: &RPCEndpoint) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_endpoint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mint` [INFO] [stdout] --> src/adaptive_agent.rs:375:9 [INFO] [stdout] | [INFO] [stdout] 375 | mint: &str, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mc` [INFO] [stdout] --> src/adaptive_agent.rs:376:9 [INFO] [stdout] | [INFO] [stdout] 376 | mc: f64, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_mc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `txn` [INFO] [stdout] --> src/adaptive_agent.rs:377:9 [INFO] [stdout] | [INFO] [stdout] 377 | txn: u32, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_txn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `combo_key` [INFO] [stdout] --> src/adaptive_agent.rs:456:14 [INFO] [stdout] | [INFO] [stdout] 456 | for (combo_key, combo) in combos.iter() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `slippage_bps` [INFO] [stdout] --> src/trader.rs:195:56 [INFO] [stdout] | [INFO] [stdout] 195 | pub async fn sell(&self, mint: &str, percent: u32, slippage_bps: u32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slippage_bps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `combo_key` [INFO] [stdout] --> src/adaptive_agent.rs:559:14 [INFO] [stdout] | [INFO] [stdout] 559 | for (combo_key, combo) in combos.iter_mut() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `profit_ratio` [INFO] [stdout] --> src/position_manager.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | let profit_ratio = current_mc / position.entry_mc; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_profit_ratio` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/predator_engine.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | let mut warnings = Vec::new(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `combo_key` [INFO] [stdout] --> src/adaptive_agent.rs:615:14 [INFO] [stdout] | [INFO] [stdout] 615 | for (combo_key, combo) in combos.iter_mut() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pnl_percent` [INFO] [stdout] --> src/adaptive_agent.rs:889:9 [INFO] [stdout] | [INFO] [stdout] 889 | pnl_percent: f64, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pnl_percent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `confidence` is never read [INFO] [stdout] --> src/market_cycle.rs:334:30 [INFO] [stdout] | [INFO] [stdout] 334 | let mut confidence = 0.5; [INFO] [stdout] | ^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 374 | confidence = 0.7; [INFO] [stdout] | ---------------- `confidence` is overwritten here before the previous value is read [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/unified_agent.rs:335:24 [INFO] [stdout] | [INFO] [stdout] 335 | if let Err(e) = agent_read.load_filters("adaptive_filters.json").await { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/unified_agent.rs:1525:13 [INFO] [stdout] | [INFO] [stdout] 1525 | let tokens = self.tokens.clone(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `was_caught` [INFO] [stdout] --> src/token_history.rs:193:9 [INFO] [stdout] | [INFO] [stdout] 193 | was_caught: bool, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_was_caught` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:97:16 [INFO] [stdout] | [INFO] [stdout] 97 | if let Err(e) = dashboard.load_pnl_history("pnl_history.json").await { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/config.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Config { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | pub priority_fee: f64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub threshold_15s: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub max_price_8s: f64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 28 | pub max_price_15s: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub auto_buy_max_txn: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | pub auto_buy_min_traders: u32, [INFO] [stdout] 34 | pub auto_buy_max_traders: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub ai_min_txn: u32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 40 | pub ai_min_traders: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 41 | pub ai_min_buy_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub elite_wallet_max_mc: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 46 | pub elite_min_buy_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 47 | pub elite_min_whale_count: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub price_jump_tolerance: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub skip_if_txn_below: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 54 | pub skip_if_buy_ratio_below: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub pumpfun_ws: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Config` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_elite_wallet` is never used [INFO] [stdout] --> src/config.rs:165:12 [INFO] [stdout] | [INFO] [stdout] 65 | impl Config { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn is_elite_wallet(&self, wallet: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHALE_THRESHOLD_SOL` is never used [INFO] [stdout] --> src/websocket.rs:30:7 [INFO] [stdout] | [INFO] [stdout] 30 | const WHALE_THRESHOLD_SOL: f64 = 3.5; // ~$500 at $140/SOL [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PumpPortalWebSocket` is never constructed [INFO] [stdout] --> src/websocket.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct PumpPortalWebSocket { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/websocket.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 60 | impl PumpPortalWebSocket { [INFO] [stdout] | ------------------------ associated items in this implementation [INFO] [stdout] 61 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub async fn run(&mut self) -> Result<()> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | async fn connect_and_listen(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | async fn handle_message( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | async fn handle_create_event( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 439 | async fn handle_trade_event(&mut self, json: &serde_json::Value, is_buy: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 647 | async fn analyze_token_8s(&mut self, mint: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 737 | async fn analyze_token_15s(&mut self, mint: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 824 | async fn analyze_token_continuous(&mut self, mint: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1125 | async fn execute_buy(&mut self, mint: &str, reason: &str, confidence: f64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1225 | async fn check_positions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1300 | async fn execute_sell(&mut self, mint: &str, percent: u32, signal: crate::exit_agent::ExitSignal) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1398 | async fn cleanup_old_tokens(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1407 | async fn print_stats(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1604 | async fn learn_from_completed_runners(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/analyzer.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Analyzer { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 10 | config: Config, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `send_via_rpc` is never used [INFO] [stdout] --> src/trader.rs:316:14 [INFO] [stdout] | [INFO] [stdout] 36 | impl SolanaTrader { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 316 | async fn send_via_rpc(&self, tx_bytes: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PositionStats` is never constructed [INFO] [stdout] --> src/position_manager.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct PositionStats { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `mark_partial_sold`, `record_progressive_sell`, and `get_stats` are never used [INFO] [stdout] --> src/position_manager.rs:166:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl PositionManager { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn mark_partial_sold(&mut self, mint: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn record_progressive_sell(&mut self, mint: &str, percent: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub fn get_stats(&self) -> PositionStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COINGECKO_SOL_URL` is never used [INFO] [stdout] --> src/price_cache.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const COINGECKO_SOL_URL: &str = "https://api.coingecko.com/api/v3/simple/price?ids=solana&vs_currencies=usd"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEXSCREENER_URL` is never used [INFO] [stdout] --> src/price_cache.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const DEXSCREENER_URL: &str = "https://api.dexscreener.com/tokens/v1/solana/"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PUMPFUN_API_URL` is never used [INFO] [stdout] --> src/price_cache.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const PUMPFUN_API_URL: &str = "https://frontend-api.pump.fun/coins/"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PriceData` is never constructed [INFO] [stdout] --> src/price_cache.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct PriceData { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HolderData` is never constructed [INFO] [stdout] --> src/price_cache.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct HolderData { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PriceCache` is never constructed [INFO] [stdout] --> src/price_cache.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct PriceCache { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/price_cache.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl PriceCache { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 58 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn update_from_trade(&mut self, mint: &str, mc_sol: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn get_price(&self, mint: &str) -> PriceData { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn get_sol_price(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn set_sol_price(&mut self, price: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn cleanup_old(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn get_holder_count(&self, mint: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub async fn fetch_holder_count(&mut self, mint: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub async fn fetch_from_dexscreener(&mut self, mint: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | pub async fn refresh_sol_price(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DexScreenerPair` is never constructed [INFO] [stdout] --> src/price_cache.rs:231:8 [INFO] [stdout] | [INFO] [stdout] 231 | struct DexScreenerPair { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DexScreenerVolume` is never constructed [INFO] [stdout] --> src/price_cache.rs:242:8 [INFO] [stdout] | [INFO] [stdout] 242 | struct DexScreenerVolume { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CoinGeckoResponse` is never constructed [INFO] [stdout] --> src/price_cache.rs:249:8 [INFO] [stdout] | [INFO] [stdout] 249 | struct CoinGeckoResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SolanaPrice` is never constructed [INFO] [stdout] --> src/price_cache.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | struct SolanaPrice { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PumpFunCoinResponse` is never constructed [INFO] [stdout] --> src/price_cache.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | struct PumpFunCoinResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Features10s` is never constructed [INFO] [stdout] --> src/ai_predictor.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Features10s { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_token_state` and `to_array` are never used [INFO] [stdout] --> src/ai_predictor.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Features10s { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 28 | pub fn from_token_state(state: &TokenState) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn to_array(&self) -> [f32; 6] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TradeEvent` is never constructed [INFO] [stdout] --> src/types.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct TradeEvent { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CreateEvent` is never constructed [INFO] [stdout] --> src/types.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct CreateEvent { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `first_trade_at`, `analysis_8s_done`, and `analysis_15s_done` are never read [INFO] [stdout] --> src/types.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct TokenState { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 56 | pub first_trade_at: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub analysis_8s_done: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 89 | pub analysis_15s_done: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenState` 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 `update_peak` is never used [INFO] [stdout] --> src/types.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 92 | impl TokenState { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn update_peak(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `timestamp` and `is_elite` are never read [INFO] [stdout] --> src/types.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 203 | pub struct WhaleBuy { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 206 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 207 | pub is_elite: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WhaleBuy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Wait` is never constructed [INFO] [stdout] --> src/types.rs:262:5 [INFO] [stdout] | [INFO] [stdout] 259 | pub enum TradingDecision { [INFO] [stdout] | --------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 262 | Wait, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TradingDecision` 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 `supports_jito` is never read [INFO] [stdout] --> src/turbo_trader.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct RPCEndpoint { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | pub supports_jito: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RPCEndpoint` 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 `get_stats` and `get_leaderboard` are never used [INFO] [stdout] --> src/turbo_trader.rs:280:18 [INFO] [stdout] | [INFO] [stdout] 84 | impl TurboTrader { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 280 | pub async fn get_stats(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | pub async fn get_leaderboard(&self) -> Vec<(String, u64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `signal_type`, `priority`, `filters_passed`, `filters_failed`, and `warnings` are never read [INFO] [stdout] --> src/predator_engine.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct EntryDecision { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub signal_type: SignalType, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 20 | pub priority: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 21 | pub filters_passed: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 22 | pub filters_failed: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 23 | pub warnings: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EntryDecision` 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 `ExitDecision` is never constructed [INFO] [stdout] --> src/predator_engine.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct ExitDecision { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExitType` is never used [INFO] [stdout] --> src/predator_engine.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | pub enum ExitType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Urgency` is never used [INFO] [stdout] --> src/predator_engine.rs:56:10 [INFO] [stdout] | [INFO] [stdout] 56 | pub enum Urgency { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `mint`, `symbol`, and `elite_wallets` are never read [INFO] [stdout] --> src/predator_engine.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct TokenSnapshot { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 65 | pub mint: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 66 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub elite_wallets: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenSnapshot` 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 `whale_min_amount_sol` and `coordinated_buying_window_ms` are never read [INFO] [stdout] --> src/predator_engine.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct PredatorConfig { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 86 | pub whale_min_amount_sol: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 87 | pub consecutive_whale_count: u32, [INFO] [stdout] 88 | pub coordinated_buying_window_ms: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_elite_wallet`, `analyze_exit`, and `get_stats` are never used [INFO] [stdout] --> src/predator_engine.rs:150:12 [INFO] [stdout] | [INFO] [stdout] 135 | impl PredatorEngine { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn add_elite_wallet(&mut self, wallet: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn analyze_exit( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 422 | pub fn get_stats(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `dead_threshold_secs` is never read [INFO] [stdout] --> src/runner_tracker.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 134 | pub struct TrackerConfig { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 139 | pub dead_threshold_secs: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrackerConfig` 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 `save_to_file`, `get_summary`, `get_missed_runners`, and `get_all_runners` are never used [INFO] [stdout] --> src/runner_tracker.rs:411:18 [INFO] [stdout] | [INFO] [stdout] 163 | impl RunnerTracker { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 411 | pub async fn save_to_file(&self, filename: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 420 | pub async fn get_summary(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 438 | pub async fn get_missed_runners(&self) -> Vec<(String, String, f64, String, String, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 463 | pub async fn get_all_runners(&self) -> Vec<(String, String, f64, bool, String, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Volatile` is never constructed [INFO] [stdout] --> src/adaptive_agent.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub enum MarketMode { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 45 | Volatile, // Unpredictable, be cautious [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketMode` 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 `confidence`, `reasoning`, and `adjusted_threshold` are never read [INFO] [stdout] --> src/adaptive_agent.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct AgentDecision { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 51 | pub should_buy: bool, [INFO] [stdout] 52 | pub confidence: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 53 | pub reasoning: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub adjusted_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AgentDecision` 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 `min_pattern_observations` is never read [INFO] [stdout] --> src/adaptive_agent.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct AgentConfig { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 105 | pub min_pattern_observations: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AgentConfig` 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 `recent_patterns` is never read [INFO] [stdout] --> src/adaptive_agent.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 199 | struct MarketMemory { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 203 | recent_patterns: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketMemory` 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 methods are never used [INFO] [stdout] --> src/adaptive_agent.rs:655:18 [INFO] [stdout] | [INFO] [stdout] 216 | impl AdaptiveAgent { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 655 | pub async fn observe_token(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 661 | pub async fn get_stats(&self) -> AgentStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 667 | pub async fn get_pattern_scores(&self) -> Vec<(String, f64, f64, Trend)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 678 | pub async fn get_combo_scores(&self) -> Vec<(String, f64, f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 690 | pub async fn get_market_mode(&self) -> MarketMode { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 779 | pub async fn get_filters(&self) -> AdaptiveFilters { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 927 | pub async fn get_optimal_stop_loss(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calculate_reputation`, and `classify_wallet` are never used [INFO] [stdout] --> src/wallet_reputation.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 71 | impl WalletReputation { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 72 | fn new(address: String, is_elite: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | fn calculate_reputation(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | fn classify_wallet(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `auto_buy_threshold`, `block_threshold`, `min_trades_for_trust`, and `max_recent_trades` are never read [INFO] [stdout] --> src/wallet_reputation.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 167 | pub struct ReputationConfig { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 168 | /// Auto-buy threshold (wallets with score above this trigger auto-buy) [INFO] [stdout] 169 | pub auto_buy_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub block_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub min_trades_for_trust: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub max_recent_trades: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReputationConfig` 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 `config` and `elite_wallets` are never read [INFO] [stdout] --> src/wallet_reputation.rs:198:5 [INFO] [stdout] | [INFO] [stdout] 193 | pub struct WalletReputationTracker { [INFO] [stdout] | ----------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 198 | config: ReputationConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | elite_wallets: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `record_buy`, `record_outcome`, `should_auto_buy`, `should_block`, `get_top_wallets`, and `get_stats` are never used [INFO] [stdout] --> src/wallet_reputation.rs:220:18 [INFO] [stdout] | [INFO] [stdout] 204 | impl WalletReputationTracker { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 220 | pub async fn record_buy( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 255 | pub async fn record_outcome( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub async fn should_auto_buy(&self, wallet: &str) -> (bool, f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | pub async fn should_block(&self, wallet: &str) -> (bool, String) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | pub async fn get_top_wallets(&self, limit: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 365 | pub async fn get_stats(&self) -> ReputationStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReputationStats` is never constructed [INFO] [stdout] --> src/wallet_reputation.rs:408:12 [INFO] [stdout] | [INFO] [stdout] 408 | pub struct ReputationStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExitSignal` is never used [INFO] [stdout] --> src/exit_agent.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum ExitSignal { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_reason`, `expected_peak`, and `optimal_hold_time` are never used [INFO] [stdout] --> src/exit_agent.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl EntryPattern { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 40 | pub fn from_reason(reason: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn expected_peak(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn optimal_hold_time(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExitDecision` is never constructed [INFO] [stdout] --> src/exit_agent.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 83 | pub struct ExitDecision { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `velocity_drop_threshold`, `volume_spike_threshold`, `min_partial_profit`, and `peak_lookback` are never read [INFO] [stdout] --> src/exit_agent.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct ExitAgentConfig { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 112 | /// Velocity drop threshold (% drop from peak) [INFO] [stdout] 113 | pub velocity_drop_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub volume_spike_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub min_partial_profit: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub peak_lookback: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExitAgentConfig` 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: multiple fields are never read [INFO] [stdout] --> src/exit_agent.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 138 | pub struct PositionExit { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 139 | pub mint: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 140 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 141 | pub entry_mc: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 142 | pub entry_pattern: EntryPattern, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 143 | pub entry_time: DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub current_mc: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 147 | pub peak_mc: f64, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 148 | pub current_multiplier: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub recent_velocities: Vec<(DateTime, f64)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 152 | pub peak_velocity: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub recent_volumes: Vec<(DateTime, f64)>, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 156 | pub avg_volume: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub partial_sold: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 160 | pub partial_exit_mc: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PositionExit` 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 `positions`, `exit_history`, `config`, and `learned_peaks` are never read [INFO] [stdout] --> src/exit_agent.rs:166:5 [INFO] [stdout] | [INFO] [stdout] 164 | pub struct ExitAgent { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 165 | /// Tracked positions [INFO] [stdout] 166 | positions: Arc>>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | exit_history: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | config: ExitAgentConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | learned_peaks: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/exit_agent.rs:195:18 [INFO] [stdout] | [INFO] [stdout] 178 | impl ExitAgent { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 195 | pub async fn track_position( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub async fn update_position( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 265 | pub async fn analyze_exit(&self, mint: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 369 | pub async fn record_exit( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 414 | async fn learn_from_exit(&self, record: &ExitRecord) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 441 | pub async fn get_stats(&self) -> ExitStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 462 | pub async fn mark_partial_sold(&self, mint: &str, exit_mc: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExitStats` is never constructed [INFO] [stdout] --> src/exit_agent.rs:472:12 [INFO] [stdout] | [INFO] [stdout] 472 | pub struct ExitStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_u8` is never used [INFO] [stdout] --> src/entry_timing.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl UrgencyLevel { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn as_u8(&self) -> u8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `urgency`, `confidence`, `optimal_time_range`, `current_age`, `reasoning`, and `time_score` are never read [INFO] [stdout] --> src/entry_timing.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct EntryWindow { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 66 | pub should_enter: bool, [INFO] [stdout] 67 | pub urgency: UrgencyLevel, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 68 | pub confidence: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 69 | pub optimal_time_range: (f64, f64), // (min_seconds, max_seconds) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 70 | pub current_age: f64, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 71 | pub reasoning: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 72 | pub time_score: f64, // How good is the timing (0-1) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EntryWindow` 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 `mint` is never read [INFO] [stdout] --> src/entry_timing.rs:78:5 [INFO] [stdout] | [INFO] [stdout] 77 | struct TokenEntry { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 78 | mint: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenEntry` 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: multiple fields are never read [INFO] [stdout] --> src/entry_timing.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 96 | struct EntrySnapshot { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 97 | age_seconds: f64, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 98 | confidence: f64, [INFO] [stdout] 99 | urgency: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 100 | patterns_present: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 101 | whale_count: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 102 | elite_count: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 103 | velocity: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 104 | timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EntrySnapshot` 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 `get_stats` and `cleanup` are never used [INFO] [stdout] --> src/entry_timing.rs:473:18 [INFO] [stdout] | [INFO] [stdout] 146 | impl EntryTimingAnalyzer { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 473 | pub async fn get_stats(&self) -> EntryStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 495 | pub async fn cleanup(&self, max_age_seconds: i64) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EntryStats` is never constructed [INFO] [stdout] --> src/entry_timing.rs:503:12 [INFO] [stdout] | [INFO] [stdout] 503 | pub struct EntryStats { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `buy_strategy`, `sell_strategy`, and `threshold_multiplier` are never used [INFO] [stdout] --> src/market_cycle.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl CyclePhase { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 26 | /// Get buying strategy for this phase [INFO] [stdout] 27 | pub fn buy_strategy(&self) -> BuyStrategy { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn sell_strategy(&self) -> SellStrategy { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn threshold_multiplier(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BuyStrategy` is never used [INFO] [stdout] --> src/market_cycle.rs:58:10 [INFO] [stdout] | [INFO] [stdout] 58 | pub enum BuyStrategy { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `SellStrategy` is never used [INFO] [stdout] --> src/market_cycle.rs:67:10 [INFO] [stdout] | [INFO] [stdout] 67 | pub enum SellStrategy { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CycleAnalysis` is never constructed [INFO] [stdout] --> src/market_cycle.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct CycleAnalysis { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/market_cycle.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 86 | struct MarketDataPoint { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 87 | timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 88 | price_mc: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 89 | volume: f64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 90 | whale_buys: u32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 91 | whale_sells: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 92 | retail_buys: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 93 | retail_sells: u32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 94 | velocity: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketDataPoint` 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 `data_points`, `current_phase`, `phase_started_at`, and `config` are never read [INFO] [stdout] --> src/market_cycle.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 98 | pub struct MarketCycleDetector { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 99 | /// Recent market data (rolling window) [INFO] [stdout] 100 | data_points: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | current_phase: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | phase_started_at: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | config: CycleConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `min_data_points`, `distribution_volume_mult`, and `distribution_whale_sell_ratio` are never read [INFO] [stdout] --> src/market_cycle.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 113 | pub struct CycleConfig { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 118 | pub min_data_points: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub distribution_volume_mult: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub distribution_whale_sell_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CycleConfig` 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: multiple methods are never used [INFO] [stdout] --> src/market_cycle.rs:155:18 [INFO] [stdout] | [INFO] [stdout] 138 | impl MarketCycleDetector { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 155 | pub async fn add_data_point( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub async fn detect_phase(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 237 | fn calculate_price_trend(&self, points: &[&MarketDataPoint]) -> PriceTrend { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | fn calculate_volume_trend(&self, points: &[&MarketDataPoint]) -> VolumeTrend { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 286 | fn calculate_whale_behavior(&self, points: &[&MarketDataPoint]) -> WhaleBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 306 | fn calculate_retail_behavior(&self, points: &[&MarketDataPoint]) -> RetailBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | fn identify_phase( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub async fn get_current_phase(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PriceTrend` is never used [INFO] [stdout] --> src/market_cycle.rs:403:6 [INFO] [stdout] | [INFO] [stdout] 403 | enum PriceTrend { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `VolumeTrend` is never used [INFO] [stdout] --> src/market_cycle.rs:412:6 [INFO] [stdout] | [INFO] [stdout] 412 | enum VolumeTrend { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `WhaleBehavior` is never used [INFO] [stdout] --> src/market_cycle.rs:420:6 [INFO] [stdout] | [INFO] [stdout] 420 | enum WhaleBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RetailBehavior` is never used [INFO] [stdout] --> src/market_cycle.rs:427:6 [INFO] [stdout] | [INFO] [stdout] 427 | enum RetailBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `update_data` is never used [INFO] [stdout] --> src/dashboard.rs:174:18 [INFO] [stdout] | [INFO] [stdout] 167 | impl DashboardState { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 174 | pub async fn update_data(&self, data: DashboardData) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CausalAnalysis` is never constructed [INFO] [stdout] --> src/brain.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct CausalAnalysis { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `observe_trade`, and `predict_buy` are never used [INFO] [stdout] --> src/brain.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 70 | impl WalletProfile { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 71 | pub fn new(address: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn observe_trade(&mut self, entry_time: f64, mc: f64, outcome: bool, multiplier: f64, narrative: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn predict_buy(&self, mc: f64, narrative: &str, age: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `causal_patterns` is never read [INFO] [stdout] --> src/brain.rs:212:5 [INFO] [stdout] | [INFO] [stdout] 204 | pub struct Brain { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 212 | causal_patterns: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `analyze_causality`, `observe_wallet`, `predict_wallet_buy`, `reflect`, `get_wallet_profiles`, and `get_reflections` are never used [INFO] [stdout] --> src/brain.rs:225:18 [INFO] [stdout] | [INFO] [stdout] 215 | impl Brain { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 225 | pub async fn analyze_causality( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | pub async fn observe_wallet(&self, address: &str, entry_time: f64, mc: f64, outcome: bool, multiplier: f64, narrative: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 335 | pub async fn predict_wallet_buy(&self, address: &str, mc: f64, narrative: &str, age: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub async fn reflect( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 409 | pub async fn get_wallet_profiles(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 415 | pub async fn get_reflections(&self, limit: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `market_detector` and `exit_agent` are never read [INFO] [stdout] --> src/unified_agent.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct UnifiedAgent { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 77 | market_detector: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | exit_agent: Arc>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_stats` is never used [INFO] [stdout] --> src/unified_agent.rs:1899:18 [INFO] [stdout] | [INFO] [stdout] 303 | impl UnifiedAgent { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1899 | pub async fn get_stats(&self) -> UnifiedStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/websocket.rs:534:21 [INFO] [stdout] | [INFO] [stdout] 534 | drop(token_state); [INFO] [stdout] | ^^^^^-----------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut TokenState` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 534 - drop(token_state); [INFO] [stdout] 534 + let _ = token_state; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/websocket.rs:561:17 [INFO] [stdout] | [INFO] [stdout] 561 | drop(token_state); // Drop mutable borrow before execute_buy [INFO] [stdout] | ^^^^^-----------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut TokenState` [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 561 - drop(token_state); // Drop mutable borrow before execute_buy [INFO] [stdout] 561 + let _ = token_state; // Drop mutable borrow before execute_buy [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `traderPublicKey` should have a snake case name [INFO] [stdout] --> src/types.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | pub traderPublicKey: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `trader_public_key` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `bondingCurveKey` should have a snake case name [INFO] [stdout] --> src/types.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub bondingCurveKey: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `bonding_curve_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `vTokensInBondingCurve` should have a snake case name [INFO] [stdout] --> src/types.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub vTokensInBondingCurve: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `v_tokens_in_bonding_curve` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `vSolInBondingCurve` should have a snake case name [INFO] [stdout] --> src/types.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub vSolInBondingCurve: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `v_sol_in_bonding_curve` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `marketCapSol` should have a snake case name [INFO] [stdout] --> src/types.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | pub marketCapSol: Option, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `market_cap_sol` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `initialBuy` should have a snake case name [INFO] [stdout] --> src/types.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | pub initialBuy: Option, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `initial_buy` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 12.08s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: solana-client v1.18.26 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "91d332a52e61b60e7e21a698fb98bb800ff6b857de838a19b06e854cf35bbe53", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "91d332a52e61b60e7e21a698fb98bb800ff6b857de838a19b06e854cf35bbe53", kill_on_drop: false }` [INFO] [stdout] 91d332a52e61b60e7e21a698fb98bb800ff6b857de838a19b06e854cf35bbe53 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c073b7689e2b97d06c3ecb0afb40d9419185d70d47051f5d0611b2c61074fae4 [INFO] running `Command { std: "docker" "start" "-a" "c073b7689e2b97d06c3ecb0afb40d9419185d70d47051f5d0611b2c61074fae4", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `Context` [INFO] [stderr] --> src/config.rs:3:22 [INFO] [stderr] | [INFO] [stderr] 3 | use anyhow::{Result, Context}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `CreateEvent`, `TradeEvent`, and `TradingDecision` [INFO] [stderr] --> src/websocket.rs:15:20 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::types::{TradeEvent, CreateEvent, TokenState, WhaleBuy, TradingDecision}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `SignalType` [INFO] [stderr] --> src/analyzer.rs:7:61 [INFO] [stderr] | [INFO] [stderr] 7 | use crate::predator_engine::{PredatorEngine, TokenSnapshot, SignalType}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Signer` [INFO] [stderr] --> src/trader.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | signature::{Keypair, Signer}, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `error` [INFO] [stderr] --> src/trader.rs:11:27 [INFO] [stderr] | [INFO] [stderr] 11 | use tracing::{info, warn, error}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DateTime` and `Duration` [INFO] [stderr] --> src/position_manager.rs:4:14 [INFO] [stderr] | [INFO] [stderr] 4 | use chrono::{DateTime, Utc, Duration}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stderr] --> src/position_manager.rs:5:13 [INFO] [stderr] | [INFO] [stderr] 5 | use serde::{Serialize, Deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::sync::RwLock` [INFO] [stderr] --> src/price_cache.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use tokio::sync::RwLock; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/price_cache.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `ai` [INFO] [stderr] --> src/ai_predictor.rs:9:7 [INFO] [stderr] | [INFO] [stderr] 9 | #[cfg(feature = "ai")] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` [INFO] [stderr] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `ai` [INFO] [stderr] --> src/ai_predictor.rs:48:7 [INFO] [stderr] | [INFO] [stderr] 48 | #[cfg(feature = "ai")] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` [INFO] [stderr] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `ai` [INFO] [stderr] --> src/ai_predictor.rs:53:7 [INFO] [stderr] | [INFO] [stderr] 53 | #[cfg(feature = "ai")] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` [INFO] [stderr] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `ai` [INFO] [stderr] --> src/ai_predictor.rs:102:11 [INFO] [stderr] | [INFO] [stderr] 102 | #[cfg(not(feature = "ai"))] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` [INFO] [stderr] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `ai` [INFO] [stderr] --> src/ai_predictor.rs:105:11 [INFO] [stderr] | [INFO] [stderr] 105 | #[cfg(not(feature = "ai"))] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` [INFO] [stderr] = help: consider adding `ai` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused imports: `debug` and `warn` [INFO] [stderr] --> src/turbo_trader.rs:17:21 [INFO] [stderr] | [INFO] [stderr] 17 | use tracing::{info, warn, error, debug}; [INFO] [stderr] | ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/turbo_trader.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | (stats.successful_txs as f64 / stats.total_txs as f64 * 100.0) [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 289 - (stats.successful_txs as f64 / stats.total_txs as f64 * 100.0) [INFO] [stderr] 289 + stats.successful_txs as f64 / stats.total_txs as f64 * 100.0 [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `warn` [INFO] [stderr] --> src/predator_engine.rs:11:28 [INFO] [stderr] | [INFO] [stderr] 11 | use tracing::{info, debug, warn}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/runner_tracker.rs:11:17 [INFO] [stderr] | [INFO] [stderr] 11 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Deserialize` [INFO] [stderr] --> src/runner_tracker.rs:12:24 [INFO] [stderr] | [INFO] [stderr] 12 | use serde::{Serialize, Deserialize}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `debug` and `warn` [INFO] [stderr] --> src/wallet_reputation.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | use tracing::{info, debug, warn}; [INFO] [stderr] | ^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/wallet_reputation.rs:14:29 [INFO] [stderr] | [INFO] [stderr] 14 | use chrono::{DateTime, Utc, Duration}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `debug` [INFO] [stderr] --> src/exit_agent.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | use tracing::{info, debug, warn}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Deserialize` [INFO] [stderr] --> src/entry_timing.rs:12:24 [INFO] [stderr] | [INFO] [stderr] 12 | use serde::{Serialize, Deserialize}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `info` [INFO] [stderr] --> src/entry_timing.rs:13:15 [INFO] [stderr] | [INFO] [stderr] 13 | use tracing::{info, debug}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `debug` [INFO] [stderr] --> src/market_cycle.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | use tracing::{info, debug}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HeaderValue` [INFO] [stderr] --> src/dashboard.rs:10:28 [INFO] [stderr] | [INFO] [stderr] 10 | http::{header, Method, HeaderValue}, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::VecDeque` [INFO] [stderr] --> src/dashboard.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use std::collections::VecDeque; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `debug` [INFO] [stderr] --> src/brain.rs:14:21 [INFO] [stderr] | [INFO] [stderr] 14 | use tracing::{info, debug}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `DashboardData` [INFO] [stderr] --> src/unified_agent.rs:31:40 [INFO] [stderr] | [INFO] [stderr] 31 | use crate::dashboard::{DashboardState, DashboardData, TokenEvent, RunnerInfo}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `AgentDecision` [INFO] [stderr] --> src/unified_agent.rs:32:44 [INFO] [stderr] | [INFO] [stderr] 32 | use crate::adaptive_agent::{AdaptiveAgent, AgentDecision}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/token_history.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::sync::RwLock` [INFO] [stderr] --> src/token_history.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use tokio::sync::RwLock; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `error`, `info`, and `warn` [INFO] [stderr] --> src/main.rs:29:15 [INFO] [stderr] | [INFO] [stderr] 29 | use tracing::{info, warn, error, Level}; [INFO] [stderr] | ^^^^ ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `analysis_done` [INFO] [stderr] --> src/websocket.rs:549:21 [INFO] [stderr] | [INFO] [stderr] 549 | let analysis_done = token_state.analysis_8s_done; [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_analysis_done` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mc` [INFO] [stderr] --> src/brain.rs:231:9 [INFO] [stderr] | [INFO] [stderr] 231 | mc: f64, [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_mc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `endpoint` [INFO] [stderr] --> src/turbo_trader.rs:248:66 [INFO] [stderr] | [INFO] [stderr] 248 | async fn update_success(&self, rpc_name: &str, latency: u64, endpoint: &RPCEndpoint) { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_endpoint` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mint` [INFO] [stderr] --> src/adaptive_agent.rs:375:9 [INFO] [stderr] | [INFO] [stderr] 375 | mint: &str, [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mint` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mc` [INFO] [stderr] --> src/adaptive_agent.rs:376:9 [INFO] [stderr] | [INFO] [stderr] 376 | mc: f64, [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_mc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `txn` [INFO] [stderr] --> src/adaptive_agent.rs:377:9 [INFO] [stderr] | [INFO] [stderr] 377 | txn: u32, [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_txn` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `combo_key` [INFO] [stderr] --> src/adaptive_agent.rs:456:14 [INFO] [stderr] | [INFO] [stderr] 456 | for (combo_key, combo) in combos.iter() { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `slippage_bps` [INFO] [stderr] --> src/trader.rs:195:56 [INFO] [stderr] | [INFO] [stderr] 195 | pub async fn sell(&self, mint: &str, percent: u32, slippage_bps: u32) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slippage_bps` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `combo_key` [INFO] [stderr] --> src/adaptive_agent.rs:559:14 [INFO] [stderr] | [INFO] [stderr] 559 | for (combo_key, combo) in combos.iter_mut() { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `profit_ratio` [INFO] [stderr] --> src/position_manager.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | let profit_ratio = current_mc / position.entry_mc; [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_profit_ratio` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/predator_engine.rs:164:13 [INFO] [stderr] | [INFO] [stderr] 164 | let mut warnings = Vec::new(); [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `combo_key` [INFO] [stderr] --> src/adaptive_agent.rs:615:14 [INFO] [stderr] | [INFO] [stderr] 615 | for (combo_key, combo) in combos.iter_mut() { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_combo_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pnl_percent` [INFO] [stderr] --> src/adaptive_agent.rs:889:9 [INFO] [stderr] | [INFO] [stderr] 889 | pnl_percent: f64, [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pnl_percent` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `confidence` is never read [INFO] [stderr] --> src/market_cycle.rs:334:30 [INFO] [stderr] | [INFO] [stderr] 334 | let mut confidence = 0.5; [INFO] [stderr] | ^^^ this value is reassigned later and never used [INFO] [stderr] ... [INFO] [stderr] 374 | confidence = 0.7; [INFO] [stderr] | ---------------- `confidence` is overwritten here before the previous value is read [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/unified_agent.rs:335:24 [INFO] [stderr] | [INFO] [stderr] 335 | if let Err(e) = agent_read.load_filters("adaptive_filters.json").await { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> src/unified_agent.rs:1525:13 [INFO] [stderr] | [INFO] [stderr] 1525 | let tokens = self.tokens.clone(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `was_caught` [INFO] [stderr] --> src/token_history.rs:193:9 [INFO] [stderr] | [INFO] [stderr] 193 | was_caught: bool, [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_was_caught` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/main.rs:97:16 [INFO] [stderr] | [INFO] [stderr] 97 | if let Err(e) = dashboard.load_pnl_history("pnl_history.json").await { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/config.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct Config { [INFO] [stderr] | ------ fields in this struct [INFO] [stderr] ... [INFO] [stderr] 13 | pub priority_fee: f64, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 24 | pub threshold_15s: f64, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 27 | pub max_price_8s: f64, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 28 | pub max_price_15s: f64, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 32 | pub auto_buy_max_txn: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 33 | pub auto_buy_min_traders: u32, [INFO] [stderr] 34 | pub auto_buy_max_traders: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 39 | pub ai_min_txn: u32, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 40 | pub ai_min_traders: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 41 | pub ai_min_buy_ratio: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 45 | pub elite_wallet_max_mc: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 46 | pub elite_min_buy_ratio: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 47 | pub elite_min_whale_count: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 50 | pub price_jump_tolerance: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 53 | pub skip_if_txn_below: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] 54 | pub skip_if_buy_ratio_below: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 62 | pub pumpfun_ws: String, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Config` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: method `is_elite_wallet` is never used [INFO] [stderr] --> src/config.rs:165:12 [INFO] [stderr] | [INFO] [stderr] 65 | impl Config { [INFO] [stderr] | ----------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 165 | pub fn is_elite_wallet(&self, wallet: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHALE_THRESHOLD_SOL` is never used [INFO] [stderr] --> src/websocket.rs:30:7 [INFO] [stderr] | [INFO] [stderr] 30 | const WHALE_THRESHOLD_SOL: f64 = 3.5; // ~$500 at $140/SOL [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PumpPortalWebSocket` is never constructed [INFO] [stderr] --> src/websocket.rs:32:12 [INFO] [stderr] | [INFO] [stderr] 32 | pub struct PumpPortalWebSocket { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/websocket.rs:61:12 [INFO] [stderr] | [INFO] [stderr] 60 | impl PumpPortalWebSocket { [INFO] [stderr] | ------------------------ associated items in this implementation [INFO] [stderr] 61 | pub fn new( [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 101 | pub async fn run(&mut self) -> Result<()> { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 115 | async fn connect_and_listen(&mut self) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 302 | async fn handle_message( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 351 | async fn handle_create_event( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 439 | async fn handle_trade_event(&mut self, json: &serde_json::Value, is_buy: bool) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 647 | async fn analyze_token_8s(&mut self, mint: &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 737 | async fn analyze_token_15s(&mut self, mint: &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 824 | async fn analyze_token_continuous(&mut self, mint: &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1125 | async fn execute_buy(&mut self, mint: &str, reason: &str, confidence: f64) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1225 | async fn check_positions(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1300 | async fn execute_sell(&mut self, mint: &str, percent: u32, signal: crate::exit_agent::ExitSignal) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1398 | async fn cleanup_old_tokens(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1407 | async fn print_stats(&self) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1604 | async fn learn_from_completed_runners(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `config` is never read [INFO] [stderr] --> src/analyzer.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct Analyzer { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] 10 | config: Config, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `send_via_rpc` is never used [INFO] [stderr] --> src/trader.rs:316:14 [INFO] [stderr] | [INFO] [stderr] 36 | impl SolanaTrader { [INFO] [stderr] | ----------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 316 | async fn send_via_rpc(&self, tx_bytes: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PositionStats` is never constructed [INFO] [stderr] --> src/position_manager.rs:11:12 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct PositionStats { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `mark_partial_sold`, `record_progressive_sell`, and `get_stats` are never used [INFO] [stderr] --> src/position_manager.rs:166:12 [INFO] [stderr] | [INFO] [stderr] 25 | impl PositionManager { [INFO] [stderr] | -------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 166 | pub fn mark_partial_sold(&mut self, mint: &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 176 | pub fn record_progressive_sell(&mut self, mint: &str, percent: f64) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 193 | pub fn get_stats(&self) -> PositionStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `COINGECKO_SOL_URL` is never used [INFO] [stderr] --> src/price_cache.rs:12:7 [INFO] [stderr] | [INFO] [stderr] 12 | const COINGECKO_SOL_URL: &str = "https://api.coingecko.com/api/v3/simple/price?ids=solana&vs_currencies=usd"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `DEXSCREENER_URL` is never used [INFO] [stderr] --> src/price_cache.rs:13:7 [INFO] [stderr] | [INFO] [stderr] 13 | const DEXSCREENER_URL: &str = "https://api.dexscreener.com/tokens/v1/solana/"; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PUMPFUN_API_URL` is never used [INFO] [stderr] --> src/price_cache.rs:14:7 [INFO] [stderr] | [INFO] [stderr] 14 | const PUMPFUN_API_URL: &str = "https://frontend-api.pump.fun/coins/"; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PriceData` is never constructed [INFO] [stderr] --> src/price_cache.rs:17:12 [INFO] [stderr] | [INFO] [stderr] 17 | pub struct PriceData { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `HolderData` is never constructed [INFO] [stderr] --> src/price_cache.rs:41:12 [INFO] [stderr] | [INFO] [stderr] 41 | pub struct HolderData { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PriceCache` is never constructed [INFO] [stderr] --> src/price_cache.rs:46:12 [INFO] [stderr] | [INFO] [stderr] 46 | pub struct PriceCache { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/price_cache.rs:58:12 [INFO] [stderr] | [INFO] [stderr] 57 | impl PriceCache { [INFO] [stderr] | --------------- associated items in this implementation [INFO] [stderr] 58 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 74 | pub fn update_from_trade(&mut self, mint: &str, mc_sol: f64) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 94 | pub fn get_price(&self, mint: &str) -> PriceData { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 107 | pub fn get_sol_price(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 112 | pub fn set_sol_price(&mut self, price: f64) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 118 | pub fn cleanup_old(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 127 | pub fn get_holder_count(&self, mint: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 132 | pub async fn fetch_holder_count(&mut self, mint: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 171 | pub async fn fetch_from_dexscreener(&mut self, mint: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 215 | pub async fn refresh_sol_price(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `DexScreenerPair` is never constructed [INFO] [stderr] --> src/price_cache.rs:231:8 [INFO] [stderr] | [INFO] [stderr] 231 | struct DexScreenerPair { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `DexScreenerVolume` is never constructed [INFO] [stderr] --> src/price_cache.rs:242:8 [INFO] [stderr] | [INFO] [stderr] 242 | struct DexScreenerVolume { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `CoinGeckoResponse` is never constructed [INFO] [stderr] --> src/price_cache.rs:249:8 [INFO] [stderr] | [INFO] [stderr] 249 | struct CoinGeckoResponse { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `SolanaPrice` is never constructed [INFO] [stderr] --> src/price_cache.rs:254:8 [INFO] [stderr] | [INFO] [stderr] 254 | struct SolanaPrice { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PumpFunCoinResponse` is never constructed [INFO] [stderr] --> src/price_cache.rs:261:8 [INFO] [stderr] | [INFO] [stderr] 261 | struct PumpFunCoinResponse { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Features10s` is never constructed [INFO] [stderr] --> src/ai_predictor.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 18 | pub struct Features10s { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `from_token_state` and `to_array` are never used [INFO] [stderr] --> src/ai_predictor.rs:28:12 [INFO] [stderr] | [INFO] [stderr] 27 | impl Features10s { [INFO] [stderr] | ---------------- associated items in this implementation [INFO] [stderr] 28 | pub fn from_token_state(state: &TokenState) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 42 | pub fn to_array(&self) -> [f32; 6] { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TradeEvent` is never constructed [INFO] [stderr] --> src/types.rs:9:12 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct TradeEvent { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `CreateEvent` is never constructed [INFO] [stderr] --> src/types.rs:33:12 [INFO] [stderr] | [INFO] [stderr] 33 | pub struct CreateEvent { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `first_trade_at`, `analysis_8s_done`, and `analysis_15s_done` are never read [INFO] [stderr] --> src/types.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 51 | pub struct TokenState { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 56 | pub first_trade_at: Option>, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 88 | pub analysis_8s_done: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 89 | pub analysis_15s_done: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TokenState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `update_peak` is never used [INFO] [stderr] --> src/types.rs:141:12 [INFO] [stderr] | [INFO] [stderr] 92 | impl TokenState { [INFO] [stderr] | --------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 141 | pub fn update_peak(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `timestamp` and `is_elite` are never read [INFO] [stderr] --> src/types.rs:206:9 [INFO] [stderr] | [INFO] [stderr] 203 | pub struct WhaleBuy { [INFO] [stderr] | -------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 206 | pub timestamp: DateTime, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 207 | pub is_elite: bool, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `WhaleBuy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variant `Wait` is never constructed [INFO] [stderr] --> src/types.rs:262:5 [INFO] [stderr] | [INFO] [stderr] 259 | pub enum TradingDecision { [INFO] [stderr] | --------------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 262 | Wait, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TradingDecision` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `supports_jito` is never read [INFO] [stderr] --> src/turbo_trader.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct RPCEndpoint { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 26 | pub supports_jito: bool, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `RPCEndpoint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `get_stats` and `get_leaderboard` are never used [INFO] [stderr] --> src/turbo_trader.rs:280:18 [INFO] [stderr] | [INFO] [stderr] 84 | impl TurboTrader { [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 280 | pub async fn get_stats(&self) -> String { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 304 | pub async fn get_leaderboard(&self) -> Vec<(String, u64, f64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `signal_type`, `priority`, `filters_passed`, `filters_failed`, and `warnings` are never read [INFO] [stderr] --> src/predator_engine.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 15 | pub struct EntryDecision { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 19 | pub signal_type: SignalType, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 20 | pub priority: u8, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 21 | pub filters_passed: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 22 | pub filters_failed: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 23 | pub warnings: Vec, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `EntryDecision` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: struct `ExitDecision` is never constructed [INFO] [stderr] --> src/predator_engine.rs:39:12 [INFO] [stderr] | [INFO] [stderr] 39 | pub struct ExitDecision { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `ExitType` is never used [INFO] [stderr] --> src/predator_engine.rs:48:10 [INFO] [stderr] | [INFO] [stderr] 48 | pub enum ExitType { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `Urgency` is never used [INFO] [stderr] --> src/predator_engine.rs:56:10 [INFO] [stderr] | [INFO] [stderr] 56 | pub enum Urgency { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `mint`, `symbol`, and `elite_wallets` are never read [INFO] [stderr] --> src/predator_engine.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 64 | pub struct TokenSnapshot { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 65 | pub mint: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 66 | pub symbol: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 74 | pub elite_wallets: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TokenSnapshot` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `whale_min_amount_sol` and `coordinated_buying_window_ms` are never read [INFO] [stderr] --> src/predator_engine.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 80 | pub struct PredatorConfig { [INFO] [stderr] | -------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 86 | pub whale_min_amount_sol: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 87 | pub consecutive_whale_count: u32, [INFO] [stderr] 88 | pub coordinated_buying_window_ms: u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `add_elite_wallet`, `analyze_exit`, and `get_stats` are never used [INFO] [stderr] --> src/predator_engine.rs:150:12 [INFO] [stderr] | [INFO] [stderr] 135 | impl PredatorEngine { [INFO] [stderr] | ------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 150 | pub fn add_elite_wallet(&mut self, wallet: String) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 345 | pub fn analyze_exit( [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 422 | pub fn get_stats(&self) -> String { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `dead_threshold_secs` is never read [INFO] [stderr] --> src/runner_tracker.rs:139:9 [INFO] [stderr] | [INFO] [stderr] 134 | pub struct TrackerConfig { [INFO] [stderr] | ------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 139 | pub dead_threshold_secs: u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TrackerConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `save_to_file`, `get_summary`, `get_missed_runners`, and `get_all_runners` are never used [INFO] [stderr] --> src/runner_tracker.rs:411:18 [INFO] [stderr] | [INFO] [stderr] 163 | impl RunnerTracker { [INFO] [stderr] | ------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 411 | pub async fn save_to_file(&self, filename: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 420 | pub async fn get_summary(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 438 | pub async fn get_missed_runners(&self) -> Vec<(String, String, f64, String, String, f64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 463 | pub async fn get_all_runners(&self) -> Vec<(String, String, f64, bool, String, f64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `Volatile` is never constructed [INFO] [stderr] --> src/adaptive_agent.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 41 | pub enum MarketMode { [INFO] [stderr] | ---------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 45 | Volatile, // Unpredictable, be cautious [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MarketMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `confidence`, `reasoning`, and `adjusted_threshold` are never read [INFO] [stderr] --> src/adaptive_agent.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 50 | pub struct AgentDecision { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 51 | pub should_buy: bool, [INFO] [stderr] 52 | pub confidence: f64, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 53 | pub reasoning: Vec, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 56 | pub adjusted_threshold: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AgentDecision` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `min_pattern_observations` is never read [INFO] [stderr] --> src/adaptive_agent.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 93 | pub struct AgentConfig { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 105 | pub min_pattern_observations: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AgentConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `recent_patterns` is never read [INFO] [stderr] --> src/adaptive_agent.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 199 | struct MarketMemory { [INFO] [stderr] | ------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 203 | recent_patterns: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MarketMemory` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/adaptive_agent.rs:655:18 [INFO] [stderr] | [INFO] [stderr] 216 | impl AdaptiveAgent { [INFO] [stderr] | ------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 655 | pub async fn observe_token(&self) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 661 | pub async fn get_stats(&self) -> AgentStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 667 | pub async fn get_pattern_scores(&self) -> Vec<(String, f64, f64, Trend)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 678 | pub async fn get_combo_scores(&self) -> Vec<(String, f64, f64, f64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 690 | pub async fn get_market_mode(&self) -> MarketMode { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 779 | pub async fn get_filters(&self) -> AdaptiveFilters { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 927 | pub async fn get_optimal_stop_loss(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `calculate_reputation`, and `classify_wallet` are never used [INFO] [stderr] --> src/wallet_reputation.rs:72:8 [INFO] [stderr] | [INFO] [stderr] 71 | impl WalletReputation { [INFO] [stderr] | --------------------- associated items in this implementation [INFO] [stderr] 72 | fn new(address: String, is_elite: bool) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 93 | fn calculate_reputation(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 145 | fn classify_wallet(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `auto_buy_threshold`, `block_threshold`, `min_trades_for_trust`, and `max_recent_trades` are never read [INFO] [stderr] --> src/wallet_reputation.rs:169:9 [INFO] [stderr] | [INFO] [stderr] 167 | pub struct ReputationConfig { [INFO] [stderr] | ---------------- fields in this struct [INFO] [stderr] 168 | /// Auto-buy threshold (wallets with score above this trigger auto-buy) [INFO] [stderr] 169 | pub auto_buy_threshold: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 172 | pub block_threshold: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 175 | pub min_trades_for_trust: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 178 | pub max_recent_trades: usize, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ReputationConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `config` and `elite_wallets` are never read [INFO] [stderr] --> src/wallet_reputation.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 193 | pub struct WalletReputationTracker { [INFO] [stderr] | ----------------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 198 | config: ReputationConfig, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 201 | elite_wallets: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `record_buy`, `record_outcome`, `should_auto_buy`, `should_block`, `get_top_wallets`, and `get_stats` are never used [INFO] [stderr] --> src/wallet_reputation.rs:220:18 [INFO] [stderr] | [INFO] [stderr] 204 | impl WalletReputationTracker { [INFO] [stderr] | ---------------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 220 | pub async fn record_buy( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 255 | pub async fn record_outcome( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 305 | pub async fn should_auto_buy(&self, wallet: &str) -> (bool, f64) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 321 | pub async fn should_block(&self, wallet: &str) -> (bool, String) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 352 | pub async fn get_top_wallets(&self, limit: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 365 | pub async fn get_stats(&self) -> ReputationStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ReputationStats` is never constructed [INFO] [stderr] --> src/wallet_reputation.rs:408:12 [INFO] [stderr] | [INFO] [stderr] 408 | pub struct ReputationStats { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `ExitSignal` is never used [INFO] [stderr] --> src/exit_agent.rs:18:10 [INFO] [stderr] | [INFO] [stderr] 18 | pub enum ExitSignal { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `from_reason`, `expected_peak`, and `optimal_hold_time` are never used [INFO] [stderr] --> src/exit_agent.rs:40:12 [INFO] [stderr] | [INFO] [stderr] 39 | impl EntryPattern { [INFO] [stderr] | ----------------- associated items in this implementation [INFO] [stderr] 40 | pub fn from_reason(reason: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 57 | pub fn expected_peak(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 69 | pub fn optimal_hold_time(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ExitDecision` is never constructed [INFO] [stderr] --> src/exit_agent.rs:83:12 [INFO] [stderr] | [INFO] [stderr] 83 | pub struct ExitDecision { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `velocity_drop_threshold`, `volume_spike_threshold`, `min_partial_profit`, and `peak_lookback` are never read [INFO] [stderr] --> src/exit_agent.rs:113:9 [INFO] [stderr] | [INFO] [stderr] 111 | pub struct ExitAgentConfig { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] 112 | /// Velocity drop threshold (% drop from peak) [INFO] [stderr] 113 | pub velocity_drop_threshold: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 116 | pub volume_spike_threshold: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 119 | pub min_partial_profit: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 122 | pub peak_lookback: f64, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ExitAgentConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/exit_agent.rs:139:9 [INFO] [stderr] | [INFO] [stderr] 138 | pub struct PositionExit { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 139 | pub mint: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 140 | pub symbol: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 141 | pub entry_mc: f64, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 142 | pub entry_pattern: EntryPattern, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 143 | pub entry_time: DateTime, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 146 | pub current_mc: f64, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 147 | pub peak_mc: f64, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 148 | pub current_multiplier: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 151 | pub recent_velocities: Vec<(DateTime, f64)>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] 152 | pub peak_velocity: f64, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 155 | pub recent_volumes: Vec<(DateTime, f64)>, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 156 | pub avg_volume: f64, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 159 | pub partial_sold: bool, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 160 | pub partial_exit_mc: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PositionExit` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `positions`, `exit_history`, `config`, and `learned_peaks` are never read [INFO] [stderr] --> src/exit_agent.rs:166:5 [INFO] [stderr] | [INFO] [stderr] 164 | pub struct ExitAgent { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] 165 | /// Tracked positions [INFO] [stderr] 166 | positions: Arc>>, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 169 | exit_history: Arc>>, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 172 | config: ExitAgentConfig, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 175 | learned_peaks: Arc>>, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/exit_agent.rs:195:18 [INFO] [stderr] | [INFO] [stderr] 178 | impl ExitAgent { [INFO] [stderr] | -------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 195 | pub async fn track_position( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 226 | pub async fn update_position( [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 265 | pub async fn analyze_exit(&self, mint: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 369 | pub async fn record_exit( [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 414 | async fn learn_from_exit(&self, record: &ExitRecord) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 441 | pub async fn get_stats(&self) -> ExitStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 462 | pub async fn mark_partial_sold(&self, mint: &str, exit_mc: f64) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ExitStats` is never constructed [INFO] [stderr] --> src/exit_agent.rs:472:12 [INFO] [stderr] | [INFO] [stderr] 472 | pub struct ExitStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `as_u8` is never used [INFO] [stderr] --> src/entry_timing.rs:47:12 [INFO] [stderr] | [INFO] [stderr] 31 | impl UrgencyLevel { [INFO] [stderr] | ----------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 47 | pub fn as_u8(&self) -> u8 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `urgency`, `confidence`, `optimal_time_range`, `current_age`, `reasoning`, and `time_score` are never read [INFO] [stderr] --> src/entry_timing.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 65 | pub struct EntryWindow { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 66 | pub should_enter: bool, [INFO] [stderr] 67 | pub urgency: UrgencyLevel, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 68 | pub confidence: f64, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 69 | pub optimal_time_range: (f64, f64), // (min_seconds, max_seconds) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 70 | pub current_age: f64, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 71 | pub reasoning: Vec, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 72 | pub time_score: f64, // How good is the timing (0-1) [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `EntryWindow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `mint` is never read [INFO] [stderr] --> src/entry_timing.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 77 | struct TokenEntry { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] 78 | mint: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TokenEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/entry_timing.rs:97:5 [INFO] [stderr] | [INFO] [stderr] 96 | struct EntrySnapshot { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 97 | age_seconds: f64, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 98 | confidence: f64, [INFO] [stderr] 99 | urgency: u8, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 100 | patterns_present: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 101 | whale_count: u32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 102 | elite_count: u32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 103 | velocity: f64, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 104 | timestamp: DateTime, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `EntrySnapshot` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `get_stats` and `cleanup` are never used [INFO] [stderr] --> src/entry_timing.rs:473:18 [INFO] [stderr] | [INFO] [stderr] 146 | impl EntryTimingAnalyzer { [INFO] [stderr] | ------------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 473 | pub async fn get_stats(&self) -> EntryStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 495 | pub async fn cleanup(&self, max_age_seconds: i64) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `EntryStats` is never constructed [INFO] [stderr] --> src/entry_timing.rs:503:12 [INFO] [stderr] | [INFO] [stderr] 503 | pub struct EntryStats { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `buy_strategy`, `sell_strategy`, and `threshold_multiplier` are never used [INFO] [stderr] --> src/market_cycle.rs:27:12 [INFO] [stderr] | [INFO] [stderr] 25 | impl CyclePhase { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] 26 | /// Get buying strategy for this phase [INFO] [stderr] 27 | pub fn buy_strategy(&self) -> BuyStrategy { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 37 | pub fn sell_strategy(&self) -> SellStrategy { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 47 | pub fn threshold_multiplier(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `BuyStrategy` is never used [INFO] [stderr] --> src/market_cycle.rs:58:10 [INFO] [stderr] | [INFO] [stderr] 58 | pub enum BuyStrategy { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `SellStrategy` is never used [INFO] [stderr] --> src/market_cycle.rs:67:10 [INFO] [stderr] | [INFO] [stderr] 67 | pub enum SellStrategy { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `CycleAnalysis` is never constructed [INFO] [stderr] --> src/market_cycle.rs:76:12 [INFO] [stderr] | [INFO] [stderr] 76 | pub struct CycleAnalysis { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/market_cycle.rs:87:5 [INFO] [stderr] | [INFO] [stderr] 86 | struct MarketDataPoint { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] 87 | timestamp: DateTime, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 88 | price_mc: f64, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 89 | volume: f64, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 90 | whale_buys: u32, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 91 | whale_sells: u32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 92 | retail_buys: u32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 93 | retail_sells: u32, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 94 | velocity: f64, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MarketDataPoint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `data_points`, `current_phase`, `phase_started_at`, and `config` are never read [INFO] [stderr] --> src/market_cycle.rs:100:5 [INFO] [stderr] | [INFO] [stderr] 98 | pub struct MarketCycleDetector { [INFO] [stderr] | ------------------- fields in this struct [INFO] [stderr] 99 | /// Recent market data (rolling window) [INFO] [stderr] 100 | data_points: Arc>>, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 103 | current_phase: Arc>>, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 106 | phase_started_at: Arc>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 109 | config: CycleConfig, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `min_data_points`, `distribution_volume_mult`, and `distribution_whale_sell_ratio` are never read [INFO] [stderr] --> src/market_cycle.rs:118:9 [INFO] [stderr] | [INFO] [stderr] 113 | pub struct CycleConfig { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 118 | pub min_data_points: usize, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 121 | pub distribution_volume_mult: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 124 | pub distribution_whale_sell_ratio: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CycleConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/market_cycle.rs:155:18 [INFO] [stderr] | [INFO] [stderr] 138 | impl MarketCycleDetector { [INFO] [stderr] | ------------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 155 | pub async fn add_data_point( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 187 | pub async fn detect_phase(&self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 237 | fn calculate_price_trend(&self, points: &[&MarketDataPoint]) -> PriceTrend { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 264 | fn calculate_volume_trend(&self, points: &[&MarketDataPoint]) -> VolumeTrend { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 286 | fn calculate_whale_behavior(&self, points: &[&MarketDataPoint]) -> WhaleBehavior { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 306 | fn calculate_retail_behavior(&self, points: &[&MarketDataPoint]) -> RetailBehavior { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 326 | fn identify_phase( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 396 | pub async fn get_current_phase(&self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `PriceTrend` is never used [INFO] [stderr] --> src/market_cycle.rs:403:6 [INFO] [stderr] | [INFO] [stderr] 403 | enum PriceTrend { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `VolumeTrend` is never used [INFO] [stderr] --> src/market_cycle.rs:412:6 [INFO] [stderr] | [INFO] [stderr] 412 | enum VolumeTrend { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `WhaleBehavior` is never used [INFO] [stderr] --> src/market_cycle.rs:420:6 [INFO] [stderr] | [INFO] [stderr] 420 | enum WhaleBehavior { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `RetailBehavior` is never used [INFO] [stderr] --> src/market_cycle.rs:427:6 [INFO] [stderr] | [INFO] [stderr] 427 | enum RetailBehavior { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `update_data` is never used [INFO] [stderr] --> src/dashboard.rs:174:18 [INFO] [stderr] | [INFO] [stderr] 167 | impl DashboardState { [INFO] [stderr] | ------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 174 | pub async fn update_data(&self, data: DashboardData) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `CausalAnalysis` is never constructed [INFO] [stderr] --> src/brain.rs:28:12 [INFO] [stderr] | [INFO] [stderr] 28 | pub struct CausalAnalysis { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `observe_trade`, and `predict_buy` are never used [INFO] [stderr] --> src/brain.rs:71:12 [INFO] [stderr] | [INFO] [stderr] 70 | impl WalletProfile { [INFO] [stderr] | ------------------ associated items in this implementation [INFO] [stderr] 71 | pub fn new(address: String) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 95 | pub fn observe_trade(&mut self, entry_time: f64, mc: f64, outcome: bool, multiplier: f64, narrative: &str) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 149 | pub fn predict_buy(&self, mc: f64, narrative: &str, age: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `causal_patterns` is never read [INFO] [stderr] --> src/brain.rs:212:5 [INFO] [stderr] | [INFO] [stderr] 204 | pub struct Brain { [INFO] [stderr] | ----- field in this struct [INFO] [stderr] ... [INFO] [stderr] 212 | causal_patterns: Arc>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `analyze_causality`, `observe_wallet`, `predict_wallet_buy`, `reflect`, `get_wallet_profiles`, and `get_reflections` are never used [INFO] [stderr] --> src/brain.rs:225:18 [INFO] [stderr] | [INFO] [stderr] 215 | impl Brain { [INFO] [stderr] | ---------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 225 | pub async fn analyze_causality( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 321 | pub async fn observe_wallet(&self, address: &str, entry_time: f64, mc: f64, outcome: bool, multiplier: f64, narrative: &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 335 | pub async fn predict_wallet_buy(&self, address: &str, mc: f64, narrative: &str, age: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 345 | pub async fn reflect( [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 409 | pub async fn get_wallet_profiles(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 415 | pub async fn get_reflections(&self, limit: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `market_detector` and `exit_agent` are never read [INFO] [stderr] --> src/unified_agent.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 55 | pub struct UnifiedAgent { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] ... [INFO] [stderr] 77 | market_detector: Arc>, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 81 | exit_agent: Arc>, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `get_stats` is never used [INFO] [stderr] --> src/unified_agent.rs:1899:18 [INFO] [stderr] | [INFO] [stderr] 303 | impl UnifiedAgent { [INFO] [stderr] | ----------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 1899 | pub async fn get_stats(&self) -> UnifiedStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stderr] --> src/websocket.rs:534:21 [INFO] [stderr] | [INFO] [stderr] 534 | drop(token_state); [INFO] [stderr] | ^^^^^-----------^ [INFO] [stderr] | | [INFO] [stderr] | argument has type `&mut TokenState` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dropping_references)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the expression or result [INFO] [stderr] | [INFO] [stderr] 534 - drop(token_state); [INFO] [stderr] 534 + let _ = token_state; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stderr] --> src/websocket.rs:561:17 [INFO] [stderr] | [INFO] [stderr] 561 | drop(token_state); // Drop mutable borrow before execute_buy [INFO] [stderr] | ^^^^^-----------^ [INFO] [stderr] | | [INFO] [stderr] | argument has type `&mut TokenState` [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the expression or result [INFO] [stderr] | [INFO] [stderr] 561 - drop(token_state); // Drop mutable borrow before execute_buy [INFO] [stderr] 561 + let _ = token_state; // Drop mutable borrow before execute_buy [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: structure field `traderPublicKey` should have a snake case name [INFO] [stderr] --> src/types.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | pub traderPublicKey: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `trader_public_key` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: structure field `bondingCurveKey` should have a snake case name [INFO] [stderr] --> src/types.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | pub bondingCurveKey: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `bonding_curve_key` [INFO] [stderr] [INFO] [stderr] warning: structure field `vTokensInBondingCurve` should have a snake case name [INFO] [stderr] --> src/types.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | pub vTokensInBondingCurve: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `v_tokens_in_bonding_curve` [INFO] [stderr] [INFO] [stderr] warning: structure field `vSolInBondingCurve` should have a snake case name [INFO] [stderr] --> src/types.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 42 | pub vSolInBondingCurve: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `v_sol_in_bonding_curve` [INFO] [stderr] [INFO] [stderr] warning: structure field `marketCapSol` should have a snake case name [INFO] [stderr] --> src/types.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | pub marketCapSol: Option, [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `market_cap_sol` [INFO] [stderr] [INFO] [stderr] warning: structure field `initialBuy` should have a snake case name [INFO] [stderr] --> src/types.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | pub initialBuy: Option, [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `initial_buy` [INFO] [stderr] [INFO] [stderr] warning: `buddy_bot` (bin "buddy_bot" test) generated 142 warnings (run `cargo fix --bin "buddy_bot" -p buddy_bot --tests` to apply 45 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.84s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: solana-client v1.18.26 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/buddy_bot-756c6694d577e8ae) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c073b7689e2b97d06c3ecb0afb40d9419185d70d47051f5d0611b2c61074fae4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c073b7689e2b97d06c3ecb0afb40d9419185d70d47051f5d0611b2c61074fae4", kill_on_drop: false }` [INFO] [stdout] c073b7689e2b97d06c3ecb0afb40d9419185d70d47051f5d0611b2c61074fae4