[INFO] cloning repository https://github.com/de-authority/pulse [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/de-authority/pulse" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fde-authority%2Fpulse", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fde-authority%2Fpulse'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 887c6c2c1ff9d4bdba37b23bdfbb984ffd72dc45 [INFO] testing de-authority/pulse against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fde-authority%2Fpulse" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/de-authority/pulse [INFO] finished tweaking git repo https://github.com/de-authority/pulse [INFO] tweaked toml for git repo https://github.com/de-authority/pulse written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/de-authority/pulse on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/de-authority/pulse 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 62fa63dd58c55e9741437932287b7b2cae799f0d564de63aceea434f6991513d [INFO] running `Command { std: "docker" "start" "-a" "62fa63dd58c55e9741437932287b7b2cae799f0d564de63aceea434f6991513d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "62fa63dd58c55e9741437932287b7b2cae799f0d564de63aceea434f6991513d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "62fa63dd58c55e9741437932287b7b2cae799f0d564de63aceea434f6991513d", kill_on_drop: false }` [INFO] [stdout] 62fa63dd58c55e9741437932287b7b2cae799f0d564de63aceea434f6991513d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4fbdabe8682ffa18762c1d4a50e866a77a7403698d3fc69dbc59934544518865 [INFO] running `Command { std: "docker" "start" "-a" "4fbdabe8682ffa18762c1d4a50e866a77a7403698d3fc69dbc59934544518865", kill_on_drop: false }` [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling socket2 v0.6.2 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling openssl-sys v0.9.111 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling sqlformat v0.2.6 [INFO] [stderr] Compiling libsqlite3-sys v0.27.0 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling futures-intrusive v0.5.0 [INFO] [stderr] Compiling getrandom v0.4.1 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling openssl v0.10.75 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling http-body v0.4.6 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling flume v0.11.1 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling atoi v2.0.0 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling dotenvy v0.15.7 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling html5ever v0.26.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling hashlink v0.8.4 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling phf_generator v0.11.3 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling phf_generator v0.10.0 [INFO] [stderr] Compiling phf_codegen v0.10.0 [INFO] [stderr] Compiling string_cache_codegen v0.5.4 [INFO] [stderr] Compiling markup5ever v0.11.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling string_cache v0.8.9 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling tracing-serde v0.2.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling xml5ever v0.17.0 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling markup5ever_rcdom v0.2.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling h2 v0.3.27 [INFO] [stderr] Compiling sqlx-core v0.7.4 [INFO] [stderr] Compiling sqlx-sqlite v0.7.4 [INFO] [stderr] Compiling hyper v0.14.32 [INFO] [stderr] Compiling sqlx-macros-core v0.7.4 [INFO] [stderr] Compiling sqlx-macros v0.7.4 [INFO] [stderr] Compiling hyper-tls v0.5.0 [INFO] [stderr] Compiling reqwest v0.11.27 [INFO] [stderr] Compiling sqlx v0.7.4 [INFO] [stderr] Compiling readability v0.3.0 [INFO] [stderr] Compiling trendarc v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `FetchHotNewsUseCase` [INFO] [stdout] --> src/application/orchestration.rs:1:74 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::application::use_cases::fetch_hot_news::{FetchHotNewsService, FetchHotNewsUseCase}; [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: `CompositeNewsFetcher` [INFO] [stdout] --> src/domain/fetchers/mod.rs:5:45 [INFO] [stdout] | [INFO] [stdout] 5 | pub use source_factory::{NewsSourceFactory, CompositeNewsFetcher}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::future::join_all` [INFO] [stdout] --> src/domain/services/news_classification_service.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use futures::future::join_all; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/infrastructure/inference/openai_inference_service.rs:231:9 [INFO] [stdout] | [INFO] [stdout] 231 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Utc` [INFO] [stdout] --> src/infrastructure/inference/openai_inference_service.rs:232:9 [INFO] [stdout] | [INFO] [stdout] 232 | use chrono::Utc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::json` [INFO] [stdout] --> src/infrastructure/inference/openai_inference_service.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | use serde_json::json; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/infrastructure/inference/openai_inference_service.rs:234:21 [INFO] [stdout] | [INFO] [stdout] 234 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `inference::OpenAIInferenceService` [INFO] [stdout] --> src/infrastructure/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use inference::OpenAIInferenceService; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/domain/fetchers/source_factory.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let mut remaining_limit = limit; [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] --> src/domain/fetchers/source_factory.rs:88:17 [INFO] [stdout] | [INFO] [stdout] 88 | let mut remaining_sources = self.fetchers.clone(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/domain/services/discord_service.rs:81:21 [INFO] [stdout] | [INFO] [stdout] 81 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/domain/services/discord_service.rs:93:21 [INFO] [stdout] | [INFO] [stdout] 93 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/domain/services/discord_service.rs:105:21 [INFO] [stdout] | [INFO] [stdout] 105 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `preview` [INFO] [stdout] --> src/domain/services/news_classification_service.rs:98:21 [INFO] [stdout] | [INFO] [stdout] 98 | let preview = if text_len > limit { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `domain` [INFO] [stdout] --> src/domain/services/news_classification_service.rs:232:31 [INFO] [stdout] | [INFO] [stdout] 232 | fn append_keywords(&self, domain: Domain, keywords: Vec) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_domain` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch_from_source` is never used [INFO] [stdout] --> src/application/orchestration.rs:42:14 [INFO] [stdout] | [INFO] [stdout] 42 | pub async fn fetch_from_source( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `FetchHotNewsUseCase` is never used [INFO] [stdout] --> src/application/use_cases/fetch_hot_news.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait FetchHotNewsUseCase: Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `empty`, `add_strong_keyword`, `add_weak_keyword`, and `merge_suggested_keywords` are never used [INFO] [stdout] --> src/domain/config/classification_config.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl ClassificationConfig { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 102 | /// Create a new empty configuration [INFO] [stdout] 103 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn add_strong_keyword(&mut self, domain: Domain, keyword: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn add_weak_keyword(&mut self, domain: Domain, keyword: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn merge_suggested_keywords(&mut self, domain: Domain, keywords: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_with_classification`, `with_content`, and `with_reason` are never used [INFO] [stdout] --> src/domain/entities/news_item.rs:85:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl NewsItem { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn new_with_classification( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn with_content(mut self, content: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn with_reason(mut self, reason: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `save`, `find_by_id`, `find_by_domain`, and `find_by_url` are never used [INFO] [stdout] --> src/domain/repositories/news_repository.rs:12:14 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait NewsRepository: Send + Sync { [INFO] [stdout] | -------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 12 | async fn save(&self, news: &NewsItem) -> Result<(), Box>; [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | async fn find_by_id( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | async fn find_by_domain( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | async fn find_by_url( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `name` is never used [INFO] [stdout] --> src/domain/services/content_extractor.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait ContentExtractor: Send + Sync { [INFO] [stdout] | ---------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 19 | fn name(&self) -> &str; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `title` and `source_url` are never read [INFO] [stdout] --> src/domain/services/content_extractor.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ExtractedContent { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 24 | pub title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | pub text: String, [INFO] [stdout] 26 | pub source_url: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExtractedContent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `send_message` is never used [INFO] [stdout] --> src/domain/services/discord_service.rs:147:14 [INFO] [stdout] | [INFO] [stdout] 145 | pub trait DiscordService: Send + Sync { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] 146 | /// 发送单条消息到 Discord [INFO] [stdout] 147 | async fn send_message(&self, message: &DiscordMessage) -> Result<(), Box>; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config_path` is never read [INFO] [stdout] --> src/domain/services/news_classification_service.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct NewsClassificationService { [INFO] [stdout] | ------------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | config_path: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `sort_by_published_at_asc`, `sort_by_title`, `sort_by_source`, and `sort_by_author` are never used [INFO] [stdout] --> src/domain/services/news_sorting_service.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl NewsSortingService { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn sort_by_published_at_asc(news: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn sort_by_title(news: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn sort_by_source(news: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn sort_by_author(news: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `medium_confidence`, `low_confidence`, and `with_ai_refinement` are never used [INFO] [stdout] --> src/domain/strategies/classification_strategy.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ClassificationResult { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn medium_confidence(domain: Domain, strategy_name: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn low_confidence(domain: Domain, strategy_name: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn with_ai_refinement(mut self, needs_ai: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `name` is never used [INFO] [stdout] --> src/domain/strategies/classification_strategy.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub trait ClassificationStrategy: Send + Sync { [INFO] [stdout] | ---------------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 93 | fn name(&self) -> &str; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SourceBasedStrategy` is never constructed [INFO] [stdout] --> src/domain/strategies/source_based_strategy.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SourceBasedStrategy { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_config` are never used [INFO] [stdout] --> src/domain/strategies/source_based_strategy.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl SourceBasedStrategy { [INFO] [stdout] | ------------------------ associated functions in this implementation [INFO] [stdout] 16 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn from_config(config: ClassificationConfig) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_env` is never used [INFO] [stdout] --> src/infrastructure/discord/mod.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl DiscordWebhookService { [INFO] [stdout] | -------------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn from_env() -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `score` is never read [INFO] [stdout] --> src/infrastructure/news_sources/hacker_news_source.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 12 | struct RawHNItem { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | score: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RawHNItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 51.67s [INFO] running `Command { std: "docker" "inspect" "4fbdabe8682ffa18762c1d4a50e866a77a7403698d3fc69dbc59934544518865", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4fbdabe8682ffa18762c1d4a50e866a77a7403698d3fc69dbc59934544518865", kill_on_drop: false }` [INFO] [stdout] 4fbdabe8682ffa18762c1d4a50e866a77a7403698d3fc69dbc59934544518865 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a3a27d7b86aeaad15af1670ffb0f996b641447c62caed76cba9fa25e57f5f474 [INFO] running `Command { std: "docker" "start" "-a" "a3a27d7b86aeaad15af1670ffb0f996b641447c62caed76cba9fa25e57f5f474", kill_on_drop: false }` [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling hyper v0.14.32 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling waker-fn v1.2.0 [INFO] [stderr] Compiling fastrand v1.9.0 [INFO] [stderr] Compiling http-types v2.12.0 [INFO] [stderr] Compiling serde_qs v0.8.5 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling infer v0.2.3 [INFO] [stderr] Compiling deadpool-runtime v0.1.4 [INFO] [stderr] Compiling retain_mut v0.1.9 [INFO] [stderr] Compiling assert-json-diff v2.0.2 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling async-channel v1.9.0 [INFO] [stderr] Compiling futures-lite v1.13.0 [INFO] [stderr] Compiling deadpool v0.9.5 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling sqlx-core v0.7.4 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling phf_generator v0.11.3 [INFO] [stderr] Compiling phf_generator v0.10.0 [INFO] [stderr] Compiling phf_codegen v0.10.0 [INFO] [stderr] Compiling string_cache_codegen v0.5.4 [INFO] [stderr] Compiling markup5ever v0.11.0 [INFO] [stderr] Compiling sqlx-sqlite v0.7.4 [INFO] [stderr] Compiling html5ever v0.26.0 [INFO] [stderr] Compiling xml5ever v0.17.0 [INFO] [stderr] Compiling hyper-tls v0.5.0 [INFO] [stderr] Compiling wiremock v0.5.22 [INFO] [stderr] Compiling markup5ever_rcdom v0.2.0 [INFO] [stderr] Compiling reqwest v0.11.27 [INFO] [stderr] Compiling sqlx v0.7.4 [INFO] [stderr] Compiling readability v0.3.0 [INFO] [stderr] Compiling trendarc v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `FetchHotNewsUseCase` [INFO] [stdout] --> src/application/orchestration.rs:1:74 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::application::use_cases::fetch_hot_news::{FetchHotNewsService, FetchHotNewsUseCase}; [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: `super::*` [INFO] [stdout] --> src/cli.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CompositeNewsFetcher` [INFO] [stdout] --> src/domain/fetchers/mod.rs:5:45 [INFO] [stdout] | [INFO] [stdout] 5 | pub use source_factory::{NewsSourceFactory, CompositeNewsFetcher}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::future::join_all` [INFO] [stdout] --> src/domain/services/news_classification_service.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use futures::future::join_all; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::json` [INFO] [stdout] --> src/infrastructure/inference/openai_inference_service.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | use serde_json::json; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/infrastructure/inference/openai_inference_service.rs:234:21 [INFO] [stdout] | [INFO] [stdout] 234 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `inference::OpenAIInferenceService` [INFO] [stdout] --> src/infrastructure/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use inference::OpenAIInferenceService; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/domain/fetchers/source_factory.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let mut remaining_limit = limit; [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] --> src/domain/fetchers/source_factory.rs:88:17 [INFO] [stdout] | [INFO] [stdout] 88 | let mut remaining_sources = self.fetchers.clone(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/domain/services/discord_service.rs:81:21 [INFO] [stdout] | [INFO] [stdout] 81 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/domain/services/discord_service.rs:93:21 [INFO] [stdout] | [INFO] [stdout] 93 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/domain/services/discord_service.rs:105:21 [INFO] [stdout] | [INFO] [stdout] 105 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `preview` [INFO] [stdout] --> src/domain/services/news_classification_service.rs:98:21 [INFO] [stdout] | [INFO] [stdout] 98 | let preview = if text_len > limit { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `domain` [INFO] [stdout] --> src/domain/services/news_classification_service.rs:232:31 [INFO] [stdout] | [INFO] [stdout] 232 | fn append_keywords(&self, domain: Domain, keywords: Vec) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_domain` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fetch_from_source` is never used [INFO] [stdout] --> src/application/orchestration.rs:42:14 [INFO] [stdout] | [INFO] [stdout] 42 | pub async fn fetch_from_source( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `empty`, `add_strong_keyword`, `add_weak_keyword`, and `merge_suggested_keywords` are never used [INFO] [stdout] --> src/domain/config/classification_config.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl ClassificationConfig { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 102 | /// Create a new empty configuration [INFO] [stdout] 103 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn add_strong_keyword(&mut self, domain: Domain, keyword: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn add_weak_keyword(&mut self, domain: Domain, keyword: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn merge_suggested_keywords(&mut self, domain: Domain, keywords: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_with_classification` and `with_reason` are never used [INFO] [stdout] --> src/domain/entities/news_item.rs:85:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl NewsItem { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn new_with_classification( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn with_reason(mut self, reason: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `save`, `find_by_id`, `find_by_domain`, and `find_by_url` are never used [INFO] [stdout] --> src/domain/repositories/news_repository.rs:12:14 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait NewsRepository: Send + Sync { [INFO] [stdout] | -------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 12 | async fn save(&self, news: &NewsItem) -> Result<(), Box>; [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | async fn find_by_id( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | async fn find_by_domain( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | async fn find_by_url( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `name` is never used [INFO] [stdout] --> src/domain/services/content_extractor.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait ContentExtractor: Send + Sync { [INFO] [stdout] | ---------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 19 | fn name(&self) -> &str; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `title` and `source_url` are never read [INFO] [stdout] --> src/domain/services/content_extractor.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ExtractedContent { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 24 | pub title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | pub text: String, [INFO] [stdout] 26 | pub source_url: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExtractedContent` 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 `config_path` is never read [INFO] [stdout] --> src/domain/services/news_classification_service.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct NewsClassificationService { [INFO] [stdout] | ------------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | config_path: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `medium_confidence` and `with_ai_refinement` are never used [INFO] [stdout] --> src/domain/strategies/classification_strategy.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ClassificationResult { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn medium_confidence(domain: Domain, strategy_name: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn with_ai_refinement(mut self, needs_ai: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `name` is never used [INFO] [stdout] --> src/domain/strategies/classification_strategy.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub trait ClassificationStrategy: Send + Sync { [INFO] [stdout] | ---------------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 93 | fn name(&self) -> &str; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SourceBasedStrategy` is never constructed [INFO] [stdout] --> src/domain/strategies/source_based_strategy.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SourceBasedStrategy { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_config` are never used [INFO] [stdout] --> src/domain/strategies/source_based_strategy.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl SourceBasedStrategy { [INFO] [stdout] | ------------------------ associated functions in this implementation [INFO] [stdout] 16 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn from_config(config: ClassificationConfig) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_env` is never used [INFO] [stdout] --> src/infrastructure/discord/mod.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl DiscordWebhookService { [INFO] [stdout] | -------------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn from_env() -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `score` is never read [INFO] [stdout] --> src/infrastructure/news_sources/hacker_news_source.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 12 | struct RawHNItem { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | score: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RawHNItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 9.55s [INFO] running `Command { std: "docker" "inspect" "a3a27d7b86aeaad15af1670ffb0f996b641447c62caed76cba9fa25e57f5f474", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a3a27d7b86aeaad15af1670ffb0f996b641447c62caed76cba9fa25e57f5f474", kill_on_drop: false }` [INFO] [stdout] a3a27d7b86aeaad15af1670ffb0f996b641447c62caed76cba9fa25e57f5f474 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 12c8c3989229269c0d6ceca977c7113d8af818feb0aa36c280f7df12d3675761 [INFO] running `Command { std: "docker" "start" "-a" "12c8c3989229269c0d6ceca977c7113d8af818feb0aa36c280f7df12d3675761", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `FetchHotNewsUseCase` [INFO] [stderr] --> src/application/orchestration.rs:1:74 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::application::use_cases::fetch_hot_news::{FetchHotNewsService, FetchHotNewsUseCase}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> src/cli.rs:82:9 [INFO] [stderr] | [INFO] [stderr] 82 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `CompositeNewsFetcher` [INFO] [stderr] --> src/domain/fetchers/mod.rs:5:45 [INFO] [stderr] | [INFO] [stderr] 5 | pub use source_factory::{NewsSourceFactory, CompositeNewsFetcher}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `futures::future::join_all` [INFO] [stderr] --> src/domain/services/news_classification_service.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use futures::future::join_all; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::json` [INFO] [stderr] --> src/infrastructure/inference/openai_inference_service.rs:233:9 [INFO] [stderr] | [INFO] [stderr] 233 | use serde_json::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/infrastructure/inference/openai_inference_service.rs:234:21 [INFO] [stderr] | [INFO] [stderr] 234 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `inference::OpenAIInferenceService` [INFO] [stderr] --> src/infrastructure/mod.rs:9:9 [INFO] [stderr] | [INFO] [stderr] 9 | pub use inference::OpenAIInferenceService; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/domain/fetchers/source_factory.rs:56:13 [INFO] [stderr] | [INFO] [stderr] 56 | let mut remaining_limit = limit; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/domain/fetchers/source_factory.rs:88:17 [INFO] [stderr] | [INFO] [stderr] 88 | let mut remaining_sources = self.fetchers.clone(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/domain/services/discord_service.rs:81:21 [INFO] [stderr] | [INFO] [stderr] 81 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/domain/services/discord_service.rs:93:21 [INFO] [stderr] | [INFO] [stderr] 93 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/domain/services/discord_service.rs:105:21 [INFO] [stderr] | [INFO] [stderr] 105 | let mut fields = embed_obj.get_mut("fields").unwrap().as_array_mut().unwrap(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `preview` [INFO] [stderr] --> src/domain/services/news_classification_service.rs:98:21 [INFO] [stderr] | [INFO] [stderr] 98 | let preview = if text_len > limit { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `domain` [INFO] [stderr] --> src/domain/services/news_classification_service.rs:232:31 [INFO] [stderr] | [INFO] [stderr] 232 | fn append_keywords(&self, domain: Domain, keywords: Vec) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_domain` [INFO] [stderr] [INFO] [stderr] warning: function `fetch_from_source` is never used [INFO] [stderr] --> src/application/orchestration.rs:42:14 [INFO] [stderr] | [INFO] [stderr] 42 | pub async fn fetch_from_source( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: associated items `empty`, `add_strong_keyword`, `add_weak_keyword`, and `merge_suggested_keywords` are never used [INFO] [stderr] --> src/domain/config/classification_config.rs:103:12 [INFO] [stderr] | [INFO] [stderr] 101 | impl ClassificationConfig { [INFO] [stderr] | ------------------------- associated items in this implementation [INFO] [stderr] 102 | /// Create a new empty configuration [INFO] [stderr] 103 | pub fn empty() -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 140 | pub fn add_strong_keyword(&mut self, domain: Domain, keyword: String) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 149 | pub fn add_weak_keyword(&mut self, domain: Domain, keyword: String) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 158 | pub fn merge_suggested_keywords(&mut self, domain: Domain, keywords: Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new_with_classification` and `with_reason` are never used [INFO] [stderr] --> src/domain/entities/news_item.rs:85:12 [INFO] [stderr] | [INFO] [stderr] 59 | impl NewsItem { [INFO] [stderr] | ------------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 85 | pub fn new_with_classification( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 117 | pub fn with_reason(mut self, reason: String) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `save`, `find_by_id`, `find_by_domain`, and `find_by_url` are never used [INFO] [stderr] --> src/domain/repositories/news_repository.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 9 | pub trait NewsRepository: Send + Sync { [INFO] [stderr] | -------------- methods in this trait [INFO] [stderr] ... [INFO] [stderr] 12 | async fn save(&self, news: &NewsItem) -> Result<(), Box>; [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 21 | async fn find_by_id( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 27 | async fn find_by_domain( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 47 | async fn find_by_url( [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `name` is never used [INFO] [stderr] --> src/domain/services/content_extractor.rs:19:8 [INFO] [stderr] | [INFO] [stderr] 11 | pub trait ContentExtractor: Send + Sync { [INFO] [stderr] | ---------------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 19 | fn name(&self) -> &str; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `title` and `source_url` are never read [INFO] [stderr] --> src/domain/services/content_extractor.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 23 | pub struct ExtractedContent { [INFO] [stderr] | ---------------- fields in this struct [INFO] [stderr] 24 | pub title: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 25 | pub text: String, [INFO] [stderr] 26 | pub source_url: String, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ExtractedContent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `config_path` is never read [INFO] [stderr] --> src/domain/services/news_classification_service.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 22 | pub struct NewsClassificationService { [INFO] [stderr] | ------------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 26 | config_path: PathBuf, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `medium_confidence` and `with_ai_refinement` are never used [INFO] [stderr] --> src/domain/strategies/classification_strategy.rs:46:12 [INFO] [stderr] | [INFO] [stderr] 22 | impl ClassificationResult { [INFO] [stderr] | ------------------------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 46 | pub fn medium_confidence(domain: Domain, strategy_name: String) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 68 | pub fn with_ai_refinement(mut self, needs_ai: bool) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `name` is never used [INFO] [stderr] --> src/domain/strategies/classification_strategy.rs:93:8 [INFO] [stderr] | [INFO] [stderr] 84 | pub trait ClassificationStrategy: Send + Sync { [INFO] [stderr] | ---------------------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 93 | fn name(&self) -> &str; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `SourceBasedStrategy` is never constructed [INFO] [stderr] --> src/domain/strategies/source_based_strategy.rs:10:12 [INFO] [stderr] | [INFO] [stderr] 10 | pub struct SourceBasedStrategy { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `new` and `from_config` are never used [INFO] [stderr] --> src/domain/strategies/source_based_strategy.rs:16:12 [INFO] [stderr] | [INFO] [stderr] 15 | impl SourceBasedStrategy { [INFO] [stderr] | ------------------------ associated functions in this implementation [INFO] [stderr] 16 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 21 | pub fn from_config(config: ClassificationConfig) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `from_env` is never used [INFO] [stderr] --> src/infrastructure/discord/mod.rs:44:12 [INFO] [stderr] | [INFO] [stderr] 13 | impl DiscordWebhookService { [INFO] [stderr] | -------------------------- associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 44 | pub fn from_env() -> Result> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `score` is never read [INFO] [stderr] --> src/infrastructure/news_sources/hacker_news_source.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 12 | struct RawHNItem { [INFO] [stderr] | --------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 17 | score: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `RawHNItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: `trendarc` (bin "trendarc" test) generated 27 warnings (run `cargo fix --bin "trendarc" -p trendarc --tests` to apply 14 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.39s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/trendarc-69abb9fa367e5514) [INFO] [stdout] [INFO] [stdout] running 38 tests [INFO] [stdout] test domain::entities::news_item::tests::test_news_item_creation ... ok [INFO] [stdout] test domain::entities::tests::test_domain_display_names ... ok [INFO] [stdout] test cli::tests::test_cli_parsing_fetch ... ok [INFO] [stdout] test domain::entities::tests::test_domain_display_trait ... ok [INFO] [stdout] test domain::entities::tests::test_domain_equality ... ok [INFO] [stdout] test domain::entities::tests::test_domain_copy ... ok [INFO] [stdout] test domain::services::news_deduplication_service::tests::test_deduplicate_by_title_removes_duplicates ... ok [INFO] [stdout] test domain::services::news_deduplication_service::tests::test_deduplicate_by_url_keeps_first_occurrence ... ok [INFO] [stdout] test domain::services::news_deduplication_service::tests::test_deduplicate_by_url_and_title ... ok [INFO] [stdout] test domain::services::news_deduplication_service::tests::test_deduplicate_empty_vector ... ok [INFO] [stdout] test domain::services::news_deduplication_service::tests::test_deduplicate_single_item ... ok [INFO] [stdout] test domain::services::news_sorting_service::tests::test_sort_by_author ... ok [INFO] [stdout] test domain::services::discord_service::tests::test_discord_message_to_embed ... ok [INFO] [stdout] test domain::services::news_sorting_service::tests::test_sort_by_published_at_desc_newest_first ... ok [INFO] [stdout] test domain::services::news_sorting_service::tests::test_sort_by_published_at_asc_oldest_first ... ok [INFO] [stdout] test domain::services::news_deduplication_service::tests::test_deduplicate_by_url_removes_duplicates ... ok [INFO] [stdout] test domain::services::news_sorting_service::tests::test_sort_by_source ... ok [INFO] [stdout] test domain::services::discord_service::tests::test_discord_message_from_news_item ... ok [INFO] [stdout] test domain::services::news_sorting_service::tests::test_sort_single_item ... ok [INFO] [stdout] test domain::services::news_sorting_service::tests::test_sort_by_title_alphabetically ... ok [INFO] [stdout] test domain::services::news_sorting_service::tests::test_sort_empty_vector ... ok [INFO] [stdout] test domain::strategies::classification_strategy::tests::test_low_confidence_result ... ok [INFO] [stdout] test domain::strategies::classification_strategy::tests::test_classification_result_creation ... ok [INFO] [stdout] test domain::strategies::classification_strategy::tests::test_high_confidence_result ... ok [INFO] [stdout] test infrastructure::database::tests::test_create_memory_pool ... ok [INFO] [stdout] test infrastructure::database::tests::test_run_migrations ... ok [INFO] [stdout] test domain::services::discord_service::tests::test_confidence_bar ... FAILED [INFO] [stdout] test infrastructure::discord::tests::test_discord_service_send_message ... FAILED [INFO] [stdout] test integration_tests::test_duplicate_url_handling ... ok [INFO] [stdout] test infrastructure::inference::openai_inference_service::tests::test_ai_infer ... ok [INFO] [stdout] test infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_relevant ... FAILED [INFO] [stdout] test infrastructure::inference::openai_inference_service::tests::test_ai_infer_concurrency ... FAILED [INFO] [stdout] test infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_irrelevant ... FAILED [INFO] [stdout] test domain::services::classification_redesign_tests::tests::test_keyword_match_fast_pass ... ok [INFO] [stdout] test integration_tests::test_fetch_and_save_workflow ... ok [INFO] [stdout] test domain::services::classification_redesign_tests::tests::test_discard_irrelevant_news ... ok [INFO] [stdout] test infrastructure::discord::tests::test_discord_service_creation ... ok [INFO] [stdout] test domain::services::classification_redesign_tests::tests::test_ai_arbitration_on_no_match ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- domain::services::discord_service::tests::test_confidence_bar stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'domain::services::discord_service::tests::test_confidence_bar' (26) panicked at src/domain/services/discord_service.rs:200:9: [INFO] [stdout] assertion `left == right` failed [INFO] [stdout] left: "████████░░" [INFO] [stdout] right: "███████░░░" [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x62d539e6186a - std[e72de78501789eb0]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x62d539e6186a - <::print::DisplayBacktrace as core[6aaeda2c7ad07a48]::fmt::Display>::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x62d539e7af4a - ::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x62d539e7af4a - core[6aaeda2c7ad07a48]::fmt::write [INFO] [stdout] 6: 0x62d539e66df2 - std[e72de78501789eb0]::io::default_write_fmt::> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x62d539e66df2 - as std[e72de78501789eb0]::io::Write>::write_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x62d539e3ddff - ::print [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x62d539e3ddff - std[e72de78501789eb0]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x62d539e59109 - std[e72de78501789eb0]::panicking::default_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x62d53920232c - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x62d53920232c - test[4f12b380f1fb68c5]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x62d539e59382 - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x62d539e59382 - std[e72de78501789eb0]::panicking::panic_with_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x62d539e3deb8 - std[e72de78501789eb0]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x62d539e34fe9 - std[e72de78501789eb0]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x62d539e3ee7d - __rustc[78a4cf188af856fc]::rust_begin_unwind [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x62d539e7b7bc - core[6aaeda2c7ad07a48]::panicking::panic_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x62d539e7b643 - core[6aaeda2c7ad07a48]::panicking::assert_failed_inner [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:439:17 [INFO] [stdout] 20: 0x62d53912b7a4 - core[6aaeda2c7ad07a48]::panicking::assert_failed:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:394:5 [INFO] [stdout] 21: 0x62d53908b961 - trendarc[707dcbc01339c3c7]::domain::services::discord_service::tests::test_confidence_bar [INFO] [stdout] at /opt/rustwide/workdir/src/domain/services/discord_service.rs:200:9 [INFO] [stdout] 22: 0x62d539089957 - trendarc[707dcbc01339c3c7]::domain::services::discord_service::tests::test_confidence_bar::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/domain/services/discord_service.rs:196:29 [INFO] [stdout] 23: 0x62d53906ff06 - >::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x62d5391f640b - core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x62d5391f640b - test[4f12b380f1fb68c5]::__rust_begin_short_backtrace::, fn() -> core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:663:18 [INFO] [stdout] 26: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:74 [INFO] [stdout] 27: 0x62d539202dfb - as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 28: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::do_call::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 29: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::, core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 30: 0x62d539202dfb - std[e72de78501789eb0]::panic::catch_unwind::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 31: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:27 [INFO] [stdout] 32: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:607:43 [INFO] [stdout] 33: 0x62d5391fe514 - test[4f12b380f1fb68c5]::run_test::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:637:41 [INFO] [stdout] 34: 0x62d5391fe514 - std[e72de78501789eb0]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 35: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 36: 0x62d539205a02 - ::{closure#1}::{closure#0}> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 37: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 38: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::<(), core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 39: 0x62d539205a02 - std[e72de78501789eb0]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 40: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 41: 0x62d539205a02 - ::{closure#1} as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 42: 0x62d539e60a9f - + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 43: 0x62d539e60a9f - ::new::thread_start [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 44: 0x7b257fd27aa4 - [INFO] [stdout] 45: 0x7b257fdb4a64 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- infrastructure::discord::tests::test_discord_service_send_message stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'infrastructure::discord::tests::test_discord_service_send_message' (48) panicked at src/infrastructure/discord/mod.rs:159:69: [INFO] [stdout] called `Result::unwrap()` on an `Err` value: "无效的 Discord webhook URL 格式" [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x62d539e6186a - std[e72de78501789eb0]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x62d539e6186a - <::print::DisplayBacktrace as core[6aaeda2c7ad07a48]::fmt::Display>::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x62d539e7af4a - ::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x62d539e7af4a - core[6aaeda2c7ad07a48]::fmt::write [INFO] [stdout] 6: 0x62d539e66df2 - std[e72de78501789eb0]::io::default_write_fmt::> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x62d539e66df2 - as std[e72de78501789eb0]::io::Write>::write_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x62d539e3ddff - ::print [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x62d539e3ddff - std[e72de78501789eb0]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x62d539e59109 - std[e72de78501789eb0]::panicking::default_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x62d53920232c - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x62d53920232c - test[4f12b380f1fb68c5]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x62d539e59382 - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x62d539e59382 - std[e72de78501789eb0]::panicking::panic_with_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x62d539e3deb8 - std[e72de78501789eb0]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x62d539e34fe9 - std[e72de78501789eb0]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x62d539e3ee7d - __rustc[78a4cf188af856fc]::rust_begin_unwind [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x62d539e7b7bc - core[6aaeda2c7ad07a48]::panicking::panic_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x62d539e7b502 - core[6aaeda2c7ad07a48]::result::unwrap_failed [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/result.rs:1867:5 [INFO] [stdout] 20: 0x62d53907a9c4 - >>::unwrap [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/result.rs:1233:23 [INFO] [stdout] 21: 0x62d53907a9c4 - trendarc[707dcbc01339c3c7]::infrastructure::discord::tests::test_discord_service_send_message::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/discord/mod.rs:159:69 [INFO] [stdout] 22: 0x62d53907efe2 - > as core[6aaeda2c7ad07a48]::future::future::Future>::poll [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/future/future.rs:133:9 [INFO] [stdout] 23: 0x62d53907f05d - >> as core[6aaeda2c7ad07a48]::future::future::Future>::poll [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/future/future.rs:133:9 [INFO] [stdout] 24: 0x62d53912f82d - ::block_on::>>>::{closure#0}::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:70 [INFO] [stdout] 25: 0x62d53912f72b - tokio[d73817011b0c0256]::task::coop::with_budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:167:5 [INFO] [stdout] 26: 0x62d53912f72b - tokio[d73817011b0c0256]::task::coop::budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:133:5 [INFO] [stdout] 27: 0x62d53912f72b - ::block_on::>>>::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:25 [INFO] [stdout] 28: 0x62d539128660 - ::enter::, ::block_on>>>::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:442:19 [INFO] [stdout] 29: 0x62d53912ea8d - ::block_on::>>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:752:44 [INFO] [stdout] 30: 0x62d53912dd74 - ::enter::<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:68 [INFO] [stdout] 31: 0x62d5390a104b - >::set::<::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/scoped.rs:40:9 [INFO] [stdout] 32: 0x62d5390fbc69 - tokio[d73817011b0c0256]::runtime::context::set_scheduler::<(alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:38 [INFO] [stdout] 33: 0x62d539119242 - >::try_with::, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/local.rs:462:12 [INFO] [stdout] 34: 0x62d539118dce - >::with::, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/local.rs:426:20 [INFO] [stdout] 35: 0x62d5390f9bfd - tokio[d73817011b0c0256]::runtime::context::set_scheduler::<(alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:17 [INFO] [stdout] 36: 0x62d53912b200 - ::enter::<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:27 [INFO] [stdout] 37: 0x62d53912b4f6 - ::block_on::>>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:740:24 [INFO] [stdout] 38: 0x62d53912d880 - ::block_on::>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:200:33 [INFO] [stdout] 39: 0x62d539080673 - tokio[d73817011b0c0256]::runtime::context::runtime::enter_runtime::<::block_on>>::{closure#0}, ()> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/runtime.rs:65:16 [INFO] [stdout] 40: 0x62d539128191 - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:188:9 [INFO] [stdout] 41: 0x62d539070cf4 - ::block_on_inner::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:368:52 [INFO] [stdout] 42: 0x62d539070ebf - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:342:18 [INFO] [stdout] 43: 0x62d53907d4a4 - trendarc[707dcbc01339c3c7]::infrastructure::discord::tests::test_discord_service_send_message [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/discord/mod.rs:174:32 [INFO] [stdout] 44: 0x62d53907a2c7 - trendarc[707dcbc01339c3c7]::infrastructure::discord::tests::test_discord_service_send_message::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/discord/mod.rs:148:49 [INFO] [stdout] 45: 0x62d53906fb46 - >::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 46: 0x62d5391f640b - core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 47: 0x62d5391f640b - test[4f12b380f1fb68c5]::__rust_begin_short_backtrace::, fn() -> core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:663:18 [INFO] [stdout] 48: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:74 [INFO] [stdout] 49: 0x62d539202dfb - as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 50: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::do_call::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 51: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::, core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 52: 0x62d539202dfb - std[e72de78501789eb0]::panic::catch_unwind::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 53: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:27 [INFO] [stdout] 54: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:607:43 [INFO] [stdout] 55: 0x62d5391fe514 - test[4f12b380f1fb68c5]::run_test::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:637:41 [INFO] [stdout] 56: 0x62d5391fe514 - std[e72de78501789eb0]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 57: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 58: 0x62d539205a02 - ::{closure#1}::{closure#0}> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 59: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 60: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::<(), core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 61: 0x62d539205a02 - std[e72de78501789eb0]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 62: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 63: 0x62d539205a02 - ::{closure#1} as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 64: 0x62d539e60a9f - + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 65: 0x62d539e60a9f - ::new::thread_start [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 66: 0x7b257fd27aa4 - [INFO] [stdout] 67: 0x7b257fdb4a64 - clone [INFO] [stdout] 68: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_relevant stdout ---- [INFO] [stdout] 🤖 正在测试正向用例 (预期为 AI 相关)... [INFO] [stdout] [INFO] [stdout] thread 'infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_relevant' (53) panicked at src/infrastructure/inference/openai_inference_service.rs:284:46: [INFO] [stdout] Inference request failed: reqwest::Error { kind: Request, url: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("localhost")), port: Some(11434), path: "/v1/chat/completions", query: None, fragment: None }, source: hyper::Error(Connect, ConnectError("tcp connect error", Os { code: 111, kind: ConnectionRefused, message: "Connection refused" })) } [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x62d539e6186a - std[e72de78501789eb0]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x62d539e6186a - <::print::DisplayBacktrace as core[6aaeda2c7ad07a48]::fmt::Display>::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x62d539e7af4a - ::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x62d539e7af4a - core[6aaeda2c7ad07a48]::fmt::write [INFO] [stdout] 6: 0x62d539e66df2 - std[e72de78501789eb0]::io::default_write_fmt::> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x62d539e66df2 - as std[e72de78501789eb0]::io::Write>::write_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x62d539e3ddff - ::print [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x62d539e3ddff - std[e72de78501789eb0]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x62d539e59109 - std[e72de78501789eb0]::panicking::default_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x62d53920232c - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x62d53920232c - test[4f12b380f1fb68c5]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x62d539e59382 - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x62d539e59382 - std[e72de78501789eb0]::panicking::panic_with_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x62d539e3deb8 - std[e72de78501789eb0]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x62d539e34fe9 - std[e72de78501789eb0]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x62d539e3ee7d - __rustc[78a4cf188af856fc]::rust_begin_unwind [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x62d539e7b7bc - core[6aaeda2c7ad07a48]::panicking::panic_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x62d539e7b502 - core[6aaeda2c7ad07a48]::result::unwrap_failed [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/result.rs:1867:5 [INFO] [stdout] 20: 0x62d539130157 - >>::expect [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/result.rs:1185:23 [INFO] [stdout] 21: 0x62d539088b97 - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_relevant::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:284:46 [INFO] [stdout] 22: 0x62d53907efe2 - > as core[6aaeda2c7ad07a48]::future::future::Future>::poll [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/future/future.rs:133:9 [INFO] [stdout] 23: 0x62d53907f05d - >> as core[6aaeda2c7ad07a48]::future::future::Future>::poll [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/future/future.rs:133:9 [INFO] [stdout] 24: 0x62d53912f82d - ::block_on::>>>::{closure#0}::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:70 [INFO] [stdout] 25: 0x62d53912f72b - tokio[d73817011b0c0256]::task::coop::with_budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:167:5 [INFO] [stdout] 26: 0x62d53912f72b - tokio[d73817011b0c0256]::task::coop::budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:133:5 [INFO] [stdout] 27: 0x62d53912f72b - ::block_on::>>>::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:25 [INFO] [stdout] 28: 0x62d539128660 - ::enter::, ::block_on>>>::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:442:19 [INFO] [stdout] 29: 0x62d53912ea8d - ::block_on::>>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:752:44 [INFO] [stdout] 30: 0x62d53912dd74 - ::enter::<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:68 [INFO] [stdout] 31: 0x62d5390a104b - >::set::<::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/scoped.rs:40:9 [INFO] [stdout] 32: 0x62d5390fbc69 - tokio[d73817011b0c0256]::runtime::context::set_scheduler::<(alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:38 [INFO] [stdout] 33: 0x62d539119242 - >::try_with::, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/local.rs:462:12 [INFO] [stdout] 34: 0x62d539118dce - >::with::, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/local.rs:426:20 [INFO] [stdout] 35: 0x62d5390f9bfd - tokio[d73817011b0c0256]::runtime::context::set_scheduler::<(alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:17 [INFO] [stdout] 36: 0x62d53912b200 - ::enter::<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:27 [INFO] [stdout] 37: 0x62d53912b4f6 - ::block_on::>>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:740:24 [INFO] [stdout] 38: 0x62d53912d880 - ::block_on::>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:200:33 [INFO] [stdout] 39: 0x62d539080673 - tokio[d73817011b0c0256]::runtime::context::runtime::enter_runtime::<::block_on>>::{closure#0}, ()> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/runtime.rs:65:16 [INFO] [stdout] 40: 0x62d539128191 - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:188:9 [INFO] [stdout] 41: 0x62d539070cf4 - ::block_on_inner::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:368:52 [INFO] [stdout] 42: 0x62d539070ebf - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:342:18 [INFO] [stdout] 43: 0x62d53908b1a7 - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_relevant [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:296:71 [INFO] [stdout] 44: 0x62d539085e47 - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_relevant::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:263:50 [INFO] [stdout] 45: 0x62d53906fd86 - >::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 46: 0x62d5391f640b - core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 47: 0x62d5391f640b - test[4f12b380f1fb68c5]::__rust_begin_short_backtrace::, fn() -> core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:663:18 [INFO] [stdout] 48: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:74 [INFO] [stdout] 49: 0x62d539202dfb - as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 50: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::do_call::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 51: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::, core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 52: 0x62d539202dfb - std[e72de78501789eb0]::panic::catch_unwind::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 53: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:27 [INFO] [stdout] 54: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:607:43 [INFO] [stdout] 55: 0x62d5391fe514 - test[4f12b380f1fb68c5]::run_test::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:637:41 [INFO] [stdout] 56: 0x62d5391fe514 - std[e72de78501789eb0]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 57: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 58: 0x62d539205a02 - ::{closure#1}::{closure#0}> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 59: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 60: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::<(), core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 61: 0x62d539205a02 - std[e72de78501789eb0]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 62: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 63: 0x62d539205a02 - ::{closure#1} as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 64: 0x62d539e60a9f - + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 65: 0x62d539e60a9f - ::new::thread_start [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 66: 0x7b257fd27aa4 - [INFO] [stdout] 67: 0x7b257fdb4a64 - clone [INFO] [stdout] 68: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- infrastructure::inference::openai_inference_service::tests::test_ai_infer_concurrency stdout ---- [INFO] [stdout] 🚀 开始并发推理测试 (同时发起 3 个请求)... [INFO] [stdout] ⏱️ 3 条并发请求总耗时: 0.03s [INFO] [stdout] 📊 平均每条耗时: 0.01s [INFO] [stdout] [INFO] [stdout] thread 'infrastructure::inference::openai_inference_service::tests::test_ai_infer_concurrency' (50) panicked at src/infrastructure/inference/openai_inference_service.rs:392:23: [INFO] [stdout] News 1 failed: reqwest::Error { kind: Request, url: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("localhost")), port: Some(11434), path: "/v1/chat/completions", query: None, fragment: None }, source: hyper::Error(Connect, ConnectError("tcp connect error", Os { code: 111, kind: ConnectionRefused, message: "Connection refused" })) } [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x62d539e6186a - std[e72de78501789eb0]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x62d539e6186a - <::print::DisplayBacktrace as core[6aaeda2c7ad07a48]::fmt::Display>::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x62d539e7af4a - ::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x62d539e7af4a - core[6aaeda2c7ad07a48]::fmt::write [INFO] [stdout] 6: 0x62d539e66df2 - std[e72de78501789eb0]::io::default_write_fmt::> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x62d539e66df2 - as std[e72de78501789eb0]::io::Write>::write_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x62d539e3ddff - ::print [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x62d539e3ddff - std[e72de78501789eb0]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x62d539e59109 - std[e72de78501789eb0]::panicking::default_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x62d53920232c - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x62d53920232c - test[4f12b380f1fb68c5]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x62d539e59382 - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x62d539e59382 - std[e72de78501789eb0]::panicking::panic_with_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x62d539e3deb8 - std[e72de78501789eb0]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x62d539e34fe9 - std[e72de78501789eb0]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x62d539e3ee7d - __rustc[78a4cf188af856fc]::rust_begin_unwind [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x62d539e7b7bc - core[6aaeda2c7ad07a48]::panicking::panic_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x62d539e7b502 - core[6aaeda2c7ad07a48]::result::unwrap_failed [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/result.rs:1867:5 [INFO] [stdout] 20: 0x62d539130157 - >>::expect [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/result.rs:1185:23 [INFO] [stdout] 21: 0x62d539087fb3 - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_concurrency::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:392:23 [INFO] [stdout] 22: 0x62d53907efe2 - > as core[6aaeda2c7ad07a48]::future::future::Future>::poll [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/future/future.rs:133:9 [INFO] [stdout] 23: 0x62d53907f05d - >> as core[6aaeda2c7ad07a48]::future::future::Future>::poll [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/future/future.rs:133:9 [INFO] [stdout] 24: 0x62d53912f82d - ::block_on::>>>::{closure#0}::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:70 [INFO] [stdout] 25: 0x62d53912f72b - tokio[d73817011b0c0256]::task::coop::with_budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:167:5 [INFO] [stdout] 26: 0x62d53912f72b - tokio[d73817011b0c0256]::task::coop::budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:133:5 [INFO] [stdout] 27: 0x62d53912f72b - ::block_on::>>>::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:25 [INFO] [stdout] 28: 0x62d539128660 - ::enter::, ::block_on>>>::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:442:19 [INFO] [stdout] 29: 0x62d53912ea8d - ::block_on::>>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:752:44 [INFO] [stdout] 30: 0x62d53912dd74 - ::enter::<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:68 [INFO] [stdout] 31: 0x62d5390a104b - >::set::<::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/scoped.rs:40:9 [INFO] [stdout] 32: 0x62d5390fbc69 - tokio[d73817011b0c0256]::runtime::context::set_scheduler::<(alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:38 [INFO] [stdout] 33: 0x62d539119242 - >::try_with::, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/local.rs:462:12 [INFO] [stdout] 34: 0x62d539118dce - >::with::, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/local.rs:426:20 [INFO] [stdout] 35: 0x62d5390f9bfd - tokio[d73817011b0c0256]::runtime::context::set_scheduler::<(alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:17 [INFO] [stdout] 36: 0x62d53912b200 - ::enter::<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:27 [INFO] [stdout] 37: 0x62d53912b4f6 - ::block_on::>>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:740:24 [INFO] [stdout] 38: 0x62d53912d880 - ::block_on::>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:200:33 [INFO] [stdout] 39: 0x62d539080673 - tokio[d73817011b0c0256]::runtime::context::runtime::enter_runtime::<::block_on>>::{closure#0}, ()> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/runtime.rs:65:16 [INFO] [stdout] 40: 0x62d539128191 - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:188:9 [INFO] [stdout] 41: 0x62d539070cf4 - ::block_on_inner::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:368:52 [INFO] [stdout] 42: 0x62d539070ebf - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:342:18 [INFO] [stdout] 43: 0x62d53908afd7 - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_concurrency [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:399:58 [INFO] [stdout] 44: 0x62d539085e17 - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_concurrency::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:338:41 [INFO] [stdout] 45: 0x62d53906fd46 - >::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 46: 0x62d5391f640b - core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 47: 0x62d5391f640b - test[4f12b380f1fb68c5]::__rust_begin_short_backtrace::, fn() -> core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:663:18 [INFO] [stdout] 48: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:74 [INFO] [stdout] 49: 0x62d539202dfb - as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 50: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::do_call::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 51: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::, core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 52: 0x62d539202dfb - std[e72de78501789eb0]::panic::catch_unwind::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 53: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:27 [INFO] [stdout] 54: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:607:43 [INFO] [stdout] 55: 0x62d5391fe514 - test[4f12b380f1fb68c5]::run_test::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:637:41 [INFO] [stdout] 56: 0x62d5391fe514 - std[e72de78501789eb0]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 57: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 58: 0x62d539205a02 - ::{closure#1}::{closure#0}> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 59: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 60: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::<(), core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 61: 0x62d539205a02 - std[e72de78501789eb0]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 62: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 63: 0x62d539205a02 - ::{closure#1} as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 64: 0x62d539e60a9f - + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 65: 0x62d539e60a9f - ::new::thread_start [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 66: 0x7b257fd27aa4 - [INFO] [stdout] 67: 0x7b257fdb4a64 - clone [INFO] [stdout] 68: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_irrelevant stdout ---- [INFO] [stdout] 🤖 正在测试反向用例 (预期为无关新闻)... [INFO] [stdout] [INFO] [stdout] thread 'infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_irrelevant' (52) panicked at src/infrastructure/inference/openai_inference_service.rs:322:46: [INFO] [stdout] Inference request failed: reqwest::Error { kind: Request, url: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("localhost")), port: Some(11434), path: "/v1/chat/completions", query: None, fragment: None }, source: hyper::Error(Connect, ConnectError("tcp connect error", Os { code: 111, kind: ConnectionRefused, message: "Connection refused" })) } [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x62d539e6186a - std[e72de78501789eb0]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x62d539e6186a - std[e72de78501789eb0]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x62d539e6186a - <::print::DisplayBacktrace as core[6aaeda2c7ad07a48]::fmt::Display>::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x62d539e7af4a - ::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x62d539e7af4a - core[6aaeda2c7ad07a48]::fmt::write [INFO] [stdout] 6: 0x62d539e66df2 - std[e72de78501789eb0]::io::default_write_fmt::> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x62d539e66df2 - as std[e72de78501789eb0]::io::Write>::write_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x62d539e3ddff - ::print [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x62d539e3ddff - std[e72de78501789eb0]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x62d539e59109 - std[e72de78501789eb0]::panicking::default_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x62d53920232c - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x62d53920232c - test[4f12b380f1fb68c5]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x62d539e59382 - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x62d539e59382 - std[e72de78501789eb0]::panicking::panic_with_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x62d539e3deb8 - std[e72de78501789eb0]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x62d539e34fe9 - std[e72de78501789eb0]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x62d539e3ee7d - __rustc[78a4cf188af856fc]::rust_begin_unwind [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x62d539e7b7bc - core[6aaeda2c7ad07a48]::panicking::panic_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x62d539e7b502 - core[6aaeda2c7ad07a48]::result::unwrap_failed [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/result.rs:1867:5 [INFO] [stdout] 20: 0x62d539130157 - >>::expect [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/result.rs:1185:23 [INFO] [stdout] 21: 0x62d53908966f - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_irrelevant::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:322:46 [INFO] [stdout] 22: 0x62d53907efe2 - > as core[6aaeda2c7ad07a48]::future::future::Future>::poll [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/future/future.rs:133:9 [INFO] [stdout] 23: 0x62d53907f05d - >> as core[6aaeda2c7ad07a48]::future::future::Future>::poll [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/future/future.rs:133:9 [INFO] [stdout] 24: 0x62d53912f82d - ::block_on::>>>::{closure#0}::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:70 [INFO] [stdout] 25: 0x62d53912f72b - tokio[d73817011b0c0256]::task::coop::with_budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:167:5 [INFO] [stdout] 26: 0x62d53912f72b - tokio[d73817011b0c0256]::task::coop::budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:133:5 [INFO] [stdout] 27: 0x62d53912f72b - ::block_on::>>>::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:25 [INFO] [stdout] 28: 0x62d539128660 - ::enter::, ::block_on>>>::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:442:19 [INFO] [stdout] 29: 0x62d53912ea8d - ::block_on::>>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:752:44 [INFO] [stdout] 30: 0x62d53912dd74 - ::enter::<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:68 [INFO] [stdout] 31: 0x62d5390a104b - >::set::<::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/scoped.rs:40:9 [INFO] [stdout] 32: 0x62d5390fbc69 - tokio[d73817011b0c0256]::runtime::context::set_scheduler::<(alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:38 [INFO] [stdout] 33: 0x62d539119242 - >::try_with::, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/local.rs:462:12 [INFO] [stdout] 34: 0x62d539118dce - >::with::, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>)> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/local.rs:426:20 [INFO] [stdout] 35: 0x62d5390f9bfd - tokio[d73817011b0c0256]::runtime::context::set_scheduler::<(alloc[28d2dab30c1dc666]::boxed::Box, core[6aaeda2c7ad07a48]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>>::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:17 [INFO] [stdout] 36: 0x62d53912b200 - ::enter::<::block_on>>>::{closure#0}, core[6aaeda2c7ad07a48]::option::Option<()>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:27 [INFO] [stdout] 37: 0x62d53912b4f6 - ::block_on::>>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:740:24 [INFO] [stdout] 38: 0x62d53912d880 - ::block_on::>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:200:33 [INFO] [stdout] 39: 0x62d539080673 - tokio[d73817011b0c0256]::runtime::context::runtime::enter_runtime::<::block_on>>::{closure#0}, ()> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/runtime.rs:65:16 [INFO] [stdout] 40: 0x62d539128191 - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:188:9 [INFO] [stdout] 41: 0x62d539070cf4 - ::block_on_inner::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:368:52 [INFO] [stdout] 42: 0x62d539070ebf - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:342:18 [INFO] [stdout] 43: 0x62d53908b377 - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_irrelevant [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:334:88 [INFO] [stdout] 44: 0x62d539085e77 - trendarc[707dcbc01339c3c7]::infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_irrelevant::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/infrastructure/inference/openai_inference_service.rs:300:52 [INFO] [stdout] 45: 0x62d53906fdc6 - >::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 46: 0x62d5391f640b - core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 47: 0x62d5391f640b - test[4f12b380f1fb68c5]::__rust_begin_short_backtrace::, fn() -> core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:663:18 [INFO] [stdout] 48: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:74 [INFO] [stdout] 49: 0x62d539202dfb - as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 50: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::do_call::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 51: 0x62d539202dfb - std[e72de78501789eb0]::panicking::catch_unwind::, core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 52: 0x62d539202dfb - std[e72de78501789eb0]::panic::catch_unwind::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 53: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test_in_process [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:27 [INFO] [stdout] 54: 0x62d539202dfb - test[4f12b380f1fb68c5]::run_test::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:607:43 [INFO] [stdout] 55: 0x62d5391fe514 - test[4f12b380f1fb68c5]::run_test::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:637:41 [INFO] [stdout] 56: 0x62d5391fe514 - std[e72de78501789eb0]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 57: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 58: 0x62d539205a02 - ::{closure#1}::{closure#0}> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 59: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 60: 0x62d539205a02 - std[e72de78501789eb0]::panicking::catch_unwind::<(), core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 61: 0x62d539205a02 - std[e72de78501789eb0]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 62: 0x62d539205a02 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 63: 0x62d539205a02 - ::{closure#1} as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 64: 0x62d539e60a9f - + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 65: 0x62d539e60a9f - ::new::thread_start [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 66: 0x7b257fd27aa4 - [INFO] [stdout] 67: 0x7b257fdb4a64 - clone [INFO] [stdout] 68: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] domain::services::discord_service::tests::test_confidence_bar [INFO] [stdout] infrastructure::discord::tests::test_discord_service_send_message [INFO] [stdout] infrastructure::inference::openai_inference_service::tests::test_ai_infer_concurrency [INFO] [stdout] infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_irrelevant [INFO] [stdout] infrastructure::inference::openai_inference_service::tests::test_ai_infer_correctness_relevant [INFO] [stdout] [INFO] [stdout] test result: FAILED. 33 passed; 5 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.76s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--bin trendarc` [INFO] running `Command { std: "docker" "inspect" "12c8c3989229269c0d6ceca977c7113d8af818feb0aa36c280f7df12d3675761", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "12c8c3989229269c0d6ceca977c7113d8af818feb0aa36c280f7df12d3675761", kill_on_drop: false }` [INFO] [stdout] 12c8c3989229269c0d6ceca977c7113d8af818feb0aa36c280f7df12d3675761