[INFO] cloning repository https://github.com/wignn/atlsd
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wignn/atlsd" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwignn%2Fatlsd", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwignn%2Fatlsd'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1c675574ccbd0359730b97a05a2e0ff64c8e1867
[INFO] checking wignn/atlsd against master#cf79d034aa3d8f396d407aafce6f1ccd818e710e for pr-155657
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwignn%2Fatlsd" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/wignn/atlsd
[INFO] finished tweaking git repo https://github.com/wignn/atlsd
[INFO] tweaked toml for git repo https://github.com/wignn/atlsd written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/wignn/atlsd on toolchain cf79d034aa3d8f396d407aafce6f1ccd818e710e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf79d034aa3d8f396d407aafce6f1ccd818e710e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/wignn/atlsd 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" "+cf79d034aa3d8f396d407aafce6f1ccd818e710e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded uwl v0.6.0
[INFO] [stderr]   Downloaded typesize-derive v0.1.11
[INFO] [stderr]   Downloaded typemap_rev v0.3.0
[INFO] [stderr]   Downloaded serde_cow v0.1.2
[INFO] [stderr]   Downloaded typesize v0.1.14
[INFO] [stderr]   Downloaded webpki-roots v1.0.7
[INFO] [stderr]   Downloaded serenity-voice-model v0.2.1
[INFO] [stderr]   Downloaded triomphe v0.1.15
[INFO] [stderr]   Downloaded mini-moka v0.10.3
[INFO] [stderr]   Downloaded rustls-webpki v0.103.12
[INFO] [stderr]   Downloaded sysinfo v0.35.2
[INFO] [stderr]   Downloaded aws-lc-rs v1.16.3
[INFO] [stderr]   Downloaded command_attr v0.5.4
[INFO] [stderr]   Downloaded rss v2.0.12
[INFO] [stderr]   Downloaded never v0.1.0
[INFO] [stderr]   Downloaded serenity_poise_macros v0.6.2
[INFO] [stderr]   Downloaded diligent-date-parser v0.1.5
[INFO] [stderr]   Downloaded rustls v0.23.38
[INFO] [stderr]   Downloaded atom_syndication v0.12.7
[INFO] [stderr]   Downloaded trim-in-place v0.1.7
[INFO] [stderr]   Downloaded axum-core v0.5.6
[INFO] [stderr]   Downloaded serenity v0.12.5
[INFO] [stderr]   Downloaded tokio-tungstenite v0.29.0
[INFO] [stderr]   Downloaded argon2 v0.5.3
[INFO] [stderr]   Downloaded simple_asn1 v0.6.4
[INFO] [stderr]   Downloaded tungstenite v0.29.0
[INFO] [stderr]   Downloaded password-hash v0.5.0
[INFO] [stderr]   Downloaded scraper v0.22.0
[INFO] [stderr]   Downloaded arc-swap v1.9.1
[INFO] [stderr]   Downloaded poise v0.6.2
[INFO] [stderr]   Downloaded getopts v0.2.24
[INFO] [stderr]   Downloaded axum v0.8.9
[INFO] [stderr]   Downloaded tokio v1.52.1
[INFO] [stderr]   Downloaded redis v0.27.6
[INFO] [stderr]   Downloaded cssparser v0.34.0
[INFO] [stderr]   Downloaded ego-tree v0.10.0
[INFO] [stderr]   Downloaded match_token v0.35.0
[INFO] [stderr]   Downloaded markup5ever v0.35.0
[INFO] [stderr]   Downloaded rayon v1.12.0
[INFO] [stderr]   Downloaded mediatype v0.19.20
[INFO] [stderr]   Downloaded selectors v0.26.0
[INFO] [stderr]   Downloaded html5ever v0.35.0
[INFO] [stderr]   Downloaded feed-rs v2.3.1
[INFO] [stderr]   Downloaded ammonia v4.1.2
[INFO] [stderr]   Downloaded utf8-width v0.1.8
[INFO] [stderr]   Downloaded web_atoms v0.1.3
[INFO] [stderr]   Downloaded cssparser v0.35.0
[INFO] [stderr]   Downloaded aws-lc-sys v0.40.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cf79d034aa3d8f396d407aafce6f1ccd818e710e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 58162528c15a6067f15862b35448c42c32d647dab8fae656c8db2659d516f9a4
[INFO] running `Command { std: "docker" "start" "-a" "58162528c15a6067f15862b35448c42c32d647dab8fae656c8db2659d516f9a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "58162528c15a6067f15862b35448c42c32d647dab8fae656c8db2659d516f9a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58162528c15a6067f15862b35448c42c32d647dab8fae656c8db2659d516f9a4", kill_on_drop: false }`
[INFO] [stdout] 58162528c15a6067f15862b35448c42c32d647dab8fae656c8db2659d516f9a4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cf79d034aa3d8f396d407aafce6f1ccd818e710e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d848ed242bdea8fb9559a253034483742295943d3abb31a807bf569b9ac25323
[INFO] running `Command { std: "docker" "start" "-a" "d848ed242bdea8fb9559a253034483742295943d3abb31a807bf569b9ac25323", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking typenum v1.20.0
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]     Checking litemap v0.8.2
[INFO] [stderr]     Checking writeable v0.6.3
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling aws-lc-rs v1.16.3
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling siphasher v1.0.2
[INFO] [stderr]    Compiling rustls v0.23.38
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]     Checking hashbrown v0.17.0
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]    Compiling openssl v0.10.77
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]    Compiling tinyvec v1.11.0
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling tokio v1.52.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]     Checking crc-catalog v2.4.0
[INFO] [stderr]     Checking new_debug_unreachable v1.0.6
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling unicode-properties v0.1.4
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]     Checking crc v3.4.0
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling aws-lc-sys v0.40.0
[INFO] [stderr]    Compiling openssl-sys v0.9.113
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling whoami v1.6.1
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]     Checking http-range-header v0.4.2
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]    Compiling rustls v0.22.4
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking futf v0.1.5
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking phf_shared v0.12.1
[INFO] [stderr]     Checking tendril v0.4.3
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking dtoa v1.0.11
[INFO] [stderr]    Compiling chrono-tz v0.10.4
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking dtoa-short v0.3.5
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking phf v0.12.1
[INFO] [stderr]     Checking arc-swap v1.9.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling web_atoms v0.1.3
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling serenity v0.12.5
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking sha1_smol v1.0.1
[INFO] [stderr]    Compiling markup5ever v0.14.1
[INFO] [stderr]     Checking levenshtein v1.0.5
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking uwl v0.6.0
[INFO] [stderr]     Checking typemap_rev v0.3.0
[INFO] [stderr]     Checking never v0.1.0
[INFO] [stderr]     Checking rustc-hash v2.1.2
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling selectors v0.26.0
[INFO] [stderr]     Checking matchit v0.8.4
[INFO] [stderr]     Checking trim-in-place v0.1.7
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking servo_arc v0.4.3
[INFO] [stderr]     Checking sysinfo v0.35.2
[INFO] [stderr]     Checking base64ct v1.8.3
[INFO] [stderr]     Checking regex-lite v0.1.9
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking pem v3.0.6
[INFO] [stderr]     Checking utf8-width v0.1.8
[INFO] [stderr]     Checking ego-tree v0.10.0
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking html-escape v0.2.13
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking rustls-webpki v0.102.8
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling rustls-webpki v0.103.12
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]     Checking tungstenite v0.29.0
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]    Compiling serenity_poise_macros v0.6.2
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling match_token v0.1.0
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]    Compiling match_token v0.35.0
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking derive_builder v0.20.2
[INFO] [stderr]     Checking simple_asn1 v0.6.4
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]    Compiling command_attr v0.5.4
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking quick-xml v0.37.5
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking futures-intrusive v0.5.0
[INFO] [stderr]     Checking string_cache v0.8.9
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking secrecy v0.8.0
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking serenity-voice-model v0.2.1
[INFO] [stderr]     Checking serde_cow v0.1.2
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking diligent-date-parser v0.1.5
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking cssparser v0.34.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking cssparser v0.35.0
[INFO] [stderr]     Checking atom_syndication v0.12.7
[INFO] [stderr]     Checking mediatype v0.19.20
[INFO] [stderr]     Checking markup5ever v0.35.0
[INFO] [stderr]     Checking tungstenite v0.21.0
[INFO] [stderr]     Checking html5ever v0.29.1
[INFO] [stderr]     Checking html5ever v0.35.0
[INFO] [stderr]     Checking jsonwebtoken v9.3.1
[INFO] [stderr]     Checking rss v2.0.12
[INFO] [stderr]     Checking feed-rs v2.3.1
[INFO] [stderr]     Checking ammonia v4.1.2
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]     Checking scraper v0.22.0
[INFO] [stderr]     Checking sysinfo v0.33.1
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-rustls v0.25.0
[INFO] [stderr]     Checking tokio-tungstenite v0.29.0
[INFO] [stderr]     Checking tokio-tungstenite v0.21.0
[INFO] [stderr]    Compiling sqlx-sqlite v0.8.6
[INFO] [stderr]    Compiling sqlx-postgres v0.8.6
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking combine v4.6.7
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]     Checking redis v0.27.6
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum v0.8.9
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tungstenite v0.24.0
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking tokio-tungstenite v0.24.0
[INFO] [stderr]     Checking ingestion-gateway v0.1.0 (/opt/rustwide/workdir/ingestion-gateway)
[INFO] [stdout] warning: function `duration_until_close` is never used
[INFO] [stdout]   --> ingestion-gateway/src/market_hours.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn duration_until_close() -> Option<Duration> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `duration_until_close_from` is never used
[INFO] [stdout]    --> ingestion-gateway/src/market_hours.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn duration_until_close_from(now: chrono::DateTime<Utc>) -> Option<Duration> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `event_time` is never read
[INFO] [stdout]   --> ingestion-gateway/src/workers/binance.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct BinanceTrade {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     event_time: i64,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinanceTrade` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stream` is never read
[INFO] [stdout]   --> ingestion-gateway/src/workers/binance.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct BinanceStreamMessage {
[INFO] [stdout]    |        -------------------- field in this struct
[INFO] [stdout] 34 |     stream: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinanceStreamMessage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `duration_until_close` is never used
[INFO] [stdout]   --> ingestion-gateway/src/market_hours.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn duration_until_close() -> Option<Duration> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `event_time` is never read
[INFO] [stdout]   --> ingestion-gateway/src/workers/binance.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct BinanceTrade {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     event_time: i64,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinanceTrade` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stream` is never read
[INFO] [stdout]   --> ingestion-gateway/src/workers/binance.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct BinanceStreamMessage {
[INFO] [stdout]    |        -------------------- field in this struct
[INFO] [stdout] 34 |     stream: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinanceStreamMessage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking control-plane v0.1.0 (/opt/rustwide/workdir/control-plane)
[INFO] [stderr]     Checking core v0.1.0 (/opt/rustwide/workdir/core)
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> core/src/api/server.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> core/src/collector/twitter.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> core/src/collector/twitter.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{error, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `calendar::*`
[INFO] [stdout]  --> core/src/collector/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use calendar::*;
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rss::*`
[INFO] [stdout]  --> core/src/collector/mod.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use rss::*;
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stock::*`
[INFO] [stdout]  --> core/src/collector/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use stock::*;
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `traits::*`
[INFO] [stdout]   --> core/src/collector/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use traits::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `twitter::*`
[INFO] [stdout]   --> core/src/collector/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use twitter::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error` and `info`
[INFO] [stdout]  --> core/src/pipeline/scheduler.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::{error, debug, info};
[INFO] [stdout]   |               ^^^^^         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> core/src/pipeline/twitter.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{error, info};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::debug`
[INFO] [stdout]  --> core/src/scraper/article.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `article::*`
[INFO] [stdout]  --> core/src/scraper/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use article::*;
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `traits::*`
[INFO] [stdout]  --> core/src/scraper/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use traits::*;
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> core/src/tenant/registry.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{error, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeZone`
[INFO] [stdout]  --> core/src/ws/events.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{TimeZone, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> core/src/api/server.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> core/src/collector/twitter.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> core/src/collector/twitter.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{error, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `calendar::*`
[INFO] [stdout]  --> core/src/collector/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use calendar::*;
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rss::*`
[INFO] [stdout]  --> core/src/collector/mod.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use rss::*;
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stock::*`
[INFO] [stdout]  --> core/src/collector/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use stock::*;
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `traits::*`
[INFO] [stdout]   --> core/src/collector/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use traits::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `twitter::*`
[INFO] [stdout]   --> core/src/collector/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use twitter::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error` and `info`
[INFO] [stdout]  --> core/src/pipeline/scheduler.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::{error, debug, info};
[INFO] [stdout]   |               ^^^^^         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> core/src/pipeline/twitter.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{error, info};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::debug`
[INFO] [stdout]  --> core/src/scraper/article.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `article::*`
[INFO] [stdout]  --> core/src/scraper/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use article::*;
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `traits::*`
[INFO] [stdout]  --> core/src/scraper/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use traits::*;
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> core/src/tenant/registry.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{error, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeZone`
[INFO] [stdout]  --> core/src/ws/events.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{TimeZone, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> core/src/api/handlers/calendar.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let mut items: Vec<Value> = arr
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> core/src/api/handlers/calendar.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let mut items: Vec<Value> = arr
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `key_id` is never read
[INFO] [stdout]    --> control-plane/src/api/server.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct AuthContext {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 137 |     pub user_id: uuid::Uuid,
[INFO] [stdout] 138 |     pub key_id: uuid::Uuid,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AuthContext` 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: field `permissions` is never read
[INFO] [stdout]   --> control-plane/src/models/api_key.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct ApiKeyWithPlan {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub permissions: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApiKeyWithPlan` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `find_by_provider` is never used
[INFO] [stdout]   --> control-plane/src/models/oauth_account.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl OAuthAccount {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 19 |     /// Find an OAuth account by provider + provider_id.
[INFO] [stdout] 20 |     pub async fn find_by_provider(
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `get` and `all_x_usernames` are never used
[INFO] [stdout]   --> control-plane/src/models/tenant_config.rs:32:18
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl TenantConfig {
[INFO] [stdout]    | ----------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub async fn get(
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub async fn all_x_usernames(db: &PgPool) -> Result<Vec<String>, sqlx::Error> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UsageSummary` is never constructed
[INFO] [stdout]   --> control-plane/src/models/usage.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct UsageSummary {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `record` and `count_today` are never used
[INFO] [stdout]   --> control-plane/src/models/usage.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl UsageLog {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] 33 |     /// Record a usage event (fire-and-forget).
[INFO] [stdout] 34 |     pub async fn record(
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub async fn count_today(db: &PgPool, user_id: Uuid) -> Result<i64, sqlx::Error> {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `update_plan` is never used
[INFO] [stdout]    --> control-plane/src/models/user.rs:137:18
[INFO] [stdout]     |
[INFO] [stdout]  43 | impl User {
[INFO] [stdout]     | --------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub async fn update_plan(
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PaymentResponse` is never constructed
[INFO] [stdout]  --> control-plane/src/billing/stub.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct PaymentResponse {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_payment` is never used
[INFO] [stdout]   --> control-plane/src/billing/stub.rs:15:14
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub async fn create_payment(_user_id: Uuid, _plan_id: &str) -> PaymentResponse {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_notification` is never used
[INFO] [stdout]   --> control-plane/src/billing/stub.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub async fn handle_notification(_body: &serde_json::Value) -> Result<(), String> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> core/src/api/handlers/scraping.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 |     State(state): State<AppState>,
[INFO] [stdout]    |           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `key_id` is never read
[INFO] [stdout]    --> control-plane/src/api/server.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct AuthContext {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 137 |     pub user_id: uuid::Uuid,
[INFO] [stdout] 138 |     pub key_id: uuid::Uuid,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AuthContext` 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: field `permissions` is never read
[INFO] [stdout]   --> control-plane/src/models/api_key.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct ApiKeyWithPlan {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub permissions: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApiKeyWithPlan` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `find_by_provider` is never used
[INFO] [stdout]   --> control-plane/src/models/oauth_account.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl OAuthAccount {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 19 |     /// Find an OAuth account by provider + provider_id.
[INFO] [stdout] 20 |     pub async fn find_by_provider(
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `get` and `all_x_usernames` are never used
[INFO] [stdout]   --> control-plane/src/models/tenant_config.rs:32:18
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl TenantConfig {
[INFO] [stdout]    | ----------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub async fn get(
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub async fn all_x_usernames(db: &PgPool) -> Result<Vec<String>, sqlx::Error> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UsageSummary` is never constructed
[INFO] [stdout]   --> control-plane/src/models/usage.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct UsageSummary {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `record` and `count_today` are never used
[INFO] [stdout]   --> control-plane/src/models/usage.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl UsageLog {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] 33 |     /// Record a usage event (fire-and-forget).
[INFO] [stdout] 34 |     pub async fn record(
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub async fn count_today(db: &PgPool, user_id: Uuid) -> Result<i64, sqlx::Error> {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `update_plan` is never used
[INFO] [stdout]    --> control-plane/src/models/user.rs:137:18
[INFO] [stdout]     |
[INFO] [stdout]  43 | impl User {
[INFO] [stdout]     | --------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub async fn update_plan(
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PaymentResponse` is never constructed
[INFO] [stdout]  --> control-plane/src/billing/stub.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct PaymentResponse {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_payment` is never used
[INFO] [stdout]   --> control-plane/src/billing/stub.rs:15:14
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub async fn create_payment(_user_id: Uuid, _plan_id: &str) -> PaymentResponse {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_notification` is never used
[INFO] [stdout]   --> control-plane/src/billing/stub.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub async fn handle_notification(_body: &serde_json::Value) -> Result<(), String> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> core/src/api/handlers/scraping.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 |     State(state): State<AppState>,
[INFO] [stdout]    |           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shutdown_rx`
[INFO] [stdout]    --> core/src/main.rs:100:23
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let (shutdown_tx, shutdown_rx) = tokio::sync::watch::channel(false);
[INFO] [stdout]     |                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `daily_count` is never used
[INFO] [stdout]    --> core/src/api/usage_tracker.rs:114:18
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl UsageTracker {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub async fn daily_count(&self, user_id: Uuid) -> Option<i64> {
[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 `author`, `tags`, and `source_name` are never read
[INFO] [stdout]   --> core/src/collector/rss.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct RSSEntry {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub author: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 19 |     pub tags: Vec<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 20 |     pub content_hash: String,
[INFO] [stdout] 21 |     pub source_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RSSEntry` 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 `author` and `tags` are never read
[INFO] [stdout]   --> core/src/collector/stock.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct StockNewsEntry {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub author: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 22 |     pub tags: Vec<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StockNewsEntry` 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 `timeout` is never read
[INFO] [stdout]    --> core/src/collector/stock.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub struct StockCollector {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 148 |     timeout: Duration,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Collector` is never used
[INFO] [stdout]   --> core/src/collector/traits.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Collector: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_env_f64` is never used
[INFO] [stdout]   --> core/src/config.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn get_env_f64(key: &str, fallback: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AppError` is never used
[INFO] [stdout]  --> core/src/error.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum AppError {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `RE_PARAGRAPHS` is never used
[INFO] [stdout]   --> core/src/html/clean.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | static RE_PARAGRAPHS: LazyLock<Regex> =
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_paragraphs` is never used
[INFO] [stdout]   --> core/src/html/clean.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn extract_paragraphs(html_content: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `updated_at` is never read
[INFO] [stdout]   --> core/src/ingestion_subscriber.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct CachedPrice {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub updated_at: Option<Instant>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CachedPrice` 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: trait `Pipeline` is never used
[INFO] [stdout]  --> core/src/pipeline/traits.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub trait Pipeline: Send + Sync {
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `url`, `author`, and `word_count` are never read
[INFO] [stdout]   --> core/src/scraper/article.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ScrapedArticle {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 11 |     pub url: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub author: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub word_count: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ScrapedArticle` 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: trait `Scraper` is never used
[INFO] [stdout]  --> core/src/scraper/traits.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait Scraper: Send + Sync {
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `plan`, `rate_limit_per_min`, and `can_scrape` are never read
[INFO] [stdout]   --> core/src/tenant/context.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct TenantContext {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  9 |     pub plan: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub rate_limit_per_min: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub can_scrape: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TenantContext` 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 `id` is never read
[INFO] [stdout]  --> core/src/ws/client.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct ClientHandle {
[INFO] [stdout]   |            ------------ field in this struct
[INFO] [stdout] 7 |     pub id: super::hub::ClientId,
[INFO] [stdout]   |         ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_NEWS_HIGH_IMPACT` is never used
[INFO] [stdout]  --> core/src/ws/events.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const EVENT_NEWS_HIGH_IMPACT: &str = "news.high_impact";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_GOLD_VOLATILITY_SPIKE` is never used
[INFO] [stdout]   --> core/src/ws/events.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const EVENT_GOLD_VOLATILITY_SPIKE: &str = "gold.volatility_spike";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_HEARTBEAT` is never used
[INFO] [stdout]   --> core/src/ws/events.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const EVENT_HEARTBEAT: &str = "heartbeat";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_SYSTEM_STATUS` is never used
[INFO] [stdout]   --> core/src/ws/events.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const EVENT_SYSTEM_STATUS: &str = "system.status";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `client_count` is never used
[INFO] [stdout]    --> core/src/ws/hub.rs:176:18
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl Hub {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub async fn client_count(&self) -> usize {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shutdown_rx`
[INFO] [stdout]    --> core/src/main.rs:100:23
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let (shutdown_tx, shutdown_rx) = tokio::sync::watch::channel(false);
[INFO] [stdout]     |                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `daily_count` is never used
[INFO] [stdout]    --> core/src/api/usage_tracker.rs:114:18
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl UsageTracker {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub async fn daily_count(&self, user_id: Uuid) -> Option<i64> {
[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 `author`, `tags`, and `source_name` are never read
[INFO] [stdout]   --> core/src/collector/rss.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct RSSEntry {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub author: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 19 |     pub tags: Vec<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 20 |     pub content_hash: String,
[INFO] [stdout] 21 |     pub source_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RSSEntry` 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 `author` and `tags` are never read
[INFO] [stdout]   --> core/src/collector/stock.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct StockNewsEntry {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub author: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 22 |     pub tags: Vec<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StockNewsEntry` 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 `timeout` is never read
[INFO] [stdout]    --> core/src/collector/stock.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub struct StockCollector {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 148 |     timeout: Duration,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Collector` is never used
[INFO] [stdout]   --> core/src/collector/traits.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Collector: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_env_f64` is never used
[INFO] [stdout]   --> core/src/config.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn get_env_f64(key: &str, fallback: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AppError` is never used
[INFO] [stdout]  --> core/src/error.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum AppError {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `RE_PARAGRAPHS` is never used
[INFO] [stdout]   --> core/src/html/clean.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | static RE_PARAGRAPHS: LazyLock<Regex> =
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_paragraphs` is never used
[INFO] [stdout]   --> core/src/html/clean.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn extract_paragraphs(html_content: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `updated_at` is never read
[INFO] [stdout]   --> core/src/ingestion_subscriber.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct CachedPrice {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub updated_at: Option<Instant>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CachedPrice` 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: trait `Pipeline` is never used
[INFO] [stdout]  --> core/src/pipeline/traits.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub trait Pipeline: Send + Sync {
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `url`, `author`, and `word_count` are never read
[INFO] [stdout]   --> core/src/scraper/article.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ScrapedArticle {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 11 |     pub url: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub author: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub word_count: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ScrapedArticle` 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: trait `Scraper` is never used
[INFO] [stdout]  --> core/src/scraper/traits.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait Scraper: Send + Sync {
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `plan`, `rate_limit_per_min`, and `can_scrape` are never read
[INFO] [stdout]   --> core/src/tenant/context.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct TenantContext {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  9 |     pub plan: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub rate_limit_per_min: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub can_scrape: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TenantContext` 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 `id` is never read
[INFO] [stdout]  --> core/src/ws/client.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct ClientHandle {
[INFO] [stdout]   |            ------------ field in this struct
[INFO] [stdout] 7 |     pub id: super::hub::ClientId,
[INFO] [stdout]   |         ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_NEWS_HIGH_IMPACT` is never used
[INFO] [stdout]  --> core/src/ws/events.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const EVENT_NEWS_HIGH_IMPACT: &str = "news.high_impact";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_GOLD_VOLATILITY_SPIKE` is never used
[INFO] [stdout]   --> core/src/ws/events.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const EVENT_GOLD_VOLATILITY_SPIKE: &str = "gold.volatility_spike";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_HEARTBEAT` is never used
[INFO] [stdout]   --> core/src/ws/events.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const EVENT_HEARTBEAT: &str = "heartbeat";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVENT_SYSTEM_STATUS` is never used
[INFO] [stdout]   --> core/src/ws/events.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const EVENT_SYSTEM_STATUS: &str = "system.status";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `client_count` is never used
[INFO] [stdout]    --> core/src/ws/hub.rs:176:18
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl Hub {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub async fn client_count(&self) -> usize {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking poise v0.6.2
[INFO] [stderr]     Checking bot v0.1.0 (/opt/rustwide/workdir/bot)
[INFO] [stdout] warning: unused variable: `limit`
[INFO] [stdout]    --> bot/src/commands/stock.rs:177:51
[INFO] [stdout]     |
[INFO] [stdout] 177 |     #[description = "Number of results (max 10)"] limit: Option<i64>,
[INFO] [stdout]     |                                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_limit`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limit`
[INFO] [stdout]    --> bot/src/commands/stock.rs:177:51
[INFO] [stdout]     |
[INFO] [stdout] 177 |     #[description = "Number of results (max 10)"] limit: Option<i64>,
[INFO] [stdout]     |                                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_limit`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 38s
[INFO] running `Command { std: "docker" "inspect" "d848ed242bdea8fb9559a253034483742295943d3abb31a807bf569b9ac25323", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d848ed242bdea8fb9559a253034483742295943d3abb31a807bf569b9ac25323", kill_on_drop: false }`
[INFO] [stdout] d848ed242bdea8fb9559a253034483742295943d3abb31a807bf569b9ac25323
