[INFO] cloning repository https://github.com/chxndre/CryptoConduit-MCP [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/chxndre/CryptoConduit-MCP" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchxndre%2FCryptoConduit-MCP", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchxndre%2FCryptoConduit-MCP'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a9b77e104832fe2c3f7ec8588d3df3d2ed389fc3 [INFO] testing chxndre/CryptoConduit-MCP against 1.95.0 for beta-1.96-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchxndre%2FCryptoConduit-MCP" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/chxndre/CryptoConduit-MCP [INFO] finished tweaking git repo https://github.com/chxndre/CryptoConduit-MCP [INFO] tweaked toml for git repo https://github.com/chxndre/CryptoConduit-MCP written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/chxndre/CryptoConduit-MCP on toolchain 1.95.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/chxndre/CryptoConduit-MCP 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded zeroize_derive v1.4.3 [INFO] [stderr] Downloaded pastey v0.2.1 [INFO] [stderr] Downloaded ptr_meta v0.1.4 [INFO] [stderr] Downloaded alloy-rlp v0.3.13 [INFO] [stderr] Downloaded keccak-asm v0.1.5 [INFO] [stderr] Downloaded secrecy v0.10.3 [INFO] [stderr] Downloaded enum-ordinalize-derive v4.3.2 [INFO] [stderr] Downloaded bytecheck v0.6.12 [INFO] [stderr] Downloaded alloy-tx-macros v1.7.3 [INFO] [stderr] Downloaded alloy-rlp-derive v0.3.13 [INFO] [stderr] Downloaded bitcoin-io v0.1.4 [INFO] [stderr] Downloaded rend v0.4.2 [INFO] [stderr] Downloaded bytecheck_derive v0.6.12 [INFO] [stderr] Downloaded ptr_meta_derive v0.1.4 [INFO] [stderr] Downloaded enum-ordinalize v4.3.2 [INFO] [stderr] Downloaded alloy-eip2930 v0.2.3 [INFO] [stderr] Downloaded crc v3.4.0 [INFO] [stderr] Downloaded phf_shared v0.12.1 [INFO] [stderr] Downloaded alloy-rpc-types-any v1.7.3 [INFO] [stderr] Downloaded cmake v0.1.57 [INFO] [stderr] Downloaded rust_decimal_macros v1.40.0 [INFO] [stderr] Downloaded rand_core v0.10.0 [INFO] [stderr] Downloaded base64ct v1.8.3 [INFO] [stderr] Downloaded alloy-eip7702 v0.6.3 [INFO] [stderr] Downloaded alloy-eip2124 v0.2.0 [INFO] [stderr] Downloaded alloy-signer v1.7.3 [INFO] [stderr] Downloaded borsh-derive v1.6.0 [INFO] [stderr] Downloaded serde_html_form v0.4.0 [INFO] [stderr] Downloaded data-encoding v2.10.0 [INFO] [stderr] Downloaded alloy-eip7928 v0.3.3 [INFO] [stderr] Downloaded seahash v4.1.0 [INFO] [stderr] Downloaded rmcp-macros v1.2.0 [INFO] [stderr] Downloaded hex-conservative v0.2.2 [INFO] [stderr] Downloaded alloy-network-primitives v1.7.3 [INFO] [stderr] Downloaded lru v0.16.3 [INFO] [stderr] Downloaded alloy-core v1.5.7 [INFO] [stderr] Downloaded toml_datetime v1.0.1+spec-1.1.0 [INFO] [stderr] Downloaded alloy-sol-type-parser v1.5.7 [INFO] [stderr] Downloaded alloy-sol-macro v1.5.7 [INFO] [stderr] Downloaded alloy-json-abi v1.5.7 [INFO] [stderr] Downloaded alloy-transport-http v1.7.3 [INFO] [stderr] Downloaded phf v0.12.1 [INFO] [stderr] Downloaded alloy-sol-macro-expander v1.5.7 [INFO] [stderr] Downloaded alloy-sol-macro-input v1.5.7 [INFO] [stderr] Downloaded const-hex v1.18.1 [INFO] [stderr] Downloaded nybbles v0.4.8 [INFO] [stderr] Downloaded alloy-consensus-any v1.7.3 [INFO] [stderr] Downloaded alloy-serde v1.7.3 [INFO] [stderr] Downloaded serde_with_macros v3.18.0 [INFO] [stderr] Downloaded ahash v0.7.8 [INFO] [stderr] Downloaded alloy-rpc-client v1.7.3 [INFO] [stderr] Downloaded rapidhash v4.4.1 [INFO] [stderr] Downloaded alloy v1.7.3 [INFO] [stderr] Downloaded alloy-network v1.7.3 [INFO] [stderr] Downloaded alloy-contract v1.7.3 [INFO] [stderr] Downloaded alloy-chains v0.2.31 [INFO] [stderr] Downloaded alloy-trie v0.9.5 [INFO] [stderr] Downloaded alloy-dyn-abi v1.5.7 [INFO] [stderr] Downloaded alloy-sol-types v1.5.7 [INFO] [stderr] Downloaded syn-solidity v1.5.7 [INFO] [stderr] Downloaded secp256k1 v0.30.0 [INFO] [stderr] Downloaded schemars v0.9.0 [INFO] [stderr] Downloaded alloy-rpc-types-eth v1.7.3 [INFO] [stderr] Downloaded borsh v1.6.0 [INFO] [stderr] Downloaded alloy-primitives v1.5.7 [INFO] [stderr] Downloaded rand v0.10.0 [INFO] [stderr] Downloaded alloy-consensus v1.7.3 [INFO] [stderr] Downloaded rkyv v0.7.46 [INFO] [stderr] Downloaded ruint v1.17.2 [INFO] [stderr] Downloaded rust_decimal v1.40.0 [INFO] [stderr] Downloaded alloy-provider v1.7.3 [INFO] [stderr] Downloaded serde_with v3.18.0 [INFO] [stderr] Downloaded proptest v1.10.0 [INFO] [stderr] Downloaded aws-lc-rs v1.16.1 [INFO] [stderr] Downloaded webpki-roots v1.0.6 [INFO] [stderr] Downloaded polymarket-client-sdk v0.4.4 [INFO] [stderr] Downloaded openssl v0.10.76 [INFO] [stderr] Downloaded rmcp v1.2.0 [INFO] [stderr] Downloaded zerocopy v0.8.42 [INFO] [stderr] Downloaded alloy-eips v1.7.3 [INFO] [stderr] Downloaded zerocopy-derive v0.8.42 [INFO] [stderr] Downloaded rustls-webpki v0.103.9 [INFO] [stderr] Downloaded sha3-asm v0.1.5 [INFO] [stderr] Downloaded openssl-sys v0.9.112 [INFO] [stderr] Downloaded toml_edit v0.25.5+spec-1.1.0 [INFO] [stderr] Downloaded bitcoin_hashes v0.14.1 [INFO] [stderr] Downloaded alloy-signer-local v1.7.3 [INFO] [stderr] Downloaded alloy-json-rpc v1.7.3 [INFO] [stderr] Downloaded alloy-transport v1.7.3 [INFO] [stderr] Downloaded toml_parser v1.0.10+spec-1.1.0 [INFO] [stderr] Downloaded rkyv_derive v0.7.46 [INFO] [stderr] Downloaded chrono-tz v0.10.4 [INFO] [stderr] Downloaded c-kzg v2.1.7 [INFO] [stderr] Downloaded secp256k1-sys v0.10.1 [INFO] [stderr] Downloaded aws-lc-sys v0.38.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 11e56ed67c798656080ba16e046aad5049a319268e81f2f8b2b17dc348cfc68c [INFO] running `Command { std: "docker" "start" "-a" "11e56ed67c798656080ba16e046aad5049a319268e81f2f8b2b17dc348cfc68c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "11e56ed67c798656080ba16e046aad5049a319268e81f2f8b2b17dc348cfc68c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "11e56ed67c798656080ba16e046aad5049a319268e81f2f8b2b17dc348cfc68c", kill_on_drop: false }` [INFO] [stdout] 11e56ed67c798656080ba16e046aad5049a319268e81f2f8b2b17dc348cfc68c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 84f3ff2fba7db39dd913e4b9a62f51d8c500a661d9271036005f5c0d1c5cde5f [INFO] running `Command { std: "docker" "start" "-a" "84f3ff2fba7db39dd913e4b9a62f51d8c500a661d9271036005f5c0d1c5cde5f", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling const-oid v0.9.6 [INFO] [stderr] Compiling foldhash v0.2.0 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling ruint-macro v1.2.1 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling keccak v0.1.6 [INFO] [stderr] Compiling der v0.7.10 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling convert_case v0.10.0 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Compiling base16ct v0.2.0 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling rustc-hash v2.1.1 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling aws-lc-rs v1.16.1 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling rfc6979 v0.4.0 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling ff v0.13.1 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling cc v1.2.57 [INFO] [stderr] Compiling group v0.13.0 [INFO] [stderr] Compiling pkcs8 v0.10.2 [INFO] [stderr] Compiling crypto-bigint v0.5.5 [INFO] [stderr] Compiling sec1 v0.7.3 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling proc-macro-error-attr2 v2.0.0 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling crc-catalog v2.4.0 [INFO] [stderr] Compiling crc v3.4.0 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling openssl-probe v0.2.1 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling elliptic-curve v0.13.8 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling zerocopy v0.8.42 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling siphasher v1.0.2 [INFO] [stderr] Compiling futures-utils-wasm v0.1.0 [INFO] [stderr] Compiling iri-string v0.7.10 [INFO] [stderr] Compiling ecdsa v0.16.9 [INFO] [stderr] Compiling encoding_rs v0.8.35 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Compiling cmake v0.1.57 [INFO] [stderr] Compiling rand_core v0.10.0 [INFO] [stderr] Compiling phf_shared v0.13.1 [INFO] [stderr] Compiling ruint v1.17.2 [INFO] [stderr] Compiling const-hex v1.18.1 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling k256 v0.13.4 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling ref-cast v1.0.25 [INFO] [stderr] Compiling phf_generator v0.13.1 [INFO] [stderr] Compiling rustls-native-certs v0.8.3 [INFO] [stderr] Compiling aws-lc-sys v0.38.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling openssl-sys v0.9.112 [INFO] [stderr] Compiling rust_decimal v1.40.0 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling chacha20 v0.10.0 [INFO] [stderr] Compiling lru v0.16.3 [INFO] [stderr] Compiling phf_shared v0.12.1 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling chrono-tz v0.10.4 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling dyn-clone v1.0.20 [INFO] [stderr] Compiling rmcp v1.2.0 [INFO] [stderr] Compiling data-encoding v2.10.0 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling rand v0.10.0 [INFO] [stderr] Compiling phf v0.12.1 [INFO] [stderr] Compiling uuid v1.22.0 [INFO] [stderr] Compiling webpki-roots v0.26.11 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling serde_html_form v0.4.0 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling pastey v0.2.1 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling syn-solidity v1.5.7 [INFO] [stderr] Compiling macro-string v0.1.4 [INFO] [stderr] Compiling proc-macro-error2 v2.0.1 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling alloy-rlp-derive v0.3.13 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling auto_impl v1.3.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling num_enum_derive v0.7.6 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Compiling pin-project-internal v1.1.11 [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling ref-cast-impl v1.0.25 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling async-stream v0.3.6 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling schemars_derive v1.2.1 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling num_enum v0.7.6 [INFO] [stderr] Compiling serde_with_macros v3.18.0 [INFO] [stderr] Compiling bon-macros v3.9.1 [INFO] [stderr] Compiling pin-project v1.1.11 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling rmcp-macros v1.2.0 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling rust_decimal_macros v1.40.0 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling serde_repr v0.1.20 [INFO] [stderr] Compiling strum_macros v0.28.0 [INFO] [stderr] Compiling phf v0.13.1 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling derive_more v2.1.1 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling alloy-sol-type-parser v1.5.7 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling darling_core v0.21.3 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling alloy-rlp v0.3.13 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling alloy-primitives v1.5.7 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling strum v0.27.2 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling secrecy v0.10.3 [INFO] [stderr] Compiling serde_with v3.18.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling schemars v1.2.1 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling nybbles v0.4.8 [INFO] [stderr] Compiling alloy-json-abi v1.5.7 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling alloy-sol-macro-input v1.5.7 [INFO] [stderr] Compiling darling_macro v0.21.3 [INFO] [stderr] Compiling alloy-sol-macro-expander v1.5.7 [INFO] [stderr] Compiling darling v0.21.3 [INFO] [stderr] Compiling alloy-serde v1.7.3 [INFO] [stderr] Compiling alloy-eip2124 v0.2.0 [INFO] [stderr] Compiling alloy-eip7702 v0.6.3 [INFO] [stderr] Compiling alloy-eip7928 v0.3.3 [INFO] [stderr] Compiling alloy-eip2930 v0.2.3 [INFO] [stderr] Compiling alloy-tx-macros v1.7.3 [INFO] [stderr] Compiling alloy-trie v0.9.5 [INFO] [stderr] Compiling alloy-signer v1.7.3 [INFO] [stderr] Compiling alloy-chains v0.2.31 [INFO] [stderr] Compiling bon v3.9.1 [INFO] [stderr] Compiling alloy-eips v1.7.3 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling alloy-consensus v1.7.3 [INFO] [stderr] Compiling alloy-sol-macro v1.5.7 [INFO] [stderr] Compiling alloy-sol-types v1.5.7 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling alloy-network-primitives v1.7.3 [INFO] [stderr] Compiling alloy-consensus-any v1.7.3 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling alloy-json-rpc v1.7.3 [INFO] [stderr] Compiling alloy-rpc-types-eth v1.7.3 [INFO] [stderr] Compiling alloy-dyn-abi v1.5.7 [INFO] [stderr] Compiling alloy-transport v1.7.3 [INFO] [stderr] Compiling alloy-core v1.5.7 [INFO] [stderr] Compiling alloy-rpc-types-any v1.7.3 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling alloy-network v1.7.3 [INFO] [stderr] Compiling alloy-signer-local v1.7.3 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling rustls-webpki v0.103.9 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling rustls-platform-verifier v0.6.2 [INFO] [stderr] Compiling tungstenite v0.24.0 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling reqwest v0.13.2 [INFO] [stderr] Compiling tokio-tungstenite v0.24.0 [INFO] [stderr] Compiling alloy-transport-http v1.7.3 [INFO] [stderr] Compiling alloy-rpc-client v1.7.3 [INFO] [stderr] Compiling alloy-provider v1.7.3 [INFO] [stderr] Compiling alloy-contract v1.7.3 [INFO] [stderr] Compiling alloy v1.7.3 [INFO] [stderr] Compiling polymarket-client-sdk v0.4.4 [INFO] [stderr] Compiling crypto-conduit-mcp v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `interval_min` [INFO] [stdout] --> src/core/providers/gamma.rs:919:9 [INFO] [stdout] | [INFO] [stdout] 919 | let interval_min = (interval_secs / 60) as u32; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval_min` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binance` [INFO] [stdout] --> src/mcp/tools_market.rs:700:5 [INFO] [stdout] | [INFO] [stdout] 700 | binance: &crate::core::providers::binance::BinanceClient, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binance` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spot_vs_strike_pct` is never used [INFO] [stdout] --> src/core/analysis/divergence.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn spot_vs_strike_pct(spot_price: f64, strike_price: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spot_move_to_fair_prob` is never used [INFO] [stdout] --> src/core/analysis/divergence.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn spot_move_to_fair_prob(spot_move_pct: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `implied_divergence` is never used [INFO] [stdout] --> src/core/analysis/divergence.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn implied_divergence(market_implied_prob: f64, spot_move_pct: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `elapsed_buckets` is never read [INFO] [stdout] --> src/core/analysis/fair_value.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 224 | pub struct EmpiricalDistribution { [INFO] [stdout] | --------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | elapsed_buckets: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EmpiricalDistribution` 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 `bid_depth_usd`, `levels_for_100`, `best_ask`, and `best_bid` are never read [INFO] [stdout] --> src/core/analysis/microstructure.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct TradeabilityAssessment { [INFO] [stdout] | ---------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | pub bid_depth_usd: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub levels_for_100: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 18 | /// Best ask price (entry price for buyers) [INFO] [stdout] 19 | pub best_ask: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 20 | /// Best bid price (exit price for sellers) [INFO] [stdout] 21 | pub best_bid: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TradeabilityAssessment` 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 `address` is never read [INFO] [stdout] --> src/core/execution/live.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct ApprovalStatus { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 49 | pub contract_name: String, [INFO] [stdout] 50 | pub address: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ApprovalStatus` 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 `stop_heartbeats` and `smoke_test` are never used [INFO] [stdout] --> src/core/execution/live.rs:141:18 [INFO] [stdout] | [INFO] [stdout] 100 | impl LiveExecutor { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 141 | pub async fn stop_heartbeats(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 626 | pub async fn smoke_test(&self, token_id: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `max_position_size_usd` is never read [INFO] [stdout] --> src/core/execution/risk.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct RiskConfig { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 58 | pub max_position_size_usd: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskConfig` 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/core/execution/risk.rs:219:8 [INFO] [stdout] | [INFO] [stdout] 128 | impl RiskManager { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 219 | fn save_state(&self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 301 | pub fn record_position_closed(&mut self, pnl: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn halt(&mut self, reason: &str) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub fn daily_reset(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 372 | pub fn balance(&self) -> f64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 377 | pub fn update_balance(&mut self, balance: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 391 | pub fn daily_pnl(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub fn cumulative_pnl(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 409 | pub fn peak_cumulative_pnl(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 414 | pub fn current_drawdown(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | pub fn config(&self) -> &RiskConfig { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ApiLatencyTracker` is never constructed [INFO] [stdout] --> src/core/infrastructure/latency.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct ApiLatencyTracker { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/infrastructure/latency.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl ApiLatencyTracker { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 12 | pub fn new(max_samples: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn record(&mut self, latency_ms: f64) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | fn percentile(&self, pct: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn report(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn p50(&self) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn p95(&self) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn count(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `state` are never used [INFO] [stdout] --> src/core/infrastructure/recovery.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl CircuitBreaker { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 30 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn state(&self) -> CircuitState { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_config` and `recent_trades_for` are never used [INFO] [stdout] --> src/core/monitor/auto_trade.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 144 | impl AutoTradeState { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn get_config(&self, asset: &str, window: u32) -> Option<&AutoTradeConfig> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn recent_trades_for( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_log_full_books`, `flush`, and `retention_days` are never used [INFO] [stdout] --> src/core/monitor/logger.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 130 | impl DataLogger { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn set_log_full_books(&self, full: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 273 | pub async fn flush(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn retention_days(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_background_tasks` is never used [INFO] [stdout] --> src/core/monitor/poller.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn spawn_background_tasks( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fetched_at_utc` is never read [INFO] [stdout] --> src/core/monitor/state.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct TimestampedPrice { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 44 | pub fetched_at_utc: DateTime, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TimestampedPrice` 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 `token_id`, `best_bid`, and `best_ask` are never read [INFO] [stdout] --> src/core/monitor/state.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct MarketSnapshot { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 64 | pub token_id: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub best_bid: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 71 | pub best_ask: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketSnapshot` 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 `token_id` and `old_spread_pct` are never read [INFO] [stdout] --> src/core/monitor/state.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 80 | SpreadNarrowing { [INFO] [stdout] | --------------- fields in this variant [INFO] [stdout] 81 | token_id: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 82 | market_name: String, [INFO] [stdout] 83 | old_spread_pct: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AlertKind` 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 `old_depth` is never read [INFO] [stdout] --> src/core/monitor/state.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 86 | DepthSpike { [INFO] [stdout] | ---------- field in this variant [INFO] [stdout] ... [INFO] [stdout] 90 | old_depth: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AlertKind` 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 `token_id` and `price` are never read [INFO] [stdout] --> src/core/monitor/state.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 94 | WhaleTrade { [INFO] [stdout] | ---------- fields in this variant [INFO] [stdout] 95 | token_id: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | price: f64, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AlertKind` 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 `window_start_ts` is never read [INFO] [stdout] --> src/core/monitor/state.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 101 | WindowApproaching { [INFO] [stdout] | ----------------- field in this variant [INFO] [stdout] ... [INFO] [stdout] 104 | window_start_ts: i64, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AlertKind` 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 `inner` is never used [INFO] [stdout] --> src/core/monitor/state.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 191 | impl SharedState { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn inner(&self) -> &Arc> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `active_short_term_token_ids` is never used [INFO] [stdout] --> src/core/monitor/state.rs:311:12 [INFO] [stdout] | [INFO] [stdout] 257 | impl ServerState { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 311 | pub fn active_short_term_token_ids(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `open_count` is never read [INFO] [stdout] --> src/core/paper/portfolio.rs:230:9 [INFO] [stdout] | [INFO] [stdout] 220 | pub struct PortfolioStats { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | pub open_count: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PortfolioStats` 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 `wins` is never read [INFO] [stdout] --> src/core/paper/portfolio.rs:238:9 [INFO] [stdout] | [INFO] [stdout] 236 | pub struct GroupStats { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 237 | pub total_trades: usize, [INFO] [stdout] 238 | pub wins: usize, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GroupStats` 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_spot_price` and `get_kline_at` are never used [INFO] [stdout] --> src/core/providers/binance.rs:60:18 [INFO] [stdout] | [INFO] [stdout] 47 | impl BinanceClient { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 60 | pub async fn get_spot_price(&self, symbol: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub async fn get_kline_at( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `received_at` is never read [INFO] [stdout] --> src/core/providers/chainlink.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ChainlinkPriceUpdate { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 28 | pub received_at: Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ChainlinkPriceUpdate` 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 `subscribe` is never used [INFO] [stdout] --> src/core/providers/chainlink.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl ChainlinkRtds { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn subscribe(&self) -> broadcast::Receiver { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `daily_above_slug` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn daily_above_slug(asset: &str, date: NaiveDate) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `daily_updown_slug` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn daily_updown_slug(asset: &str, date: NaiveDate) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `daily_range_slug` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn daily_range_slug(asset: &str, date: NaiveDate) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hourly_slug` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn hourly_slug(asset: &str, date: NaiveDate, hour: u32) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `weekly_slug` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn weekly_slug(asset: &str, month_num: u32, day1: u32, day2: u32) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch_market_by_slug` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:361:14 [INFO] [stdout] | [INFO] [stdout] 361 | pub async fn fetch_market_by_slug( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MarketWithSettlement` is never constructed [INFO] [stdout] --> src/core/providers/gamma.rs:377:12 [INFO] [stdout] | [INFO] [stdout] 377 | pub struct MarketWithSettlement { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch_market_with_settlement` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:385:14 [INFO] [stdout] | [INFO] [stdout] 385 | pub async fn fetch_market_with_settlement( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `daily_token_ids` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:838:8 [INFO] [stdout] | [INFO] [stdout] 838 | pub fn daily_token_ids(markets: &[MarketConfig]) -> Vec<(String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `short_term_token_ids` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:850:8 [INFO] [stdout] | [INFO] [stdout] 850 | pub fn short_term_token_ids( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `monthly_token_ids` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:874:8 [INFO] [stdout] | [INFO] [stdout] 874 | pub fn monthly_token_ids(markets: &[MarketConfig]) -> Vec<(String, String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_order_book_timed`, `is_operational`, `dead_token_count`, `get_prices_history`, and `get_prices_history_for_range` are never used [INFO] [stdout] --> src/core/providers/polymarket.rs:69:18 [INFO] [stdout] | [INFO] [stdout] 34 | impl PolymarketClient { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub async fn get_order_book_timed(&self, token_id: &str) -> Result<(OrderBook, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub async fn is_operational(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub async fn dead_token_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub async fn get_prices_history(&self, token_id: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub async fn get_prices_history_for_range( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `market_type` and `side` are never read [INFO] [stdout] --> src/core/providers/resolver.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct ResolvedMarket { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | pub market_type: MarketType, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 18 | pub side: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResolvedMarket` 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: variants `Hourly` and `Weekly` are never constructed [INFO] [stdout] --> src/core/providers/resolver.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum MarketType { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 25 | Hourly, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | Weekly, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketType` 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 `size` and `timestamp_ms` are never read [INFO] [stdout] --> src/core/providers/trades_ws.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct PolymarketTradeEvent { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub size: f64, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub timestamp_ms: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PolymarketTradeEvent` 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 `subscribe` is never used [INFO] [stdout] --> src/core/providers/trades_ws.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl PolymarketTradesWs { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn subscribe(&self) -> broadcast::Receiver { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `depth_for_side`, `simulate_fill`, `check_depth`, and `limit_order_price` are never used [INFO] [stdout] --> src/core/types.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl OrderBook { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn depth_for_side(&self, side: Side, max_slippage_pct: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn simulate_fill(&self, side: Side, quantity: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn check_depth(&self, side: Side, size_usd: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 299 | pub fn limit_order_price(&self, side: Side, offset: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `best_price` is never read [INFO] [stdout] --> src/core/types.rs:325:9 [INFO] [stdout] | [INFO] [stdout] 319 | pub struct FillResult { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 325 | pub best_price: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FillResult` 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 `DepthCheck` is never constructed [INFO] [stdout] --> src/core/types.rs:331:12 [INFO] [stdout] | [INFO] [stdout] 331 | pub struct DepthCheck { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExitReason` is never used [INFO] [stdout] --> src/core/types.rs:392:10 [INFO] [stdout] | [INFO] [stdout] 392 | pub enum ExitReason { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `otm_percent` is never used [INFO] [stdout] --> src/core/types.rs:436:12 [INFO] [stdout] | [INFO] [stdout] 426 | impl MarketConfig { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 436 | pub fn otm_percent(&self, current_price: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SpotPriceHistory` is never constructed [INFO] [stdout] --> src/core/types.rs:480:12 [INFO] [stdout] | [INFO] [stdout] 480 | pub struct SpotPriceHistory { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/types.rs:486:12 [INFO] [stdout] | [INFO] [stdout] 485 | impl SpotPriceHistory { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 486 | pub fn new(max_age_secs: u64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 493 | pub fn record(&mut self, timestamp_ms: i64, price: f64) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 505 | pub fn price_at(&self, target_ms: i64) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 528 | pub fn price_at_checked(&self, target_ms: i64, max_diff_ms: i64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 555 | pub fn latest_with_ts(&self) -> Option<(i64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 559 | pub fn latest(&self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 563 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 567 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_auto.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 193 | pub struct GetAutoTradeStatusParams { [INFO] [stdout] | ------------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 199 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetAutoTradeStatusParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_book.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct GetOrderBookParams { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 28 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetOrderBookParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_market.rs:309:9 [INFO] [stdout] | [INFO] [stdout] 303 | pub struct GetActiveWindowParams { [INFO] [stdout] | --------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 309 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetActiveWindowParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_market.rs:457:9 [INFO] [stdout] | [INFO] [stdout] 451 | pub struct GetWindowBriefingParams { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 457 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetWindowBriefingParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_market.rs:640:9 [INFO] [stdout] | [INFO] [stdout] 636 | pub struct GetSpotPriceParams { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 640 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetSpotPriceParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_monitor.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct GetAlertsParams { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 20 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetAlertsParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `side` is never read [INFO] [stdout] --> src/mcp/tools_paper.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct PaperTradeParams { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 22 | pub side: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PaperTradeParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_paper.rs:143:9 [INFO] [stdout] | [INFO] [stdout] 139 | pub struct GetPaperPortfolioParams { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 143 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetPaperPortfolioParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_trading.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct GetBalanceParams { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 13 | /// Output format: "text" (default) or "json" [INFO] [stdout] 14 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetBalanceParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_trading.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct GetPositionsParams { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 41 | /// Output format: "text" (default) or "json" [INFO] [stdout] 42 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetPositionsParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 04s [INFO] running `Command { std: "docker" "inspect" "84f3ff2fba7db39dd913e4b9a62f51d8c500a661d9271036005f5c0d1c5cde5f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "84f3ff2fba7db39dd913e4b9a62f51d8c500a661d9271036005f5c0d1c5cde5f", kill_on_drop: false }` [INFO] [stdout] 84f3ff2fba7db39dd913e4b9a62f51d8c500a661d9271036005f5c0d1c5cde5f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f168841c0d1b4d971ec8fd88198e55a14786ab4179755aef0a08a3cdde870343 [INFO] running `Command { std: "docker" "start" "-a" "f168841c0d1b4d971ec8fd88198e55a14786ab4179755aef0a08a3cdde870343", kill_on_drop: false }` [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling reqwest v0.13.2 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling alloy-transport-http v1.7.3 [INFO] [stderr] Compiling alloy-rpc-client v1.7.3 [INFO] [stderr] Compiling alloy-provider v1.7.3 [INFO] [stderr] Compiling alloy-contract v1.7.3 [INFO] [stderr] Compiling alloy v1.7.3 [INFO] [stderr] Compiling polymarket-client-sdk v0.4.4 [INFO] [stderr] Compiling crypto-conduit-mcp v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `interval_min` [INFO] [stdout] --> src/core/providers/gamma.rs:919:9 [INFO] [stdout] | [INFO] [stdout] 919 | let interval_min = (interval_secs / 60) as u32; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval_min` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binance` [INFO] [stdout] --> src/mcp/tools_market.rs:700:5 [INFO] [stdout] | [INFO] [stdout] 700 | binance: &crate::core::providers::binance::BinanceClient, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binance` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `elapsed_buckets` is never read [INFO] [stdout] --> src/core/analysis/fair_value.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 224 | pub struct EmpiricalDistribution { [INFO] [stdout] | --------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | elapsed_buckets: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EmpiricalDistribution` has derived impls for the traits `Clone` and `Debug`, 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: fields `bid_depth_usd`, `levels_for_100`, `best_ask`, and `best_bid` are never read [INFO] [stdout] --> src/core/analysis/microstructure.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct TradeabilityAssessment { [INFO] [stdout] | ---------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | pub bid_depth_usd: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub levels_for_100: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 18 | /// Best ask price (entry price for buyers) [INFO] [stdout] 19 | pub best_ask: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 20 | /// Best bid price (exit price for sellers) [INFO] [stdout] 21 | pub best_bid: f64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TradeabilityAssessment` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_prices` is never used [INFO] [stdout] --> src/core/analysis/momentum.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | fn make_prices(start_ts: i64, interval_ms: i64, values: &[f64]) -> Vec<(i64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `address` is never read [INFO] [stdout] --> src/core/execution/live.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct ApprovalStatus { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 49 | pub contract_name: String, [INFO] [stdout] 50 | pub address: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ApprovalStatus` 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 `stop_heartbeats` and `smoke_test` are never used [INFO] [stdout] --> src/core/execution/live.rs:141:18 [INFO] [stdout] | [INFO] [stdout] 100 | impl LiveExecutor { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 141 | pub async fn stop_heartbeats(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 626 | pub async fn smoke_test(&self, token_id: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `max_position_size_usd` is never read [INFO] [stdout] --> src/core/execution/risk.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct RiskConfig { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 58 | pub max_position_size_usd: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskConfig` 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 `balance`, `update_balance`, `cumulative_pnl`, `peak_cumulative_pnl`, and `config` are never used [INFO] [stdout] --> src/core/execution/risk.rs:372:12 [INFO] [stdout] | [INFO] [stdout] 128 | impl RiskManager { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 372 | pub fn balance(&self) -> f64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 377 | pub fn update_balance(&mut self, balance: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub fn cumulative_pnl(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 409 | pub fn peak_cumulative_pnl(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | pub fn config(&self) -> &RiskConfig { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `report` is never used [INFO] [stdout] --> src/core/infrastructure/latency.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl ApiLatencyTracker { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn report(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_config` is never used [INFO] [stdout] --> src/core/monitor/auto_trade.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 144 | impl AutoTradeState { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn get_config(&self, asset: &str, window: u32) -> Option<&AutoTradeConfig> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_log_full_books` and `retention_days` are never used [INFO] [stdout] --> src/core/monitor/logger.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 130 | impl DataLogger { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn set_log_full_books(&self, full: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn retention_days(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_background_tasks` is never used [INFO] [stdout] --> src/core/monitor/poller.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn spawn_background_tasks( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fetched_at_utc` is never read [INFO] [stdout] --> src/core/monitor/state.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct TimestampedPrice { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 44 | pub fetched_at_utc: DateTime, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TimestampedPrice` 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 `token_id` and `old_spread_pct` are never read [INFO] [stdout] --> src/core/monitor/state.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 80 | SpreadNarrowing { [INFO] [stdout] | --------------- fields in this variant [INFO] [stdout] 81 | token_id: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 82 | market_name: String, [INFO] [stdout] 83 | old_spread_pct: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AlertKind` 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 `old_depth` is never read [INFO] [stdout] --> src/core/monitor/state.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 86 | DepthSpike { [INFO] [stdout] | ---------- field in this variant [INFO] [stdout] ... [INFO] [stdout] 90 | old_depth: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AlertKind` 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 `token_id` and `price` are never read [INFO] [stdout] --> src/core/monitor/state.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 94 | WhaleTrade { [INFO] [stdout] | ---------- fields in this variant [INFO] [stdout] 95 | token_id: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | price: f64, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AlertKind` 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 `open_count` is never read [INFO] [stdout] --> src/core/paper/portfolio.rs:230:9 [INFO] [stdout] | [INFO] [stdout] 220 | pub struct PortfolioStats { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | pub open_count: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PortfolioStats` 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_spot_price` and `get_kline_at` are never used [INFO] [stdout] --> src/core/providers/binance.rs:60:18 [INFO] [stdout] | [INFO] [stdout] 47 | impl BinanceClient { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 60 | pub async fn get_spot_price(&self, symbol: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub async fn get_kline_at( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `received_at` is never read [INFO] [stdout] --> src/core/providers/chainlink.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ChainlinkPriceUpdate { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 28 | pub received_at: Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ChainlinkPriceUpdate` 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 `subscribe` is never used [INFO] [stdout] --> src/core/providers/chainlink.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl ChainlinkRtds { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn subscribe(&self) -> broadcast::Receiver { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch_market_by_slug` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:361:14 [INFO] [stdout] | [INFO] [stdout] 361 | pub async fn fetch_market_by_slug( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MarketWithSettlement` is never constructed [INFO] [stdout] --> src/core/providers/gamma.rs:377:12 [INFO] [stdout] | [INFO] [stdout] 377 | pub struct MarketWithSettlement { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch_market_with_settlement` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:385:14 [INFO] [stdout] | [INFO] [stdout] 385 | pub async fn fetch_market_with_settlement( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `daily_token_ids` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:838:8 [INFO] [stdout] | [INFO] [stdout] 838 | pub fn daily_token_ids(markets: &[MarketConfig]) -> Vec<(String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `short_term_token_ids` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:850:8 [INFO] [stdout] | [INFO] [stdout] 850 | pub fn short_term_token_ids( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `monthly_token_ids` is never used [INFO] [stdout] --> src/core/providers/gamma.rs:874:8 [INFO] [stdout] | [INFO] [stdout] 874 | pub fn monthly_token_ids(markets: &[MarketConfig]) -> Vec<(String, String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_order_book_timed`, `is_operational`, `dead_token_count`, `get_prices_history`, and `get_prices_history_for_range` are never used [INFO] [stdout] --> src/core/providers/polymarket.rs:69:18 [INFO] [stdout] | [INFO] [stdout] 34 | impl PolymarketClient { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub async fn get_order_book_timed(&self, token_id: &str) -> Result<(OrderBook, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub async fn is_operational(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub async fn dead_token_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub async fn get_prices_history(&self, token_id: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub async fn get_prices_history_for_range( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Hourly` and `Weekly` are never constructed [INFO] [stdout] --> src/core/providers/resolver.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum MarketType { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 25 | Hourly, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | Weekly, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketType` 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 `size` and `timestamp_ms` are never read [INFO] [stdout] --> src/core/providers/trades_ws.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct PolymarketTradeEvent { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub size: f64, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub timestamp_ms: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PolymarketTradeEvent` 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 `subscribe` is never used [INFO] [stdout] --> src/core/providers/trades_ws.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl PolymarketTradesWs { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn subscribe(&self) -> broadcast::Receiver { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `depth_for_side`, `simulate_fill`, `check_depth`, and `limit_order_price` are never used [INFO] [stdout] --> src/core/types.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl OrderBook { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn depth_for_side(&self, side: Side, max_slippage_pct: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn simulate_fill(&self, side: Side, quantity: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn check_depth(&self, side: Side, size_usd: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 299 | pub fn limit_order_price(&self, side: Side, offset: f64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `best_price` is never read [INFO] [stdout] --> src/core/types.rs:325:9 [INFO] [stdout] | [INFO] [stdout] 319 | pub struct FillResult { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 325 | pub best_price: f64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FillResult` 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 `DepthCheck` is never constructed [INFO] [stdout] --> src/core/types.rs:331:12 [INFO] [stdout] | [INFO] [stdout] 331 | pub struct DepthCheck { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExitReason` is never used [INFO] [stdout] --> src/core/types.rs:392:10 [INFO] [stdout] | [INFO] [stdout] 392 | pub enum ExitReason { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `otm_percent` is never used [INFO] [stdout] --> src/core/types.rs:436:12 [INFO] [stdout] | [INFO] [stdout] 426 | impl MarketConfig { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 436 | pub fn otm_percent(&self, current_price: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SpotPriceHistory` is never constructed [INFO] [stdout] --> src/core/types.rs:480:12 [INFO] [stdout] | [INFO] [stdout] 480 | pub struct SpotPriceHistory { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/types.rs:486:12 [INFO] [stdout] | [INFO] [stdout] 485 | impl SpotPriceHistory { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 486 | pub fn new(max_age_secs: u64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 493 | pub fn record(&mut self, timestamp_ms: i64, price: f64) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 505 | pub fn price_at(&self, target_ms: i64) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 528 | pub fn price_at_checked(&self, target_ms: i64, max_diff_ms: i64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 555 | pub fn latest_with_ts(&self) -> Option<(i64, f64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 559 | pub fn latest(&self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 563 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 567 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_auto.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 193 | pub struct GetAutoTradeStatusParams { [INFO] [stdout] | ------------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 199 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetAutoTradeStatusParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_book.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct GetOrderBookParams { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 28 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetOrderBookParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_market.rs:309:9 [INFO] [stdout] | [INFO] [stdout] 303 | pub struct GetActiveWindowParams { [INFO] [stdout] | --------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 309 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetActiveWindowParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_market.rs:457:9 [INFO] [stdout] | [INFO] [stdout] 451 | pub struct GetWindowBriefingParams { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 457 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetWindowBriefingParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_market.rs:640:9 [INFO] [stdout] | [INFO] [stdout] 636 | pub struct GetSpotPriceParams { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 640 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetSpotPriceParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_monitor.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct GetAlertsParams { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 20 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetAlertsParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `side` is never read [INFO] [stdout] --> src/mcp/tools_paper.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct PaperTradeParams { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 22 | pub side: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PaperTradeParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_paper.rs:143:9 [INFO] [stdout] | [INFO] [stdout] 139 | pub struct GetPaperPortfolioParams { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 143 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetPaperPortfolioParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_trading.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct GetBalanceParams { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 13 | /// Output format: "text" (default) or "json" [INFO] [stdout] 14 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetBalanceParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `format` is never read [INFO] [stdout] --> src/mcp/tools_trading.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct GetPositionsParams { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 41 | /// Output format: "text" (default) or "json" [INFO] [stdout] 42 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetPositionsParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 43.38s [INFO] running `Command { std: "docker" "inspect" "f168841c0d1b4d971ec8fd88198e55a14786ab4179755aef0a08a3cdde870343", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f168841c0d1b4d971ec8fd88198e55a14786ab4179755aef0a08a3cdde870343", kill_on_drop: false }` [INFO] [stdout] f168841c0d1b4d971ec8fd88198e55a14786ab4179755aef0a08a3cdde870343 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] ea833825c9a7b3d412651075114f5618f9e63e3fedc37860cbcd8e6d17dbb871 [INFO] running `Command { std: "docker" "start" "-a" "ea833825c9a7b3d412651075114f5618f9e63e3fedc37860cbcd8e6d17dbb871", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `interval_min` [INFO] [stderr] --> src/core/providers/gamma.rs:919:9 [INFO] [stderr] | [INFO] [stderr] 919 | let interval_min = (interval_secs / 60) as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval_min` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `binance` [INFO] [stderr] --> src/mcp/tools_market.rs:700:5 [INFO] [stderr] | [INFO] [stderr] 700 | binance: &crate::core::providers::binance::BinanceClient, [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binance` [INFO] [stderr] [INFO] [stderr] warning: field `elapsed_buckets` is never read [INFO] [stderr] --> src/core/analysis/fair_value.rs:230:5 [INFO] [stderr] | [INFO] [stderr] 224 | pub struct EmpiricalDistribution { [INFO] [stderr] | --------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 230 | elapsed_buckets: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `EmpiricalDistribution` has derived impls for the traits `Clone` and `Debug`, 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: fields `bid_depth_usd`, `levels_for_100`, `best_ask`, and `best_bid` are never read [INFO] [stderr] --> src/core/analysis/microstructure.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 7 | pub struct TradeabilityAssessment { [INFO] [stderr] | ---------------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 13 | pub bid_depth_usd: f64, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 17 | pub levels_for_100: usize, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 18 | /// Best ask price (entry price for buyers) [INFO] [stderr] 19 | pub best_ask: f64, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 20 | /// Best bid price (exit price for sellers) [INFO] [stderr] 21 | pub best_bid: f64, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TradeabilityAssessment` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `make_prices` is never used [INFO] [stderr] --> src/core/analysis/momentum.rs:145:8 [INFO] [stderr] | [INFO] [stderr] 145 | fn make_prices(start_ts: i64, interval_ms: i64, values: &[f64]) -> Vec<(i64, f64)> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `address` is never read [INFO] [stderr] --> src/core/execution/live.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 48 | pub struct ApprovalStatus { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 49 | pub contract_name: String, [INFO] [stderr] 50 | pub address: String, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ApprovalStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `stop_heartbeats` and `smoke_test` are never used [INFO] [stderr] --> src/core/execution/live.rs:141:18 [INFO] [stderr] | [INFO] [stderr] 100 | impl LiveExecutor { [INFO] [stderr] | ----------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 141 | pub async fn stop_heartbeats(&mut self) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 626 | pub async fn smoke_test(&self, token_id: &str) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `max_position_size_usd` is never read [INFO] [stderr] --> src/core/execution/risk.rs:58:9 [INFO] [stderr] | [INFO] [stderr] 50 | pub struct RiskConfig { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 58 | pub max_position_size_usd: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `RiskConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `balance`, `update_balance`, `cumulative_pnl`, `peak_cumulative_pnl`, and `config` are never used [INFO] [stderr] --> src/core/execution/risk.rs:372:12 [INFO] [stderr] | [INFO] [stderr] 128 | impl RiskManager { [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 372 | pub fn balance(&self) -> f64 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 377 | pub fn update_balance(&mut self, balance: f64) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 396 | pub fn cumulative_pnl(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 409 | pub fn peak_cumulative_pnl(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 419 | pub fn config(&self) -> &RiskConfig { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `report` is never used [INFO] [stderr] --> src/core/infrastructure/latency.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 11 | impl ApiLatencyTracker { [INFO] [stderr] | ---------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 37 | pub fn report(&self) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `get_config` is never used [INFO] [stderr] --> src/core/monitor/auto_trade.rs:198:12 [INFO] [stderr] | [INFO] [stderr] 144 | impl AutoTradeState { [INFO] [stderr] | ------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 198 | pub fn get_config(&self, asset: &str, window: u32) -> Option<&AutoTradeConfig> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `set_log_full_books` and `retention_days` are never used [INFO] [stderr] --> src/core/monitor/logger.rs:161:12 [INFO] [stderr] | [INFO] [stderr] 130 | impl DataLogger { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 161 | pub fn set_log_full_books(&self, full: bool) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 279 | pub fn retention_days(&self) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `spawn_background_tasks` is never used [INFO] [stderr] --> src/core/monitor/poller.rs:80:8 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn spawn_background_tasks( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `fetched_at_utc` is never read [INFO] [stderr] --> src/core/monitor/state.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 41 | pub struct TimestampedPrice { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 44 | pub fetched_at_utc: DateTime, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TimestampedPrice` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `token_id` and `old_spread_pct` are never read [INFO] [stderr] --> src/core/monitor/state.rs:81:9 [INFO] [stderr] | [INFO] [stderr] 80 | SpreadNarrowing { [INFO] [stderr] | --------------- fields in this variant [INFO] [stderr] 81 | token_id: String, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 82 | market_name: String, [INFO] [stderr] 83 | old_spread_pct: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AlertKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `old_depth` is never read [INFO] [stderr] --> src/core/monitor/state.rs:90:9 [INFO] [stderr] | [INFO] [stderr] 86 | DepthSpike { [INFO] [stderr] | ---------- field in this variant [INFO] [stderr] ... [INFO] [stderr] 90 | old_depth: f64, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AlertKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `token_id` and `price` are never read [INFO] [stderr] --> src/core/monitor/state.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 94 | WhaleTrade { [INFO] [stderr] | ---------- fields in this variant [INFO] [stderr] 95 | token_id: String, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 99 | price: f64, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AlertKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `open_count` is never read [INFO] [stderr] --> src/core/paper/portfolio.rs:230:9 [INFO] [stderr] | [INFO] [stderr] 220 | pub struct PortfolioStats { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 230 | pub open_count: usize, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PortfolioStats` 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_spot_price` and `get_kline_at` are never used [INFO] [stderr] --> src/core/providers/binance.rs:60:18 [INFO] [stderr] | [INFO] [stderr] 47 | impl BinanceClient { [INFO] [stderr] | ------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 60 | pub async fn get_spot_price(&self, symbol: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 100 | pub async fn get_kline_at( [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `received_at` is never read [INFO] [stderr] --> src/core/providers/chainlink.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 23 | pub struct ChainlinkPriceUpdate { [INFO] [stderr] | -------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 28 | pub received_at: Instant, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ChainlinkPriceUpdate` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `subscribe` is never used [INFO] [stderr] --> src/core/providers/chainlink.rs:71:12 [INFO] [stderr] | [INFO] [stderr] 49 | impl ChainlinkRtds { [INFO] [stderr] | ------------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 71 | pub fn subscribe(&self) -> broadcast::Receiver { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `fetch_market_by_slug` is never used [INFO] [stderr] --> src/core/providers/gamma.rs:361:14 [INFO] [stderr] | [INFO] [stderr] 361 | pub async fn fetch_market_by_slug( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `MarketWithSettlement` is never constructed [INFO] [stderr] --> src/core/providers/gamma.rs:377:12 [INFO] [stderr] | [INFO] [stderr] 377 | pub struct MarketWithSettlement { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `fetch_market_with_settlement` is never used [INFO] [stderr] --> src/core/providers/gamma.rs:385:14 [INFO] [stderr] | [INFO] [stderr] 385 | pub async fn fetch_market_with_settlement( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `daily_token_ids` is never used [INFO] [stderr] --> src/core/providers/gamma.rs:838:8 [INFO] [stderr] | [INFO] [stderr] 838 | pub fn daily_token_ids(markets: &[MarketConfig]) -> Vec<(String, String, String)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `short_term_token_ids` is never used [INFO] [stderr] --> src/core/providers/gamma.rs:850:8 [INFO] [stderr] | [INFO] [stderr] 850 | pub fn short_term_token_ids( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `monthly_token_ids` is never used [INFO] [stderr] --> src/core/providers/gamma.rs:874:8 [INFO] [stderr] | [INFO] [stderr] 874 | pub fn monthly_token_ids(markets: &[MarketConfig]) -> Vec<(String, String, String, String)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `get_order_book_timed`, `is_operational`, `dead_token_count`, `get_prices_history`, and `get_prices_history_for_range` are never used [INFO] [stderr] --> src/core/providers/polymarket.rs:69:18 [INFO] [stderr] | [INFO] [stderr] 34 | impl PolymarketClient { [INFO] [stderr] | --------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 69 | pub async fn get_order_book_timed(&self, token_id: &str) -> Result<(OrderBook, f64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 172 | pub async fn is_operational(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 176 | pub async fn dead_token_count(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 185 | pub async fn get_prices_history(&self, token_id: &str) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 243 | pub async fn get_prices_history_for_range( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variants `Hourly` and `Weekly` are never constructed [INFO] [stderr] --> src/core/providers/resolver.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 22 | pub enum MarketType { [INFO] [stderr] | ---------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 25 | Hourly, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 29 | Weekly, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MarketType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `size` and `timestamp_ms` are never read [INFO] [stderr] --> src/core/providers/trades_ws.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct PolymarketTradeEvent { [INFO] [stderr] | -------------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 19 | pub size: f64, [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 23 | pub timestamp_ms: u64, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PolymarketTradeEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `subscribe` is never used [INFO] [stderr] --> src/core/providers/trades_ws.rs:58:12 [INFO] [stderr] | [INFO] [stderr] 39 | impl PolymarketTradesWs { [INFO] [stderr] | ----------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 58 | pub fn subscribe(&self) -> broadcast::Receiver { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `depth_for_side`, `simulate_fill`, `check_depth`, and `limit_order_price` are never used [INFO] [stderr] --> src/core/types.rs:155:12 [INFO] [stderr] | [INFO] [stderr] 80 | impl OrderBook { [INFO] [stderr] | -------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 155 | pub fn depth_for_side(&self, side: Side, max_slippage_pct: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 226 | pub fn simulate_fill(&self, side: Side, quantity: f64) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 279 | pub fn check_depth(&self, side: Side, size_usd: f64) -> Option { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 299 | pub fn limit_order_price(&self, side: Side, offset: f64) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `best_price` is never read [INFO] [stderr] --> src/core/types.rs:325:9 [INFO] [stderr] | [INFO] [stderr] 319 | pub struct FillResult { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 325 | pub best_price: f64, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FillResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: struct `DepthCheck` is never constructed [INFO] [stderr] --> src/core/types.rs:331:12 [INFO] [stderr] | [INFO] [stderr] 331 | pub struct DepthCheck { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `ExitReason` is never used [INFO] [stderr] --> src/core/types.rs:392:10 [INFO] [stderr] | [INFO] [stderr] 392 | pub enum ExitReason { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `otm_percent` is never used [INFO] [stderr] --> src/core/types.rs:436:12 [INFO] [stderr] | [INFO] [stderr] 426 | impl MarketConfig { [INFO] [stderr] | ----------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 436 | pub fn otm_percent(&self, current_price: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `SpotPriceHistory` is never constructed [INFO] [stderr] --> src/core/types.rs:480:12 [INFO] [stderr] | [INFO] [stderr] 480 | pub struct SpotPriceHistory { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/core/types.rs:486:12 [INFO] [stderr] | [INFO] [stderr] 485 | impl SpotPriceHistory { [INFO] [stderr] | --------------------- associated items in this implementation [INFO] [stderr] 486 | pub fn new(max_age_secs: u64) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 493 | pub fn record(&mut self, timestamp_ms: i64, price: f64) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 505 | pub fn price_at(&self, target_ms: i64) -> Option { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 528 | pub fn price_at_checked(&self, target_ms: i64, max_diff_ms: i64) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 555 | pub fn latest_with_ts(&self) -> Option<(i64, f64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 559 | pub fn latest(&self) -> Option { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 563 | pub fn len(&self) -> usize { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 567 | pub fn is_empty(&self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_auto.rs:199:9 [INFO] [stderr] | [INFO] [stderr] 193 | pub struct GetAutoTradeStatusParams { [INFO] [stderr] | ------------------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 199 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetAutoTradeStatusParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_book.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 18 | pub struct GetOrderBookParams { [INFO] [stderr] | ------------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 28 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetOrderBookParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_market.rs:309:9 [INFO] [stderr] | [INFO] [stderr] 303 | pub struct GetActiveWindowParams { [INFO] [stderr] | --------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 309 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetActiveWindowParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_market.rs:457:9 [INFO] [stderr] | [INFO] [stderr] 451 | pub struct GetWindowBriefingParams { [INFO] [stderr] | ----------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 457 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetWindowBriefingParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_market.rs:640:9 [INFO] [stderr] | [INFO] [stderr] 636 | pub struct GetSpotPriceParams { [INFO] [stderr] | ------------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 640 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetSpotPriceParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_monitor.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct GetAlertsParams { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 20 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetAlertsParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `side` is never read [INFO] [stderr] --> src/mcp/tools_paper.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 18 | pub struct PaperTradeParams { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 22 | pub side: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PaperTradeParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_paper.rs:143:9 [INFO] [stderr] | [INFO] [stderr] 139 | pub struct GetPaperPortfolioParams { [INFO] [stderr] | ----------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 143 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetPaperPortfolioParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_trading.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 12 | pub struct GetBalanceParams { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] 13 | /// Output format: "text" (default) or "json" [INFO] [stderr] 14 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetBalanceParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `format` is never read [INFO] [stderr] --> src/mcp/tools_trading.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 40 | pub struct GetPositionsParams { [INFO] [stderr] | ------------------ field in this struct [INFO] [stderr] 41 | /// Output format: "text" (default) or "json" [INFO] [stderr] 42 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetPositionsParams` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: `crypto-conduit-mcp` (bin "crypto-conduit-mcp" test) generated 48 warnings (run `cargo fix --bin "crypto-conduit-mcp" -p crypto-conduit-mcp --tests` to apply 2 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.86s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/crypto_conduit_mcp-7454e8a2d9032561) [INFO] [stdout] [INFO] [stdout] running 284 tests [INFO] [stdout] test core::analysis::book_dynamics::tests::test_depth_trend_display ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_empty_spreads ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_balanced_book ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_extended_empty_history ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_mild_ask_pressure ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_mild_bid_pressure ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_narrowing_trend ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_extended_filters_degenerate_books ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_extended_growing_depth ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_extended_with_history ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_strong_ask_pressure ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_strong_bid_pressure ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_spread_trend_display ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_stable_trend ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_too_few_spreads_for_trend ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_widening_trend ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_zero_depth ... ok [INFO] [stdout] test core::analysis::book_dynamics::tests::test_spread_stats ... ok [INFO] [stdout] test core::analysis::divergence::tests::test_divergence_overpriced ... ok [INFO] [stdout] test core::analysis::divergence::tests::test_divergence_underpriced ... ok [INFO] [stdout] test core::analysis::divergence::tests::test_fair_prob_down_move ... ok [INFO] [stdout] test core::analysis::divergence::tests::test_fair_prob_neutral ... ok [INFO] [stdout] test core::analysis::divergence::tests::test_spot_vs_strike ... ok [INFO] [stdout] test core::analysis::divergence::tests::test_fair_prob_up_move ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_cache_put_get ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_multi_strike_consistent ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_multi_strike_inconsistent ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_multi_strike_single ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_cache_miss ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_empirical_empty_klines ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_empirical_with_fallback ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_multi_strike_within_tolerance ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_near_expiry_direction_based ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_normal_cdf_neg_one ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_vol_cdf_deep_otm ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_normal_cdf_one ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_vol_cdf_deep_itm ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_normal_cdf_two ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_normal_cdf_symmetry ... ok [INFO] [stdout] test core::analysis::fees::tests::test_breakeven_at_50 ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_vol_cdf_expired ... ok [INFO] [stdout] test core::analysis::fees::tests::test_fee_at_half ... ok [INFO] [stdout] test core::analysis::fees::tests::test_breakeven_at_65 ... ok [INFO] [stdout] test core::analysis::fees::tests::test_ev_negative_below_breakeven ... ok [INFO] [stdout] test core::analysis::fees::tests::test_ev_positive_above_breakeven ... ok [INFO] [stdout] test core::analysis::fees::tests::test_fee_at_extremes ... ok [INFO] [stdout] test core::analysis::fees::tests::test_fee_symmetry ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_realized_vol_insufficient_data ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_realized_vol_trending ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_vol_cdf_more_time_widens ... ok [INFO] [stdout] test core::analysis::fees::tests::test_maker_lower_breakeven ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_vol_cdf_near_zero_time ... ok [INFO] [stdout] test core::analysis::fees::tests::test_maker_rebate ... ok [INFO] [stdout] test core::analysis::fees::tests::test_pnl_win_loss_relationship ... ok [INFO] [stdout] test core::analysis::microstructure::tests::test_empty_book ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_acceleration_positive ... ok [INFO] [stdout] test core::analysis::microstructure::tests::test_good_tradeability ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_upward_momentum ... ok [INFO] [stdout] test core::execution::config::tests::test_private_key_validation ... ok [INFO] [stdout] test core::execution::config::tests::test_risk_limits_defaults ... ok [INFO] [stdout] test core::execution::live::tests::test_hex_to_bytes32_invalid_length ... ok [INFO] [stdout] test core::analysis::microstructure::tests::test_untradeable_wide_spread ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_vol_cdf_higher_vol_widens ... ok [INFO] [stdout] test core::execution::live::tests::test_hex_to_bytes32_valid ... ok [INFO] [stdout] test core::execution::live::tests::test_hex_to_bytes32_with_prefix ... ok [INFO] [stdout] test core::execution::config::tests::test_config_display_redacts_key ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_vol_cdf_at_the_money ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_downward_momentum ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_flat_market ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_empty_prices ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_single_price ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_trend_labels ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_closest_price ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_normal_cdf_zero ... ok [INFO] [stdout] test core::analysis::momentum::tests::test_volatility_zero_for_flat ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_realized_vol_flat ... ok [INFO] [stdout] test core::execution::live::tests::test_parse_signature_type ... ok [INFO] [stdout] test core::execution::risk::tests::test_insufficient_balance ... ok [INFO] [stdout] test core::execution::risk::tests::test_manual_halt ... ok [INFO] [stdout] test core::execution::risk::tests::test_daily_loss_limit ... ok [INFO] [stdout] test core::execution::risk::tests::test_drawdown_halt_triggers ... ok [INFO] [stdout] test core::execution::risk::tests::test_state_persistence_same_day ... ok [INFO] [stdout] test core::execution::risk::tests::test_consecutive_losses_reset_on_win ... ok [INFO] [stdout] test core::infrastructure::latency::tests::test_empty_tracker ... ok [INFO] [stdout] test core::execution::risk::tests::test_can_trade_all_clear ... ok [INFO] [stdout] test core::infrastructure::latency::tests::test_percentiles ... ok [INFO] [stdout] test core::execution::risk::tests::test_from_risk_limits ... ok [INFO] [stdout] test core::infrastructure::latency::tests::test_single_sample ... ok [INFO] [stdout] test core::infrastructure::recovery::tests::test_circuit_breaker_clone_shares_state ... ok [INFO] [stdout] test core::infrastructure::recovery::tests::test_circuit_breaker_closed_by_default ... ok [INFO] [stdout] test core::infrastructure::recovery::tests::test_circuit_breaker_opens_after_threshold ... ok [INFO] [stdout] test core::infrastructure::recovery::tests::test_circuit_breaker_success_resets_failures ... ok [INFO] [stdout] test core::infrastructure::recovery::tests::test_reconnect_backoff_caps_at_max ... ok [INFO] [stdout] test core::infrastructure::recovery::tests::test_reconnect_backoff_doubles ... ok [INFO] [stdout] test core::infrastructure::recovery::tests::test_reconnect_backoff_reset ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_alert_display ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_depth_spike_alert ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_depth_spike_cooldown ... ok [INFO] [stdout] test core::infrastructure::latency::tests::test_max_samples_eviction ... ok [INFO] [stdout] test core::execution::risk::tests::test_max_positions ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_no_depth_spike_below_min_threshold ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_process_whale_trade_above_threshold ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_no_spread_alert_when_still_wide ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_no_depth_spike_small_change ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_process_whale_trade_below_threshold ... ok [INFO] [stdout] test core::execution::risk::tests::test_balance_updates_with_pnl ... ok [INFO] [stdout] test core::execution::risk::tests::test_drawdown_disabled_when_zero ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_process_whale_trade_high_price_boundary ... ok [INFO] [stdout] test core::execution::risk::tests::test_peak_updates_correctly ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_snapshot_from_book ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_spread_narrowing_alert ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_window_approaching_ignores_started ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_window_approaching_alert ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_auto_trade_mode_display ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_auto_trade_state_already_traded ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_auto_trade_config_key ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_auto_trade_state_set_config ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_all_pass ... ok [INFO] [stdout] test core::execution::risk::tests::test_state_persistence_different_day ... ok [INFO] [stdout] test core::execution::risk::tests::test_consecutive_losses ... ok [INFO] [stdout] test core::execution::risk::tests::test_is_halted_checks_all_conditions ... ok [INFO] [stdout] test core::execution::risk::tests::test_status_summary ... ok [INFO] [stdout] test core::execution::risk::tests::test_state_save_and_reload ... ok [INFO] [stdout] test core::execution::risk::tests::test_daily_reset ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_insufficient_move ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_auto_trade_state_persistence ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_already_traded ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_depth_too_low ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_forced_side_up ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_auto_trade_state_prune_conditions ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_enabled_configs ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_recent_trades_for_filter ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_down_direction ... ok [INFO] [stdout] test core::monitor::logger::tests::test_logger_disabled_noop ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_untradeable ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_recent_trades_ring_buffer ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_price_too_high ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_too_early ... ok [INFO] [stdout] test core::monitor::logger::tests::test_cleanup_old_logs ... ok [INFO] [stdout] test core::monitor::logger::tests::test_load_recent_order_books_empty_dir ... ok [INFO] [stdout] test core::monitor::alerts::tests::test_process_whale_trade_settlement_artifact ... ok [INFO] [stdout] test core::monitor::logger::tests::test_logger_full_books ... ok [INFO] [stdout] test core::monitor::logger::tests::test_load_recent_order_books ... ok [INFO] [stdout] test core::monitor::auto_trade::tests::test_check_entry_spread_too_wide ... ok [INFO] [stdout] test core::monitor::poller::tests::test_alert_config_defaults ... ok [INFO] [stdout] test core::monitor::poller::tests::test_poller_config_defaults ... ok [INFO] [stdout] test core::monitor::poller::tests::test_spawn_returns_handles ... ok [INFO] [stdout] test core::monitor::poller::tests::test_build_token_names ... ok [INFO] [stdout] test core::monitor::logger::tests::test_load_recent_order_books_corrupt_lines ... ok [INFO] [stdout] test core::monitor::logger::tests::test_logger_toggle ... ok [INFO] [stdout] test core::monitor::logger::tests::test_cleanup_zero_retention_keeps_all ... ok [INFO] [stdout] test core::monitor::state::tests::test_prune_whale_trades ... ok [INFO] [stdout] test core::monitor::state::tests::test_alert_ring_buffer_capacity ... ok [INFO] [stdout] test core::monitor::logger::tests::test_logger_writes_spot_prices ... ok [INFO] [stdout] test core::monitor::state::tests::test_active_short_term_token_ids ... ok [INFO] [stdout] test core::monitor::logger::tests::test_logger_writes_order_book ... ok [INFO] [stdout] test core::monitor::state::tests::test_shared_state_clone_shares_inner ... ok [INFO] [stdout] test core::monitor::state::tests::test_top_daily_monthly_token_ids ... ok [INFO] [stdout] test core::monitor::state::tests::test_timestamped_order_book_age ... ok [INFO] [stdout] test core::monitor::state::tests::test_timestamped_price_age ... ok [INFO] [stdout] test core::paper::engine::tests::test_did_win_logic ... ok [INFO] [stdout] test core::monitor::state::tests::test_whale_trade_ring_buffer ... ok [INFO] [stdout] test core::infrastructure::recovery::tests::test_circuit_breaker_half_open_after_timeout ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_empirical_always_up ... ok [INFO] [stdout] test core::paper::engine::tests::test_pnl_calculation_loss ... ok [INFO] [stdout] test core::paper::engine::tests::test_pnl_calculation_win ... ok [INFO] [stdout] test core::monitor::state::tests::test_history_ring_buffer ... ok [INFO] [stdout] test core::execution::risk::tests::test_drawdown_with_recovery ... ok [INFO] [stdout] test core::paper::engine::tests::test_close_position_invalid_price ... ok [INFO] [stdout] test core::paper::portfolio::tests::test_open_and_settled_queries ... ok [INFO] [stdout] test core::paper::portfolio::tests::test_price_bucket_boundaries ... ok [INFO] [stdout] test core::paper::portfolio::tests::test_stats_by_price_bucket ... ok [INFO] [stdout] test core::paper::engine::tests::test_close_position_basic ... ok [INFO] [stdout] test core::paper::portfolio::tests::test_stats_with_settled_positions ... ok [INFO] [stdout] test core::paper::engine::tests::test_close_position_pnl_math ... ok [INFO] [stdout] test core::providers::binance::tests::test_supported_symbols ... ok [INFO] [stdout] test core::providers::binance::tests::test_deserialize_ticker ... ok [INFO] [stdout] test core::paper::engine::tests::test_close_position_not_found ... ok [INFO] [stdout] test core::paper::engine::tests::test_open_position_basic ... ok [INFO] [stdout] test core::paper::engine::tests::test_close_position_already_settled ... ok [INFO] [stdout] test core::providers::chainlink::tests::test_all_symbols_count ... ok [INFO] [stdout] test core::providers::chainlink::tests::test_price_update_to_binance ... ok [INFO] [stdout] test core::paper::engine::tests::test_close_position_at_loss ... ok [INFO] [stdout] test core::paper::engine::tests::test_open_position_fee_calculation ... ok [INFO] [stdout] test core::providers::gamma::tests::test_asset_to_slug_name ... ok [INFO] [stdout] test core::paper::engine::tests::test_open_position_invalid_price ... ok [INFO] [stdout] test core::paper::portfolio::tests::test_portfolio_save_load_roundtrip ... ok [INFO] [stdout] test core::paper::engine::tests::test_persistence_roundtrip ... ok [INFO] [stdout] test core::providers::chainlink::tests::test_chainlink_to_binance ... ok [INFO] [stdout] test core::paper::portfolio::tests::test_empty_portfolio_stats ... ok [INFO] [stdout] test core::providers::gamma::tests::test_hourly_slug ... ok [INFO] [stdout] test core::providers::gamma::tests::test_month_short_name ... ok [INFO] [stdout] test core::providers::gamma::tests::test_short_term_slug ... ok [INFO] [stdout] test core::providers::gamma::tests::test_weekly_slug ... ok [INFO] [stdout] test core::providers::resolver::tests::test_fuzzy_daily_above ... ok [INFO] [stdout] test core::providers::resolver::tests::test_normalize_asset ... ok [INFO] [stdout] test core::providers::resolver::tests::test_direct_token_id ... ok [INFO] [stdout] test core::providers::resolver::tests::test_not_found ... ok [INFO] [stdout] test core::providers::resolver::tests::test_strict_allows_asset_query ... ok [INFO] [stdout] test core::providers::gamma::tests::test_daily_above_slug ... ok [INFO] [stdout] test core::providers::gamma::tests::test_daily_range_slug ... ok [INFO] [stdout] test core::providers::resolver::tests::test_structured_btc_5m_up ... ok [INFO] [stdout] test core::providers::gamma::tests::test_asset_to_underlying ... ok [INFO] [stdout] test core::providers::resolver::tests::test_fake_asset_not_found ... ok [INFO] [stdout] test core::providers::resolver::tests::test_strict_rejects_no_asset ... ok [INFO] [stdout] test core::providers::gamma::tests::test_daily_updown_slug ... ok [INFO] [stdout] test core::providers::gamma::tests::test_is_above ... ok [INFO] [stdout] test core::providers::resolver::tests::test_structured_match_prefers_active_window ... ok [INFO] [stdout] test core::providers::gamma::tests::test_parse_monthly_direction ... ok [INFO] [stdout] test core::paper::portfolio::tests::test_load_nonexistent_file ... ok [INFO] [stdout] test core::providers::resolver::tests::test_structured_eth_15m_down ... ok [INFO] [stdout] test core::providers::trades_ws::tests::test_parse_timestamp_already_millis ... ok [INFO] [stdout] test core::providers::trades_ws::tests::test_parse_f64_string ... ok [INFO] [stdout] test core::providers::trades_ws::tests::test_parse_f64_number ... ok [INFO] [stdout] test core::providers::trades_ws::tests::test_parse_f64_missing ... ok [INFO] [stdout] test mcp::formatter::tests::test_fmt_age_seconds ... ok [INFO] [stdout] test mcp::formatter::tests::test_fmt_pct ... ok [INFO] [stdout] test mcp::formatter::tests::test_fmt_usd_negative ... ok [INFO] [stdout] test mcp::formatter::tests::test_fmt_usd_small ... ok [INFO] [stdout] test core::paper::engine::tests::test_position_ids_increment ... ok [INFO] [stdout] test mcp::formatter::tests::test_fmt_age_minutes ... ok [INFO] [stdout] test mcp::formatter::tests::test_fmt_usd_large ... ok [INFO] [stdout] test mcp::formatter::tests::test_fmt_age_sub_second ... ok [INFO] [stdout] test mcp::formatter::tests::test_fmt_usd_medium ... ok [INFO] [stdout] test core::providers::trades_ws::tests::test_parse_timestamp_seconds_to_millis ... ok [INFO] [stdout] test mcp::formatter::tests::test_polymarket_url ... ok [INFO] [stdout] test core::providers::resolver::tests::test_strict_allows_direct_token_id ... ok [INFO] [stdout] test core::providers::trades_ws::tests::test_whale_filter ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_ev_table ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_extreme_high_price ... ok [INFO] [stdout] test core::monitor::logger::tests::test_logger_market_discovery ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_extreme_low_price ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_invalid_price_zero ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_maker ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_invalid_price_one ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_negative_price ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_negative_size ... ok [INFO] [stdout] test mcp::tools_book::tests::test_simulate_trade_taker_basic ... ok [INFO] [stdout] test mcp::tools_market::tests::test_active_window_no_markets ... ok [INFO] [stdout] test mcp::tools_market::tests::test_active_window_no_order_book_data ... ok [INFO] [stdout] test mcp::tools_market::tests::test_active_window_with_order_books ... ok [INFO] [stdout] test core::providers::gamma::tests::test_parse_strike ... ok [INFO] [stdout] test mcp::tools_market::tests::test_search_with_short_term_markets ... ok [INFO] [stdout] test mcp::tools_market::tests::test_search_daily_markets ... ok [INFO] [stdout] test mcp::tools_market::tests::test_search_empty_state ... ok [INFO] [stdout] test mcp::tools_market::tests::test_search_filter_excludes_wrong_asset ... ok [INFO] [stdout] test mcp::tools_market::tests::test_search_limit ... ok [INFO] [stdout] test mcp::tools_market::tests::test_spot_price_no_data_for_asset ... ok [INFO] [stdout] test mcp::tools_market::tests::test_spot_price_empty_state ... ok [INFO] [stdout] test mcp::tools_market::tests::test_spot_price_single_asset ... ok [INFO] [stdout] test mcp::tools_market::tests::test_spot_price_populated ... ok [INFO] [stdout] test mcp::tools_monitor::tests::test_alerts_custom_lookback ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_guess_underlying_btc ... ok [INFO] [stdout] test mcp::tools_monitor::tests::test_alerts_empty_state ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_guess_underlying_eth ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_guess_underlying_other_assets ... ok [INFO] [stdout] test mcp::tools_monitor::tests::test_alerts_old_events_filtered ... ok [INFO] [stdout] test mcp::tools_monitor::tests::test_alerts_whale_filter_by_size ... ok [INFO] [stdout] test mcp::tools_monitor::tests::test_alerts_with_market_alerts ... ok [INFO] [stdout] test mcp::tools_monitor::tests::test_alerts_with_whale_trades ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_paper_close_not_found ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_paper_trade_empty_order_book ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_paper_trade_no_order_book ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_paper_trade_not_found_market ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_paper_trade_with_manual_price ... ok [INFO] [stdout] test mcp::tools_whale::tests::test_empty_whale_activity ... ok [INFO] [stdout] test mcp::tools_whale::tests::test_filter_by_asset ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_paper_trade_ambiguous_market ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_paper_close_with_manual_price ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_guess_underlying_fallback ... ok [INFO] [stdout] test mcp::tools_whale::tests::test_json_output ... ok [INFO] [stdout] test mcp::tools_whale::tests::test_summary_stats ... ok [INFO] [stdout] test core::analysis::fair_value::tests::test_empirical_random_walk ... ok [INFO] [stdout] test mcp::tools_whale::tests::test_filter_by_min_size ... ok [INFO] [stdout] test mcp::tools_whale::tests::test_filter_by_time ... ok [INFO] [stdout] test mcp::tools_paper::tests::test_portfolio_empty ... ok [INFO] [stdout] test mcp::tools_book::tests::test_get_order_book_not_found_market ... ok [INFO] [stdout] test mcp::tools_market::tests::test_briefing_no_markets ... ok [INFO] [stdout] test mcp::tools_book::tests::test_get_order_book_no_params ... ok [INFO] [stdout] test mcp::tools_analysis::tests::test_market_analysis_whale_flow_from_state ... ok [INFO] [stdout] test mcp::tools_market::tests::test_briefing_tradeable ... ok [INFO] [stdout] test mcp::tools_market::tests::test_briefing_no_order_book ... ok [INFO] [stdout] test mcp::tools_analysis::tests::test_market_analysis_empty_state ... ok [INFO] [stdout] test mcp::tools_analysis::tests::test_market_analysis_json_format ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 284 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.85s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "ea833825c9a7b3d412651075114f5618f9e63e3fedc37860cbcd8e6d17dbb871", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ea833825c9a7b3d412651075114f5618f9e63e3fedc37860cbcd8e6d17dbb871", kill_on_drop: false }` [INFO] [stdout] ea833825c9a7b3d412651075114f5618f9e63e3fedc37860cbcd8e6d17dbb871