[INFO] cloning repository https://github.com/selcukguler0/polymarket-arb-bot
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/selcukguler0/polymarket-arb-bot" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fselcukguler0%2Fpolymarket-arb-bot", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fselcukguler0%2Fpolymarket-arb-bot'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fdb35f4cdcb13e6359642094b17ef99edceafab4
[INFO] checking selcukguler0/polymarket-arb-bot against try#d8be25549d5418405531341b4be6d8538fc3c42e for pr-156160
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fselcukguler0%2Fpolymarket-arb-bot" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-2-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/selcukguler0/polymarket-arb-bot
[INFO] finished tweaking git repo https://github.com/selcukguler0/polymarket-arb-bot
[INFO] tweaked toml for git repo https://github.com/selcukguler0/polymarket-arb-bot written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/selcukguler0/polymarket-arb-bot on toolchain d8be25549d5418405531341b4be6d8538fc3c42e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d8be25549d5418405531341b4be6d8538fc3c42e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/selcukguler0/polymarket-arb-bot 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" "+d8be25549d5418405531341b4be6d8538fc3c42e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ae3cedd685a92a232cb294b5193fdb80e893add10136522c9990d95a8fa798c4
[INFO] running `Command { std: "docker" "start" "ae3cedd685a92a232cb294b5193fdb80e893add10136522c9990d95a8fa798c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ae3cedd685a92a232cb294b5193fdb80e893add10136522c9990d95a8fa798c4" "/opt/rustwide/cargo-home/bin/cargo" "+d8be25549d5418405531341b4be6d8538fc3c42e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ae3cedd685a92a232cb294b5193fdb80e893add10136522c9990d95a8fa798c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ae3cedd685a92a232cb294b5193fdb80e893add10136522c9990d95a8fa798c4" "/opt/rustwide/cargo-home/bin/cargo" "+d8be25549d5418405531341b4be6d8538fc3c42e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.23
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking base16ct v0.2.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking keccak v0.1.6
[INFO] [stderr]     Checking const-hex v1.17.0
[INFO] [stderr]     Checking rustc-hash v2.1.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling syn v2.0.115
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling aws-lc-rs v1.15.4
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking bimap v0.6.3
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling doctest-file v1.0.0
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking getrandom v0.4.1
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking regex-syntax v0.8.9
[INFO] [stderr]    Compiling siphasher v1.0.2
[INFO] [stderr]     Checking lru v0.16.3
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]    Compiling ruint v1.17.2
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling phf_shared v0.13.1
[INFO] [stderr]    Compiling aws-lc-sys v0.37.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling blst v0.3.16
[INFO] [stderr]    Compiling c-kzg v2.1.5
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling phf_generator v0.13.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling tikv-jemalloc-sys v0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking raw-cpuid v11.6.0
[INFO] [stderr]    Compiling rust_decimal v1.40.0
[INFO] [stderr]     Checking deranged v0.5.6
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling macro-string v0.1.4
[INFO] [stderr]    Compiling syn-solidity v1.5.6
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking quanta v0.12.6
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]    Compiling alloy-rlp-derive v0.3.13
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking serdect v0.2.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking alloy-rlp v0.3.13
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking k256 v0.13.4
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]    Compiling alloy-sol-type-parser v1.5.6
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking alloy-primitives v1.5.6
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling alloy-json-abi v1.5.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling auto_impl v1.3.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling alloy-sol-macro-input v1.5.6
[INFO] [stderr]    Compiling alloy-sol-macro-expander v1.5.6
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking alloy-eip7702 v0.6.3
[INFO] [stderr]     Checking alloy-eip2930 v0.2.3
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking alloy-eip2124 v0.2.0
[INFO] [stderr]     Checking alloy-eip7928 v0.3.2
[INFO] [stderr]     Checking alloy-serde v1.6.3
[INFO] [stderr]     Checking nybbles v0.4.8
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking alloy-trie v0.9.4
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking webpki-roots v1.0.6
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling alloy-sol-macro v1.5.6
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking alloy-sol-types v1.5.6
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]    Compiling serde_with_macros v3.16.1
[INFO] [stderr]    Compiling alloy-tx-macros v1.6.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking serde_with v3.16.1
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]     Checking alloy-signer v1.6.3
[INFO] [stderr]     Checking interprocess v2.3.1
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]     Checking alloy-json-rpc v1.6.3
[INFO] [stderr]    Compiling num_enum_derive v0.7.5
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking alloy-transport v1.6.3
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking alloy-dyn-abi v1.5.6
[INFO] [stderr]     Checking num_enum v0.7.5
[INFO] [stderr]     Checking alloy-pubsub v1.6.3
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking alloy-eips v1.6.3
[INFO] [stderr]     Checking alloy-rpc-types-debug v1.6.3
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking alloy-core v1.5.6
[INFO] [stderr]    Compiling bon-macros v3.9.0
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking alloy-transport-ipc v1.6.3
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]     Checking alloy-chains v0.2.30
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking alloy-consensus v1.6.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]    Compiling phf_macros v0.13.1
[INFO] [stderr]     Checking rand_xoshiro v0.7.0
[INFO] [stderr]     Checking metrics v0.24.3
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking sketches-ddsketch v0.3.0
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking metrics-util v0.19.1
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking alloy-consensus-any v1.6.3
[INFO] [stderr]     Checking alloy-network-primitives v1.6.3
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]    Compiling instability v0.3.11
[INFO] [stderr]     Checking alloy-rpc-types-eth v1.6.3
[INFO] [stderr]     Checking backoff v0.4.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking phf v0.13.1
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking ureq-proto v0.5.3
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking secrecy v0.10.3
[INFO] [stderr]    Compiling rust_decimal_macros v1.40.0
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking bon v3.9.0
[INFO] [stderr]     Checking uuid v1.21.0
[INFO] [stderr]     Checking hashlink v0.9.1
[INFO] [stderr]     Checking serde_html_form v0.4.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking serde_ignored v0.1.14
[INFO] [stderr]     Checking ratatui v0.29.0
[INFO] [stderr]     Checking rusqlite v0.32.1
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking tracing-appender v0.2.4
[INFO] [stderr]     Checking alloy-rpc-types-any v1.6.3
[INFO] [stderr]     Checking alloy-network v1.6.3
[INFO] [stderr]     Checking alloy-rpc-types-trace v1.6.3
[INFO] [stderr]     Checking alloy-rpc-types-anvil v1.6.3
[INFO] [stderr]     Checking alloy-rpc-types-txpool v1.6.3
[INFO] [stderr]     Checking alloy-signer-local v1.6.3
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking rustix v1.1.3
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking rand_xorshift v0.4.0
[INFO] [stderr]     Checking tempfile v3.25.0
[INFO] [stderr]     Checking alloy-rpc-types v1.6.3
[INFO] [stderr]     Checking rusty-fork v0.3.1
[INFO] [stderr]     Checking proptest v1.10.0
[INFO] [stderr]     Checking rustls-webpki v0.103.9
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tungstenite v0.26.2
[INFO] [stderr]     Checking tungstenite v0.28.0
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking ureq v3.2.0
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking tokio-tungstenite v0.26.2
[INFO] [stderr]     Checking tokio-tungstenite v0.28.0
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking reqwest v0.13.2
[INFO] [stderr]     Checking metrics-exporter-prometheus v0.16.2
[INFO] [stderr]     Checking alloy-transport-ws v1.6.3
[INFO] [stderr]     Checking tikv-jemallocator v0.6.1
[INFO] [stderr]     Checking alloy-transport-http v1.6.3
[INFO] [stderr]     Checking alloy-rpc-client v1.6.3
[INFO] [stderr]     Checking alloy-provider v1.6.3
[INFO] [stderr]     Checking alloy-contract v1.6.3
[INFO] [stderr]     Checking alloy v1.6.3
[INFO] [stderr]     Checking polymarket-client-sdk v0.4.2
[INFO] [stderr]     Checking polymarket-arb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: value assigned to `last_err` is never read
[INFO] [stdout]    --> src/sdk.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |         let mut last_err = String::new();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 207 |                     last_err = format!("{e}");
[INFO] [stdout]     |                     -------- `last_err` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_err` is never read
[INFO] [stdout]    --> src/sdk.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |         let mut last_err = String::new();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 207 |                     last_err = format!("{e}");
[INFO] [stdout]     |                     -------- `last_err` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_err` is never read
[INFO] [stdout]    --> src/strategies/core.rs:349:28
[INFO] [stdout]     |
[INFO] [stdout] 349 |         let mut last_err = String::new();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 382 |                     last_err = format!("{e}");
[INFO] [stdout]     |                     -------- `last_err` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_err` is never read
[INFO] [stdout]    --> src/strategies/core.rs:349:28
[INFO] [stdout]     |
[INFO] [stdout] 349 |         let mut last_err = String::new();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 382 |                     last_err = format!("{e}");
[INFO] [stdout]     |                     -------- `last_err` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `matched_pairs` is never read
[INFO] [stdout]   --> src/strategies/post_resolution.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 85 | struct PairPosition {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 90 |     matched_pairs: Decimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PairPosition` 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: variant `BoughtDown` is never constructed
[INFO] [stdout]   --> src/strategies/post_resolution.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 95 | enum PositionStatus {
[INFO] [stdout]    |      -------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 99 |     BoughtDown,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PositionStatus` 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 `matched_pairs` is never read
[INFO] [stdout]   --> src/strategies/post_resolution.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 85 | struct PairPosition {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 90 |     matched_pairs: Decimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PairPosition` 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: variant `BoughtDown` is never constructed
[INFO] [stdout]   --> src/strategies/post_resolution.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 95 | enum PositionStatus {
[INFO] [stdout]    |      -------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 99 |     BoughtDown,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PositionStatus` 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: unused imports: `DateTime` and `Utc`
[INFO] [stdout]   --> src/bin/convergence_backtest.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `order_size`, `min_remaining_secs`, and `entry_cooldown_secs` are never read
[INFO] [stdout]   --> src/bin/convergence_backtest.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct Config {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     order_size: f64,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     min_remaining_secs: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     force_sell_secs: f64,
[INFO] [stdout] 25 |     entry_cooldown_secs: 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: fields `fv_up` and `fv_down` are never read
[INFO] [stdout]   --> src/bin/convergence_backtest.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 87 | struct TickData {
[INFO] [stdout]    |        -------- fields in this struct
[INFO] [stdout] 88 |     remaining_secs: f64,
[INFO] [stdout] 89 |     fv_up: f64,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 90 |     fv_down: f64,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]   --> src/bin/convergence_backtest.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `order_size`, `min_remaining_secs`, and `entry_cooldown_secs` are never read
[INFO] [stdout]   --> src/bin/convergence_backtest.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct Config {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     order_size: f64,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     min_remaining_secs: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     force_sell_secs: f64,
[INFO] [stdout] 25 |     entry_cooldown_secs: 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: fields `fv_up` and `fv_down` are never read
[INFO] [stdout]   --> src/bin/convergence_backtest.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 87 | struct TickData {
[INFO] [stdout]    |        -------- fields in this struct
[INFO] [stdout] 88 |     remaining_secs: f64,
[INFO] [stdout] 89 |     fv_up: f64,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 90 |     fv_down: f64,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rebalance_extra_capacity`
[INFO] [stdout]     --> src/orchestrator_v2.rs:4915:17
[INFO] [stdout]      |
[INFO] [stdout] 4915 |             let rebalance_extra_capacity = if self.v2.rebalance_budget_override {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rebalance_extra_capacity`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rebalance_extra_capacity`
[INFO] [stdout]     --> src/orchestrator_v2.rs:4915:17
[INFO] [stdout]      |
[INFO] [stdout] 4915 |             let rebalance_extra_capacity = if self.v2.rebalance_budget_override {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rebalance_extra_capacity`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_err` is never read
[INFO] [stdout]    --> src/sdk.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |         let mut last_err = String::new();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 207 |                     last_err = format!("{e}");
[INFO] [stdout]     |                     -------- `last_err` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `skipped` is never read
[INFO] [stdout]    --> src/main.rs:400:33
[INFO] [stdout]     |
[INFO] [stdout] 400 | ...                   skipped += 1;
[INFO] [stdout]     |                       ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_combined_bid`, `max_orders_per_side`, `ticks_below_mid`, `aggressiveness`, and `quote_refresh_ms` are never read
[INFO] [stdout]    --> src/config.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 376 | pub struct ValidatedConfig {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 381 |     pub max_combined_bid: Decimal,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 382 |     pub order_size_usdc: Decimal,
[INFO] [stdout] 383 |     pub max_orders_per_side: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 384 |     pub ticks_below_mid: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 385 |     pub aggressiveness: Decimal,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub quote_refresh_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ValidatedConfig` 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: variants `Pending`, `Cancelled`, and `Rejected` are never constructed
[INFO] [stdout]    --> src/dashboard/state.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum OrderStatus {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 120 |     Pending,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 121 |     Filled,
[INFO] [stdout] 122 |     Cancelled,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 123 |     Rejected,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OrderStatus` 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 `secs_remaining` and `countdown_str` are never used
[INFO] [stdout]    --> src/dashboard/state.rs:363:12
[INFO] [stdout]     |
[INFO] [stdout] 293 | impl DashboardState {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub fn secs_remaining(&self) -> i64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 370 |     pub fn countdown_str(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SharedDashboard` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type SharedDashboard = Arc<RwLock<DashboardState>>;
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ORANGE` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const ORANGE: Color = Color::Rgb(255, 165, 0);
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GREEN` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | const GREEN: Color = Color::Rgb(0, 255, 100);
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RED` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const RED: Color = Color::Rgb(255, 60, 60);
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CYAN` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const CYAN: Color = Color::Rgb(0, 200, 255);
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DIM` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | const DIM: Color = Color::Rgb(120, 120, 120);
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BG` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:30:7
[INFO] [stdout]    |
[INFO] [stdout] 30 | const BG: Color = Color::Rgb(15, 15, 25);
[INFO] [stdout]    |       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PANEL_BG` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:31:7
[INFO] [stdout]    |
[INFO] [stdout] 31 | const PANEL_BG: Color = Color::Rgb(20, 22, 35);
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pnl_color` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn pnl_color(val: Decimal) -> Color {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pnl_color_f64` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn pnl_color_f64(val: f64) -> Color {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_pnl` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn format_pnl(val: Decimal) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_dashboard` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn run_dashboard(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_dashboard` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn render_dashboard(f: &mut Frame, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_status_bar` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn render_status_bar(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_body` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:229:4
[INFO] [stdout]     |
[INFO] [stdout] 229 | fn render_body(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_left_panel` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:240:4
[INFO] [stdout]     |
[INFO] [stdout] 240 | fn render_left_panel(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_charts_row` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:256:4
[INFO] [stdout]     |
[INFO] [stdout] 256 | fn render_charts_row(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_order_feed` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:336:4
[INFO] [stdout]     |
[INFO] [stdout] 336 | fn render_order_feed(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_pipeline` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:403:4
[INFO] [stdout]     |
[INFO] [stdout] 403 | fn render_pipeline(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_right_sidebar` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:481:4
[INFO] [stdout]     |
[INFO] [stdout] 481 | fn render_right_sidebar(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_signal_flow` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:495:4
[INFO] [stdout]     |
[INFO] [stdout] 495 | fn render_signal_flow(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_positions` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:567:4
[INFO] [stdout]     |
[INFO] [stdout] 567 | fn render_positions(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_bottom_stats` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn render_bottom_stats(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_sparkline_data` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:674:4
[INFO] [stdout]     |
[INFO] [stdout] 674 | fn normalize_sparkline_data(data: &std::collections::VecDeque<f64>) -> Vec<u64> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_uptime` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:689:4
[INFO] [stdout]     |
[INFO] [stdout] 689 | fn format_uptime(secs: u64) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Strategy`, `RiskLimit`, `MarketNotFound`, `Emergency`, and `ChannelClosed` are never constructed
[INFO] [stdout]   --> src/error.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum BotError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Strategy(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     RiskLimit(String),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     MarketNotFound(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     Emergency(String),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     ChannelClosed,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BotError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `replace_orders` and `order_state` are never used
[INFO] [stdout]    --> src/execution/fill_handler.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl FillHandler {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn replace_orders(&mut self, condition_id: &str, orders: Vec<(OrderId, Outcome)>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn order_state(&self, condition_id: &str) -> Option<&MarketOrderState> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `USDC_E_ADDRESS` is never used
[INFO] [stdout]   --> src/onchain/ctf.rs:31:7
[INFO] [stdout]    |
[INFO] [stdout] 31 | const USDC_E_ADDRESS: &str = "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CTF_EXCHANGE_ADDRESS` is never used
[INFO] [stdout]   --> src/onchain/ctf.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const CTF_EXCHANGE_ADDRESS: &str = "0x4bFb41d5B3570DeFd03C39a9A4D8dE6Bd8B8982E";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NEG_RISK_CTF_EXCHANGE_ADDRESS` is never used
[INFO] [stdout]   --> src/onchain/ctf.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const NEG_RISK_CTF_EXCHANGE_ADDRESS: &str = "0xC5d563A36AE78145C45a50134d48A1215220f80a";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NEG_RISK_ADAPTER_ADDRESS` is never used
[INFO] [stdout]   --> src/onchain/ctf.rs:38:7
[INFO] [stdout]    |
[INFO] [stdout] 38 | const NEG_RISK_ADAPTER_ADDRESS: &str = "0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `exchange_address`, `cached_matic_balance_value`, and `wallet_address` are never used
[INFO] [stdout]    --> src/onchain/ctf.rs:265:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl OnChainManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn exchange_address(&self, neg_risk: bool) -> Address {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub fn cached_matic_balance_value(&self) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn wallet_address(&self) -> Address {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Manual` is never constructed
[INFO] [stdout]   --> src/orchestrator_v2.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub enum TradingSuspendReason {
[INFO] [stdout]    |          -------------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 74 |     Manual,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TradingSuspendReason` 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 `min_sigma_samples_for_duration` is never used
[INFO] [stdout]     --> src/orchestrator_v2.rs:1453:12
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl V2Config {
[INFO] [stdout]      | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1453 |     pub fn min_sigma_samples_for_duration(&self, duration_mins: u32) -> u32 {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `placed_at` is never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:1863:5
[INFO] [stdout]      |
[INFO] [stdout] 1860 | struct RestingLadderOrder {
[INFO] [stdout]      |        ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1863 |     placed_at: Instant,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `RestingLadderOrder` 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 `pnl_if_up` and `pnl_if_down` are never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:2157:5
[INFO] [stdout]      |
[INFO] [stdout] 2156 | struct TerminalPnlBounds {
[INFO] [stdout]      |        ----------------- fields in this struct
[INFO] [stdout] 2157 |     pnl_if_up: Decimal,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 2158 |     pnl_if_down: Decimal,
[INFO] [stdout]      |     ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `TerminalPnlBounds` 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: enum `SellAggressiveness` is never used
[INFO] [stdout]     --> src/orchestrator_v2.rs:2452:6
[INFO] [stdout]      |
[INFO] [stdout] 2452 | enum SellAggressiveness {
[INFO] [stdout]      |      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sell_aggressiveness` is never used
[INFO] [stdout]     --> src/orchestrator_v2.rs:2461:4
[INFO] [stdout]      |
[INFO] [stdout] 2461 | fn sell_aggressiveness(ev: &PositionEV) -> SellAggressiveness {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `abs_excess` is never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:2484:9
[INFO] [stdout]      |
[INFO] [stdout] 2482 |     Skip {
[INFO] [stdout]      |     ---- field in this variant
[INFO] [stdout] 2483 |         reason: &'static str,
[INFO] [stdout] 2484 |         abs_excess: Decimal,
[INFO] [stdout]      |         ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `ExitPlan` 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 `abs_excess` is never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:2489:9
[INFO] [stdout]      |
[INFO] [stdout] 2487 |     Maker {
[INFO] [stdout]      |     ----- field in this variant
[INFO] [stdout] 2488 |         reason: &'static str,
[INFO] [stdout] 2489 |         abs_excess: Decimal,
[INFO] [stdout]      |         ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `ExitPlan` 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 `abs_excess` is never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:2495:9
[INFO] [stdout]      |
[INFO] [stdout] 2493 |     Taker {
[INFO] [stdout]      |     ----- field in this variant
[INFO] [stdout] 2494 |         reason: &'static str,
[INFO] [stdout] 2495 |         abs_excess: Decimal,
[INFO] [stdout]      |         ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `ExitPlan` 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 `compute_sell_ladder` is never used
[INFO] [stdout]     --> src/orchestrator_v2.rs:2785:4
[INFO] [stdout]      |
[INFO] [stdout] 2785 | fn compute_sell_ladder(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `shutdown_tx` and `order_lifecycle` are never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:3536:5
[INFO] [stdout]      |
[INFO] [stdout] 3518 | pub struct OrchestratorV2 {
[INFO] [stdout]      |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 3536 |     shutdown_tx: broadcast::Sender<()>,
[INFO] [stdout]      |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 3576 |     order_lifecycle: VecDeque<OrderLifecycle>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]      --> src/orchestrator_v2.rs:3703:12
[INFO] [stdout]       |
[INFO] [stdout]  3596 | impl OrchestratorV2 {
[INFO] [stdout]       | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  3703 |     pub fn orderbooks(&self) -> SharedOrderBooks {
[INFO] [stdout]       |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  3707 |     pub fn book_notify(&self) -> BookNotify {
[INFO] [stdout]       |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  3711 |     pub fn shutdown_tx(&self) -> broadcast::Sender<()> {
[INFO] [stdout]       |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10102 |     async fn place_order(
[INFO] [stdout]       |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10164 |     fn record_lifecycle(&mut self, lifecycle: OrderLifecycle) {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10172 |     async fn cancel_order(&mut self, order_id: &str) {
[INFO] [stdout]       |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10931 |     fn orders_on_side_count(&self, condition_id: &str, outcome: Outcome) -> usize {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cancel_all`, `check_fills_with_book`, `orders_for_market`, `order_count`, and `total_orders` are never used
[INFO] [stdout]    --> src/paper_sim.rs:201:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl PaperSimulator {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 201 |     pub fn cancel_all(&mut self) -> Vec<PaperOrder> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn check_fills_with_book(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 489 |     pub fn orders_for_market(&self, condition_id: &str) -> Vec<&PaperOrder> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 497 |     pub fn order_count(&self, condition_id: &str, outcome: Outcome) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 507 |     pub fn total_orders(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `today_date`, `total_merged_pairs`, and `total_rebates` are never read
[INFO] [stdout]   --> src/persistence/db.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct SessionStatsRow {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub today_date: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub total_merged_pairs: i64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 44 |     pub total_rebates: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SessionStatsRow` 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 `insert_fill`, `upsert_position`, `get_position`, and `get_today_fill_count` are never used
[INFO] [stdout]    --> src/persistence/db.rs:214:18
[INFO] [stdout]     |
[INFO] [stdout]  62 | impl Database {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub async fn insert_fill(
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |     pub async fn upsert_position(&self, pos: &Position) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 331 |     pub async fn get_position(&self, condition_id: &str) -> Result<Option<Position>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 812 |     pub async fn get_today_fill_count(&self, today_date: &str) -> Result<i64> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CREATE_PROXY_TYPEHASH` is never used
[INFO] [stdout]    --> src/relayer.rs:112:7
[INFO] [stdout]     |
[INFO] [stdout] 112 | const CREATE_PROXY_TYPEHASH: B256 =
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FACTORY_DOMAIN_NAME` is never used
[INFO] [stdout]    --> src/relayer.rs:116:7
[INFO] [stdout]     |
[INFO] [stdout] 116 | const FACTORY_DOMAIN_NAME: &str = "Polymarket Contract Proxy Factory";
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `transaction_hash` and `state` are never read
[INFO] [stdout]    --> src/relayer.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub struct SubmitResponse {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub transaction_hash: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 164 |     #[serde(default)]
[INFO] [stdout] 165 |     pub state: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SubmitResponse` 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 `transaction_id` and `proxy_address` are never read
[INFO] [stdout]    --> src/relayer.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub struct TransactionStatus {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 171 |     #[serde(alias = "transactionId", alias = "transactionID")]
[INFO] [stdout] 172 |     pub transaction_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub proxy_address: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TransactionStatus` 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 `DeployedResponse` is never constructed
[INFO] [stdout]    --> src/relayer.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub struct DeployedResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `eoa_address`, `is_deployed`, `deploy_safe`, `factory_domain_separator`, `split_position`, and `approve_all_contracts` are never used
[INFO] [stdout]    --> src/relayer.rs:267:12
[INFO] [stdout]     |
[INFO] [stdout] 222 | impl RelayerClient {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 267 |     pub fn eoa_address(&self) -> Address {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 425 |     pub async fn is_deployed(&self) -> Result<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 465 |     pub async fn deploy_safe(&self) -> Result<B256> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 717 |     fn factory_domain_separator(&self) -> B256 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 865 |     pub async fn split_position(&self, condition_id: B256, amount_usdc_6: u64) -> Result<B256> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 893 |     pub async fn approve_all_contracts(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inventory` is never read
[INFO] [stdout]   --> src/risk/emergency.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct EmergencyHandler {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     inventory: Arc<InventoryManager>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ProlongedImbalance` and `LowMatic` are never constructed
[INFO] [stdout]   --> src/risk/emergency.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum EmergencyTrigger {
[INFO] [stdout]    |          ---------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 33 |     ProlongedImbalance(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 34 |     LowUsdc,
[INFO] [stdout] 35 |     LowMatic,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EmergencyTrigger` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_imbalance_ratio`, `daily_loss_limit`, and `min_usdc_balance` are never read
[INFO] [stdout]   --> src/risk/inventory.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct InventoryManager {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     max_imbalance_ratio: Decimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 |     daily_loss_limit: Decimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 22 |     /// FIX 21: Minimum USDC balance required to place orders
[INFO] [stdout] 23 |     min_usdc_balance: Decimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_max_total_exposure`, `can_place_order`, `record_resolution`, `daily_pnl`, and `daily_loss_breached` are never used
[INFO] [stdout]    --> src/risk/inventory.rs:83:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl InventoryManager {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub fn set_max_total_exposure(&mut self, limit: Decimal) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn can_place_order(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 257 |     pub fn record_resolution(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 527 |     pub fn daily_pnl(&self) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 |     pub fn daily_loss_breached(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `build_complete_set` is never used
[INFO] [stdout]    --> src/run_manifest.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl RunManifest {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn build_complete_set(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MarketOrderSpec` is never constructed
[INFO] [stdout]   --> src/sdk.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct MarketOrderSpec {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MarketOrderResult` is never constructed
[INFO] [stdout]   --> src/sdk.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct MarketOrderResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/sdk.rs:258:12
[INFO] [stdout]      |
[INFO] [stdout]  126 | impl SdkClients {
[INFO] [stdout]      | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  258 |     pub fn has_relayer(&self) -> bool {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  358 |     pub async fn place_limit_order(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  606 |     pub async fn place_paired_orders(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1352 |     pub async fn place_market_buy_fok_shares(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1437 |     pub async fn place_market_sell_fok_shares(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1529 |     pub async fn place_batch_market_orders(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1695 |     pub async fn cancel_order(&self, order_id: &str) -> Result<()> {
[INFO] [stdout]      |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1753 |     pub async fn cancel_market_orders_by_market(&self, condition_id: &str) -> Result<Vec<String>> {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1885 |     pub async fn probe_heartbeat(&self) -> Result<()> {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2189 |     pub async fn split_position(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_crosses_book_error` is never used
[INFO] [stdout]     --> src/sdk.rs:2337:4
[INFO] [stdout]      |
[INFO] [stdout] 2337 | fn is_crosses_book_error(msg: &str) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `opposite` is never used
[INFO] [stdout]   --> src/types.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl Outcome {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] 98 |     pub fn opposite(self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `outcome_for_token` is never used
[INFO] [stdout]    --> src/types.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl TrackedMarket {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn outcome_for_token(&self, token_id: &str) -> Option<Outcome> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `asset_id` is never read
[INFO] [stdout]    --> src/types.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct OrderBookSnapshot {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] 174 |     pub asset_id: TokenId,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OrderBookSnapshot` 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 `midpoint`, `bid_depth_at_or_above`, `bid_depth_top_n`, `ask_depth_top_n`, and `top_n_imbalance` are never used
[INFO] [stdout]    --> src/types.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl OrderBookSnapshot {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn midpoint(&self) -> Option<Decimal> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn bid_depth_at_or_above(&self, target_price: Decimal) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn bid_depth_top_n(&self, levels: usize) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn ask_depth_top_n(&self, levels: usize) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn top_n_imbalance(&self, levels: usize) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `dust_qty` and `dust_value` are never used
[INFO] [stdout]    --> src/types.rs:338:12
[INFO] [stdout]     |
[INFO] [stdout] 264 | impl Position {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub fn dust_qty(&self, min_order_shares: Decimal) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn dust_value(&self, min_order_shares: Decimal) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Daily` is never constructed
[INFO] [stdout]    --> src/types.rs:432:5
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub enum AlertMessage {
[INFO] [stdout]     |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 432 |     Daily(String),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AlertMessage` 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 `Resting`, `Filled`, and `Cancelled` are never constructed
[INFO] [stdout]    --> src/types.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 471 | pub enum OrderState {
[INFO] [stdout]     |          ---------- variants in this enum
[INFO] [stdout] 472 |     Resting,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 473 |     Filled {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 477 |     Cancelled {
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OrderState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `mark_filled`, `mark_cancelled`, and `is_terminal` are never used
[INFO] [stdout]    --> src/types.rs:484:12
[INFO] [stdout]     |
[INFO] [stdout] 483 | impl OrderLifecycle {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 484 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 502 |     pub fn mark_filled(&mut self, fill_price: Decimal) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 511 |     pub fn mark_cancelled(&mut self, reason: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 |     pub fn is_terminal(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `phase`, `should_cancel_all`, and `next_market_start` are never used
[INFO] [stdout]    --> src/types.rs:545:12
[INFO] [stdout]     |
[INFO] [stdout] 534 | impl TimeManager {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 545 |     pub fn phase(&self, end_date: DateTime<Utc>) -> MarketPhase {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 587 |     pub fn should_cancel_all(&self, end_date: DateTime<Utc>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 595 |     pub fn next_market_start(&self, current_end: DateTime<Utc>) -> DateTime<Utc> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_err` is never read
[INFO] [stdout]    --> src/sdk.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |         let mut last_err = String::new();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 207 |                     last_err = format!("{e}");
[INFO] [stdout]     |                     -------- `last_err` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]      --> src/orchestrator_v2.rs:11880:25
[INFO] [stdout]       |
[INFO] [stdout] 11880 |                         drop(ms); // release borrow for batch_cancel_confirmed
[INFO] [stdout]       |                         ^^^^^--^
[INFO] [stdout]       |                              |
[INFO] [stdout]       |                              argument has type `&mut MarketV2State`
[INFO] [stdout]       |
[INFO] [stdout]       = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]       |
[INFO] [stdout] 11880 -                         drop(ms); // release borrow for batch_cancel_confirmed
[INFO] [stdout] 11880 +                         let _ = ms; // release borrow for batch_cancel_confirmed
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `skipped` is never read
[INFO] [stdout]    --> src/main.rs:400:33
[INFO] [stdout]     |
[INFO] [stdout] 400 | ...                   skipped += 1;
[INFO] [stdout]     |                       ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_combined_bid`, `max_orders_per_side`, `ticks_below_mid`, `aggressiveness`, and `quote_refresh_ms` are never read
[INFO] [stdout]    --> src/config.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 376 | pub struct ValidatedConfig {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 381 |     pub max_combined_bid: Decimal,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 382 |     pub order_size_usdc: Decimal,
[INFO] [stdout] 383 |     pub max_orders_per_side: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 384 |     pub ticks_below_mid: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 385 |     pub aggressiveness: Decimal,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub quote_refresh_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ValidatedConfig` 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: variants `Pending`, `Cancelled`, and `Rejected` are never constructed
[INFO] [stdout]    --> src/dashboard/state.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum OrderStatus {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 120 |     Pending,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 121 |     Filled,
[INFO] [stdout] 122 |     Cancelled,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 123 |     Rejected,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OrderStatus` 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 `secs_remaining` and `countdown_str` are never used
[INFO] [stdout]    --> src/dashboard/state.rs:363:12
[INFO] [stdout]     |
[INFO] [stdout] 293 | impl DashboardState {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub fn secs_remaining(&self) -> i64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 370 |     pub fn countdown_str(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SharedDashboard` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type SharedDashboard = Arc<RwLock<DashboardState>>;
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ORANGE` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const ORANGE: Color = Color::Rgb(255, 165, 0);
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GREEN` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | const GREEN: Color = Color::Rgb(0, 255, 100);
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RED` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const RED: Color = Color::Rgb(255, 60, 60);
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CYAN` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const CYAN: Color = Color::Rgb(0, 200, 255);
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DIM` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | const DIM: Color = Color::Rgb(120, 120, 120);
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BG` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:30:7
[INFO] [stdout]    |
[INFO] [stdout] 30 | const BG: Color = Color::Rgb(15, 15, 25);
[INFO] [stdout]    |       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PANEL_BG` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:31:7
[INFO] [stdout]    |
[INFO] [stdout] 31 | const PANEL_BG: Color = Color::Rgb(20, 22, 35);
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pnl_color` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn pnl_color(val: Decimal) -> Color {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pnl_color_f64` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn pnl_color_f64(val: f64) -> Color {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_pnl` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn format_pnl(val: Decimal) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_dashboard` is never used
[INFO] [stdout]   --> src/dashboard/ui.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn run_dashboard(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_dashboard` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn render_dashboard(f: &mut Frame, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_status_bar` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn render_status_bar(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_body` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:229:4
[INFO] [stdout]     |
[INFO] [stdout] 229 | fn render_body(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_left_panel` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:240:4
[INFO] [stdout]     |
[INFO] [stdout] 240 | fn render_left_panel(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_charts_row` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:256:4
[INFO] [stdout]     |
[INFO] [stdout] 256 | fn render_charts_row(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_order_feed` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:336:4
[INFO] [stdout]     |
[INFO] [stdout] 336 | fn render_order_feed(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_pipeline` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:403:4
[INFO] [stdout]     |
[INFO] [stdout] 403 | fn render_pipeline(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_right_sidebar` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:481:4
[INFO] [stdout]     |
[INFO] [stdout] 481 | fn render_right_sidebar(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_signal_flow` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:495:4
[INFO] [stdout]     |
[INFO] [stdout] 495 | fn render_signal_flow(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_positions` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:567:4
[INFO] [stdout]     |
[INFO] [stdout] 567 | fn render_positions(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_bottom_stats` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn render_bottom_stats(f: &mut Frame, area: Rect, state: &DashboardState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_sparkline_data` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:674:4
[INFO] [stdout]     |
[INFO] [stdout] 674 | fn normalize_sparkline_data(data: &std::collections::VecDeque<f64>) -> Vec<u64> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_uptime` is never used
[INFO] [stdout]    --> src/dashboard/ui.rs:689:4
[INFO] [stdout]     |
[INFO] [stdout] 689 | fn format_uptime(secs: u64) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Strategy`, `RiskLimit`, `MarketNotFound`, `Emergency`, and `ChannelClosed` are never constructed
[INFO] [stdout]   --> src/error.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum BotError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Strategy(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     RiskLimit(String),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     MarketNotFound(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     Emergency(String),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     ChannelClosed,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BotError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `replace_orders` and `order_state` are never used
[INFO] [stdout]    --> src/execution/fill_handler.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl FillHandler {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn replace_orders(&mut self, condition_id: &str, orders: Vec<(OrderId, Outcome)>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn order_state(&self, condition_id: &str) -> Option<&MarketOrderState> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `USDC_E_ADDRESS` is never used
[INFO] [stdout]   --> src/onchain/ctf.rs:31:7
[INFO] [stdout]    |
[INFO] [stdout] 31 | const USDC_E_ADDRESS: &str = "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CTF_EXCHANGE_ADDRESS` is never used
[INFO] [stdout]   --> src/onchain/ctf.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const CTF_EXCHANGE_ADDRESS: &str = "0x4bFb41d5B3570DeFd03C39a9A4D8dE6Bd8B8982E";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NEG_RISK_CTF_EXCHANGE_ADDRESS` is never used
[INFO] [stdout]   --> src/onchain/ctf.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const NEG_RISK_CTF_EXCHANGE_ADDRESS: &str = "0xC5d563A36AE78145C45a50134d48A1215220f80a";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NEG_RISK_ADAPTER_ADDRESS` is never used
[INFO] [stdout]   --> src/onchain/ctf.rs:38:7
[INFO] [stdout]    |
[INFO] [stdout] 38 | const NEG_RISK_ADAPTER_ADDRESS: &str = "0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `exchange_address`, `cached_matic_balance_value`, and `wallet_address` are never used
[INFO] [stdout]    --> src/onchain/ctf.rs:265:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl OnChainManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn exchange_address(&self, neg_risk: bool) -> Address {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub fn cached_matic_balance_value(&self) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn wallet_address(&self) -> Address {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Manual` is never constructed
[INFO] [stdout]   --> src/orchestrator_v2.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub enum TradingSuspendReason {
[INFO] [stdout]    |          -------------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 74 |     Manual,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TradingSuspendReason` 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 `min_sigma_samples_for_duration` is never used
[INFO] [stdout]     --> src/orchestrator_v2.rs:1453:12
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl V2Config {
[INFO] [stdout]      | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1453 |     pub fn min_sigma_samples_for_duration(&self, duration_mins: u32) -> u32 {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `placed_at` is never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:1863:5
[INFO] [stdout]      |
[INFO] [stdout] 1860 | struct RestingLadderOrder {
[INFO] [stdout]      |        ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1863 |     placed_at: Instant,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `RestingLadderOrder` 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: enum `SellAggressiveness` is never used
[INFO] [stdout]     --> src/orchestrator_v2.rs:2452:6
[INFO] [stdout]      |
[INFO] [stdout] 2452 | enum SellAggressiveness {
[INFO] [stdout]      |      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sell_aggressiveness` is never used
[INFO] [stdout]     --> src/orchestrator_v2.rs:2461:4
[INFO] [stdout]      |
[INFO] [stdout] 2461 | fn sell_aggressiveness(ev: &PositionEV) -> SellAggressiveness {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `abs_excess` is never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:2484:9
[INFO] [stdout]      |
[INFO] [stdout] 2482 |     Skip {
[INFO] [stdout]      |     ---- field in this variant
[INFO] [stdout] 2483 |         reason: &'static str,
[INFO] [stdout] 2484 |         abs_excess: Decimal,
[INFO] [stdout]      |         ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `ExitPlan` 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 `abs_excess` is never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:2489:9
[INFO] [stdout]      |
[INFO] [stdout] 2487 |     Maker {
[INFO] [stdout]      |     ----- field in this variant
[INFO] [stdout] 2488 |         reason: &'static str,
[INFO] [stdout] 2489 |         abs_excess: Decimal,
[INFO] [stdout]      |         ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `ExitPlan` 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 `abs_excess` is never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:2495:9
[INFO] [stdout]      |
[INFO] [stdout] 2493 |     Taker {
[INFO] [stdout]      |     ----- field in this variant
[INFO] [stdout] 2494 |         reason: &'static str,
[INFO] [stdout] 2495 |         abs_excess: Decimal,
[INFO] [stdout]      |         ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `ExitPlan` 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 `compute_sell_ladder` is never used
[INFO] [stdout]     --> src/orchestrator_v2.rs:2785:4
[INFO] [stdout]      |
[INFO] [stdout] 2785 | fn compute_sell_ladder(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `shutdown_tx` and `order_lifecycle` are never read
[INFO] [stdout]     --> src/orchestrator_v2.rs:3536:5
[INFO] [stdout]      |
[INFO] [stdout] 3518 | pub struct OrchestratorV2 {
[INFO] [stdout]      |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 3536 |     shutdown_tx: broadcast::Sender<()>,
[INFO] [stdout]      |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 3576 |     order_lifecycle: VecDeque<OrderLifecycle>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]      --> src/orchestrator_v2.rs:3703:12
[INFO] [stdout]       |
[INFO] [stdout]  3596 | impl OrchestratorV2 {
[INFO] [stdout]       | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  3703 |     pub fn orderbooks(&self) -> SharedOrderBooks {
[INFO] [stdout]       |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  3707 |     pub fn book_notify(&self) -> BookNotify {
[INFO] [stdout]       |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  3711 |     pub fn shutdown_tx(&self) -> broadcast::Sender<()> {
[INFO] [stdout]       |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10102 |     async fn place_order(
[INFO] [stdout]       |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10164 |     fn record_lifecycle(&mut self, lifecycle: OrderLifecycle) {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10172 |     async fn cancel_order(&mut self, order_id: &str) {
[INFO] [stdout]       |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10931 |     fn orders_on_side_count(&self, condition_id: &str, outcome: Outcome) -> usize {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cancel_all`, `check_fills_with_book`, `orders_for_market`, `order_count`, and `total_orders` are never used
[INFO] [stdout]    --> src/paper_sim.rs:201:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl PaperSimulator {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 201 |     pub fn cancel_all(&mut self) -> Vec<PaperOrder> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn check_fills_with_book(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 489 |     pub fn orders_for_market(&self, condition_id: &str) -> Vec<&PaperOrder> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 497 |     pub fn order_count(&self, condition_id: &str, outcome: Outcome) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 507 |     pub fn total_orders(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `today_date`, `total_merged_pairs`, and `total_rebates` are never read
[INFO] [stdout]   --> src/persistence/db.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct SessionStatsRow {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub today_date: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub total_merged_pairs: i64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 44 |     pub total_rebates: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SessionStatsRow` 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 `insert_fill`, `upsert_position`, `get_position`, and `get_today_fill_count` are never used
[INFO] [stdout]    --> src/persistence/db.rs:214:18
[INFO] [stdout]     |
[INFO] [stdout]  62 | impl Database {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub async fn insert_fill(
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |     pub async fn upsert_position(&self, pos: &Position) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 331 |     pub async fn get_position(&self, condition_id: &str) -> Result<Option<Position>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 812 |     pub async fn get_today_fill_count(&self, today_date: &str) -> Result<i64> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CREATE_PROXY_TYPEHASH` is never used
[INFO] [stdout]    --> src/relayer.rs:112:7
[INFO] [stdout]     |
[INFO] [stdout] 112 | const CREATE_PROXY_TYPEHASH: B256 =
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FACTORY_DOMAIN_NAME` is never used
[INFO] [stdout]    --> src/relayer.rs:116:7
[INFO] [stdout]     |
[INFO] [stdout] 116 | const FACTORY_DOMAIN_NAME: &str = "Polymarket Contract Proxy Factory";
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `transaction_hash` and `state` are never read
[INFO] [stdout]    --> src/relayer.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub struct SubmitResponse {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub transaction_hash: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 164 |     #[serde(default)]
[INFO] [stdout] 165 |     pub state: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SubmitResponse` 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 `transaction_id` and `proxy_address` are never read
[INFO] [stdout]    --> src/relayer.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub struct TransactionStatus {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 171 |     #[serde(alias = "transactionId", alias = "transactionID")]
[INFO] [stdout] 172 |     pub transaction_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub proxy_address: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TransactionStatus` 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 `DeployedResponse` is never constructed
[INFO] [stdout]    --> src/relayer.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub struct DeployedResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `eoa_address`, `is_deployed`, `deploy_safe`, `factory_domain_separator`, `split_position`, and `approve_all_contracts` are never used
[INFO] [stdout]    --> src/relayer.rs:267:12
[INFO] [stdout]     |
[INFO] [stdout] 222 | impl RelayerClient {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 267 |     pub fn eoa_address(&self) -> Address {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 425 |     pub async fn is_deployed(&self) -> Result<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 465 |     pub async fn deploy_safe(&self) -> Result<B256> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 717 |     fn factory_domain_separator(&self) -> B256 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 865 |     pub async fn split_position(&self, condition_id: B256, amount_usdc_6: u64) -> Result<B256> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 893 |     pub async fn approve_all_contracts(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inventory` is never read
[INFO] [stdout]   --> src/risk/emergency.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct EmergencyHandler {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     inventory: Arc<InventoryManager>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ProlongedImbalance` and `LowMatic` are never constructed
[INFO] [stdout]   --> src/risk/emergency.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum EmergencyTrigger {
[INFO] [stdout]    |          ---------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 33 |     ProlongedImbalance(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 34 |     LowUsdc,
[INFO] [stdout] 35 |     LowMatic,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EmergencyTrigger` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_imbalance_ratio`, `daily_loss_limit`, and `min_usdc_balance` are never read
[INFO] [stdout]   --> src/risk/inventory.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct InventoryManager {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     max_imbalance_ratio: Decimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 |     daily_loss_limit: Decimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 22 |     /// FIX 21: Minimum USDC balance required to place orders
[INFO] [stdout] 23 |     min_usdc_balance: Decimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_max_total_exposure`, `can_place_order`, `record_resolution`, `daily_pnl`, and `daily_loss_breached` are never used
[INFO] [stdout]    --> src/risk/inventory.rs:83:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl InventoryManager {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub fn set_max_total_exposure(&mut self, limit: Decimal) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn can_place_order(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 257 |     pub fn record_resolution(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 527 |     pub fn daily_pnl(&self) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 |     pub fn daily_loss_breached(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `build_complete_set` is never used
[INFO] [stdout]    --> src/run_manifest.rs:117:12
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl RunManifest {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn build_complete_set(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MarketOrderSpec` is never constructed
[INFO] [stdout]   --> src/sdk.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct MarketOrderSpec {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MarketOrderResult` is never constructed
[INFO] [stdout]   --> src/sdk.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct MarketOrderResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/sdk.rs:258:12
[INFO] [stdout]      |
[INFO] [stdout]  126 | impl SdkClients {
[INFO] [stdout]      | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  258 |     pub fn has_relayer(&self) -> bool {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  358 |     pub async fn place_limit_order(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  606 |     pub async fn place_paired_orders(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1352 |     pub async fn place_market_buy_fok_shares(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1437 |     pub async fn place_market_sell_fok_shares(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1529 |     pub async fn place_batch_market_orders(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1695 |     pub async fn cancel_order(&self, order_id: &str) -> Result<()> {
[INFO] [stdout]      |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1753 |     pub async fn cancel_market_orders_by_market(&self, condition_id: &str) -> Result<Vec<String>> {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1885 |     pub async fn probe_heartbeat(&self) -> Result<()> {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2189 |     pub async fn split_position(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_crosses_book_error` is never used
[INFO] [stdout]     --> src/sdk.rs:2337:4
[INFO] [stdout]      |
[INFO] [stdout] 2337 | fn is_crosses_book_error(msg: &str) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `opposite` is never used
[INFO] [stdout]   --> src/types.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl Outcome {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] 98 |     pub fn opposite(self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `outcome_for_token` is never used
[INFO] [stdout]    --> src/types.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl TrackedMarket {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn outcome_for_token(&self, token_id: &str) -> Option<Outcome> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `asset_id` is never read
[INFO] [stdout]    --> src/types.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct OrderBookSnapshot {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] 174 |     pub asset_id: TokenId,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OrderBookSnapshot` 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 `midpoint`, `bid_depth_at_or_above`, `bid_depth_top_n`, `ask_depth_top_n`, and `top_n_imbalance` are never used
[INFO] [stdout]    --> src/types.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl OrderBookSnapshot {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn midpoint(&self) -> Option<Decimal> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn bid_depth_at_or_above(&self, target_price: Decimal) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn bid_depth_top_n(&self, levels: usize) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn ask_depth_top_n(&self, levels: usize) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn top_n_imbalance(&self, levels: usize) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `dust_value` is never used
[INFO] [stdout]    --> src/types.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 264 | impl Position {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn dust_value(&self, min_order_shares: Decimal) -> Decimal {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Daily` is never constructed
[INFO] [stdout]    --> src/types.rs:432:5
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub enum AlertMessage {
[INFO] [stdout]     |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 432 |     Daily(String),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AlertMessage` 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 `Resting`, `Filled`, and `Cancelled` are never constructed
[INFO] [stdout]    --> src/types.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 471 | pub enum OrderState {
[INFO] [stdout]     |          ---------- variants in this enum
[INFO] [stdout] 472 |     Resting,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 473 |     Filled {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 477 |     Cancelled {
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OrderState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `mark_filled`, `mark_cancelled`, and `is_terminal` are never used
[INFO] [stdout]    --> src/types.rs:484:12
[INFO] [stdout]     |
[INFO] [stdout] 483 | impl OrderLifecycle {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 484 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 502 |     pub fn mark_filled(&mut self, fill_price: Decimal) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 511 |     pub fn mark_cancelled(&mut self, reason: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 |     pub fn is_terminal(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `should_cancel_all` and `next_market_start` are never used
[INFO] [stdout]    --> src/types.rs:587:12
[INFO] [stdout]     |
[INFO] [stdout] 534 | impl TimeManager {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 587 |     pub fn should_cancel_all(&self, end_date: DateTime<Utc>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 595 |     pub fn next_market_start(&self, current_end: DateTime<Utc>) -> DateTime<Utc> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]      --> src/orchestrator_v2.rs:11880:25
[INFO] [stdout]       |
[INFO] [stdout] 11880 |                         drop(ms); // release borrow for batch_cancel_confirmed
[INFO] [stdout]       |                         ^^^^^--^
[INFO] [stdout]       |                              |
[INFO] [stdout]       |                              argument has type `&mut orchestrator_v2::MarketV2State`
[INFO] [stdout]       |
[INFO] [stdout]       = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]       |
[INFO] [stdout] 11880 -                         drop(ms); // release borrow for batch_cancel_confirmed
[INFO] [stdout] 11880 +                         let _ = ms; // release borrow for batch_cancel_confirmed
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8m 14s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 6`
[INFO] running `Command { std: "docker" "inspect" "ae3cedd685a92a232cb294b5193fdb80e893add10136522c9990d95a8fa798c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ae3cedd685a92a232cb294b5193fdb80e893add10136522c9990d95a8fa798c4", kill_on_drop: false }`
[INFO] [stdout] ae3cedd685a92a232cb294b5193fdb80e893add10136522c9990d95a8fa798c4
