[INFO] cloning repository https://github.com/honerop/Astolfo-Bot
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/honerop/Astolfo-Bot" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhonerop%2FAstolfo-Bot", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhonerop%2FAstolfo-Bot'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 72dd89e91a1cc4aee332d05f5de38d65aec7d107
[INFO] checking honerop/Astolfo-Bot against master#8b6b15b877fbceb1ee5d9a5a4746e7515901574a for pr-147294
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhonerop%2FAstolfo-Bot" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/honerop/Astolfo-Bot
[INFO] finished tweaking git repo https://github.com/honerop/Astolfo-Bot
[INFO] tweaked toml for git repo https://github.com/honerop/Astolfo-Bot written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/honerop/Astolfo-Bot on toolchain 8b6b15b877fbceb1ee5d9a5a4746e7515901574a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8b6b15b877fbceb1ee5d9a5a4746e7515901574a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/honerop/Astolfo-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" "+8b6b15b877fbceb1ee5d9a5a4746e7515901574a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded xml v0.8.20
[INFO] [stderr]   Downloaded typesize v0.1.14
[INFO] [stderr]   Downloaded typemap_rev v0.3.0
[INFO] [stderr]   Downloaded uwl v0.6.0
[INFO] [stderr]   Downloaded levenshtein v1.0.5
[INFO] [stderr]   Downloaded serde_cow v0.1.2
[INFO] [stderr]   Downloaded skeptic v0.13.7
[INFO] [stderr]   Downloaded mini-moka v0.10.3
[INFO] [stderr]   Downloaded typesize-derive v0.1.11
[INFO] [stderr]   Downloaded command_attr v0.5.3
[INFO] [stderr]   Downloaded serenity v0.12.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+8b6b15b877fbceb1ee5d9a5a4746e7515901574a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5557e1b40083e0e97fc50717b1da27ef939760f9bfa12832bc1a840988dfdf4a
[INFO] running `Command { std: "docker" "start" "-a" "5557e1b40083e0e97fc50717b1da27ef939760f9bfa12832bc1a840988dfdf4a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5557e1b40083e0e97fc50717b1da27ef939760f9bfa12832bc1a840988dfdf4a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5557e1b40083e0e97fc50717b1da27ef939760f9bfa12832bc1a840988dfdf4a", kill_on_drop: false }`
[INFO] [stdout] 5557e1b40083e0e97fc50717b1da27ef939760f9bfa12832bc1a840988dfdf4a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+8b6b15b877fbceb1ee5d9a5a4746e7515901574a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 126acf68ee8197efa2e55c5cd2bce53c6c2c931e6b638a6d6c48e1d2f606f440
[INFO] running `Command { std: "docker" "start" "-a" "126acf68ee8197efa2e55c5cd2bce53c6c2c931e6b638a6d6c48e1d2f606f440", kill_on_drop: false }`
[INFO] [stderr]     Checking smallvec v1.15.0
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]     Checking hashbrown v0.15.3
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]    Compiling zerovec v0.11.2
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling tracing-core v0.1.33
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]     Checking tokio v1.45.1
[INFO] [stderr]     Checking indexmap v2.9.0
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]     Checking openssl v0.10.72
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling socket2 v0.5.9
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.2
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling rustls v0.22.4
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]     Checking webpki-roots v1.0.0
[INFO] [stderr]     Checking data-encoding v2.9.0
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]     Checking miniz_oxide v0.8.8
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serenity v0.12.4
[INFO] [stderr]     Checking xml-rs v0.8.26
[INFO] [stderr]     Checking flate2 v1.1.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]     Checking typemap_rev v0.3.0
[INFO] [stderr]     Checking rustls-webpki v0.102.8
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking serde_json v1.0.140
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]     Checking deranged v0.4.0
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking serde_cow v0.1.2
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking secrecy v0.8.0
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking levenshtein v1.0.5
[INFO] [stderr]     Checking uwl v0.6.0
[INFO] [stderr]     Checking xml v0.8.20
[INFO] [stderr]     Checking serde-xml-rs v0.6.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking quick-xml v0.31.0
[INFO] [stderr]     Checking native-tls v0.2.14
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking sqlx-core v0.8.6
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking tungstenite v0.21.0
[INFO] [stderr]     Checking tokio-rustls v0.25.0
[INFO] [stderr]    Compiling command_attr v0.5.3
[INFO] [stderr]     Checking tokio-tungstenite v0.21.0
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking sqlx-sqlite v0.8.6
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking astolfo_bot v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `serenity::model::gateway::Ready`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serenity::model::gateway::Ready;
[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 import: `serenity::model::gateway::Ready`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serenity::model::gateway::Ready;
[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 import: `sqlx::sqlite::SqliteError`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use sqlx::sqlite::SqliteError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::sqlite::SqliteError`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use sqlx::sqlite::SqliteError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::sqlite::SqliteQueryResult`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use sqlx::sqlite::SqliteQueryResult;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::sqlite::SqliteQueryResult`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use sqlx::sqlite::SqliteQueryResult;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::sqlite::SqliteRow`
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use sqlx::sqlite::SqliteRow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::sqlite::SqliteRow`
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use sqlx::sqlite::SqliteRow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/main.rs:167:13
[INFO] [stdout]     |
[INFO] [stdout] 167 |         Err(e) => { //TODO handle unsuccesful sending of data}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/main.rs:167:13
[INFO] [stdout]     |
[INFO] [stdout] 167 |         Err(e) => { //TODO handle unsuccesful sending of data}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/main.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 |             Err(e) => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/main.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 |             Err(e) => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/main.rs:268:16
[INFO] [stdout]     |
[INFO] [stdout] 268 |             Ok(v) => {
[INFO] [stdout]     |                ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/main.rs:268:16
[INFO] [stdout]     |
[INFO] [stdout] 268 |             Ok(v) => {
[INFO] [stdout]     |                ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prompt`
[INFO] [stdout]    --> src/main.rs:295:17
[INFO] [stdout]     |
[INFO] [stdout] 295 |             let prompt = msg.content[0..idx].to_string()
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prompt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prompt`
[INFO] [stdout]    --> src/main.rs:295:17
[INFO] [stdout]     |
[INFO] [stdout] 295 |             let prompt = msg.content[0..idx].to_string()
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prompt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/main.rs:388:9
[INFO] [stdout]     |
[INFO] [stdout] 388 |     let env = env::var("DATABASE_URL").unwrap();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/main.rs:388:9
[INFO] [stdout]     |
[INFO] [stdout] 388 |     let env = env::var("DATABASE_URL").unwrap();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Posts` is never constructed
[INFO] [stdout]   --> src/main.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Posts {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Post` is never constructed
[INFO] [stdout]   --> src/main.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | struct Post {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_unique_attack` is never used
[INFO] [stdout]    --> src/main.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn handle_unique_attack(inp: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `user_id` and `rarity` are never read
[INFO] [stdout]    --> src/main.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 120 | struct Item {
[INFO] [stdout]     |        ---- fields in this struct
[INFO] [stdout] 121 |     id: i64,
[INFO] [stdout] 122 |     user_id: i64,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 123 |     rarity: Option<String>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Item` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OllamaRequest` is never constructed
[INFO] [stdout]  --> src/deepseek.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct OllamaRequest {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OllamaResponse` is never constructed
[INFO] [stdout]   --> src/deepseek.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct OllamaResponse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `request_ollama` is never used
[INFO] [stdout]   --> src/deepseek.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub async fn request_ollama(prompt: String) -> Result<String, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Posts` is never constructed
[INFO] [stdout]   --> src/main.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Posts {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Post` is never constructed
[INFO] [stdout]   --> src/main.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | struct Post {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_unique_attack` is never used
[INFO] [stdout]    --> src/main.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn handle_unique_attack(inp: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `user_id` and `rarity` are never read
[INFO] [stdout]    --> src/main.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 120 | struct Item {
[INFO] [stdout]     |        ---- fields in this struct
[INFO] [stdout] 121 |     id: i64,
[INFO] [stdout] 122 |     user_id: i64,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 123 |     rarity: Option<String>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Item` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OllamaRequest` is never constructed
[INFO] [stdout]  --> src/deepseek.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct OllamaRequest {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OllamaResponse` is never constructed
[INFO] [stdout]   --> src/deepseek.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct OllamaResponse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `request_ollama` is never used
[INFO] [stdout]   --> src/deepseek.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub async fn request_ollama(prompt: String) -> Result<String, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:185:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 msg.channel_id.say(&ctx.http, message).await;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 let _ = msg.channel_id.say(&ctx.http, message).await;
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 msg.channel_id.say(&ctx.http, format!("Error: {e}")).await;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 let _ = msg.channel_id.say(&ctx.http, format!("Error: {e}")).await;
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 | /             insert_new_femboy(
[INFO] [stdout] 203 | |                 pool,
[INFO] [stdout] 204 | |                 msg.author.id.get() as i64,
[INFO] [stdout] 205 | |                 &femboy_rarity.rarity,
[INFO] [stdout] ...   |
[INFO] [stdout] 208 | |             .await;
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 202 |             let _ = insert_new_femboy(
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:209:13
[INFO] [stdout]     |
[INFO] [stdout] 209 |             remove_money_from_user_id(pool, &(msg.author.id.get() as i64), &2).await;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 209 |             let _ = remove_money_from_user_id(pool, &(msg.author.id.get() as i64), &2).await;
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 | /         msg.channel_id
[INFO] [stdout] 212 | |             .say(
[INFO] [stdout] 213 | |                 &ctx.http,
[INFO] [stdout] 214 | |                 format!(
[INFO] [stdout] ...   |
[INFO] [stdout] 219 | |             .await;
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let _ = msg.channel_id
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |         file.read_to_end(&mut buffer).await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 234 |         let _ = file.read_to_end(&mut buffer).await;
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 | /         msg.channel_id
[INFO] [stdout] 239 | |             .send_files(&ctx.http, vec![attachment], CreateMessage::new())
[INFO] [stdout] 240 | |             .await;
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 238 |         let _ = msg.channel_id
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:251:17
[INFO] [stdout]     |
[INFO] [stdout] 251 | /                 msg.channel_id
[INFO] [stdout] 252 | |                     .say(&ctx.http, "You have been registered")
[INFO] [stdout] 253 | |                     .await;
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 let _ = msg.channel_id
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 | /                 msg.channel_id
[INFO] [stdout] 257 | |                     .say(&ctx.http, "You are already registered")
[INFO] [stdout] 258 | |                     .await;
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 256 |                 let _ = msg.channel_id
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:185:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 msg.channel_id.say(&ctx.http, message).await;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 let _ = msg.channel_id.say(&ctx.http, message).await;
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 msg.channel_id.say(&ctx.http, format!("Error: {e}")).await;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 let _ = msg.channel_id.say(&ctx.http, format!("Error: {e}")).await;
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 | /             insert_new_femboy(
[INFO] [stdout] 203 | |                 pool,
[INFO] [stdout] 204 | |                 msg.author.id.get() as i64,
[INFO] [stdout] 205 | |                 &femboy_rarity.rarity,
[INFO] [stdout] ...   |
[INFO] [stdout] 208 | |             .await;
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 202 |             let _ = insert_new_femboy(
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:209:13
[INFO] [stdout]     |
[INFO] [stdout] 209 |             remove_money_from_user_id(pool, &(msg.author.id.get() as i64), &2).await;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 209 |             let _ = remove_money_from_user_id(pool, &(msg.author.id.get() as i64), &2).await;
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 | /         msg.channel_id
[INFO] [stdout] 212 | |             .say(
[INFO] [stdout] 213 | |                 &ctx.http,
[INFO] [stdout] 214 | |                 format!(
[INFO] [stdout] ...   |
[INFO] [stdout] 219 | |             .await;
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let _ = msg.channel_id
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |         file.read_to_end(&mut buffer).await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 234 |         let _ = file.read_to_end(&mut buffer).await;
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 | /         msg.channel_id
[INFO] [stdout] 239 | |             .send_files(&ctx.http, vec![attachment], CreateMessage::new())
[INFO] [stdout] 240 | |             .await;
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 238 |         let _ = msg.channel_id
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:251:17
[INFO] [stdout]     |
[INFO] [stdout] 251 | /                 msg.channel_id
[INFO] [stdout] 252 | |                     .say(&ctx.http, "You have been registered")
[INFO] [stdout] 253 | |                     .await;
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 let _ = msg.channel_id
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 | /                 msg.channel_id
[INFO] [stdout] 257 | |                     .say(&ctx.http, "You are already registered")
[INFO] [stdout] 258 | |                     .await;
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 256 |                 let _ = msg.channel_id
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 01s
[INFO] running `Command { std: "docker" "inspect" "126acf68ee8197efa2e55c5cd2bce53c6c2c931e6b638a6d6c48e1d2f606f440", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "126acf68ee8197efa2e55c5cd2bce53c6c2c931e6b638a6d6c48e1d2f606f440", kill_on_drop: false }`
[INFO] [stdout] 126acf68ee8197efa2e55c5cd2bce53c6c2c931e6b638a6d6c48e1d2f606f440
