[INFO] cloning repository https://github.com/yhc007/rust-agent
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yhc007/rust-agent" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyhc007%2Frust-agent", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyhc007%2Frust-agent'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 50470c00a948fb4007b1c5648e5b532ece6bae58
[INFO] checking yhc007/rust-agent against f10db292a3733b5c67c8da8c7661195ff4b05774 for pr-158914
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyhc007%2Frust-agent" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/yhc007/rust-agent
[INFO] finished tweaking git repo https://github.com/yhc007/rust-agent
[INFO] tweaked toml for git repo https://github.com/yhc007/rust-agent written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/yhc007/rust-agent on toolchain f10db292a3733b5c67c8da8c7661195ff4b05774
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/yhc007/rust-agent 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" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tokio-test v0.4.5
[INFO] [stderr]   Downloaded tree-sitter v0.24.7
[INFO] [stderr]   Downloaded openssl-sys v0.9.112
[INFO] [stderr]   Downloaded openssl v0.10.76
[INFO] [stderr]   Downloaded tree-sitter-bash v0.23.3
[INFO] [stderr]   Downloaded notify-types v1.0.1
[INFO] [stderr]   Downloaded notify v7.0.0
[INFO] [stderr]   Downloaded minijinja v2.19.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265
[INFO] running `Command { std: "docker" "start" "d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265" "/opt/rustwide/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265" "/opt/rustwide/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling cc v1.2.58
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]     Checking indexmap v2.13.1
[INFO] [stderr]    Compiling openssl v0.10.76
[INFO] [stderr]    Compiling tree-sitter-language v0.1.7
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]     Checking rustix v0.38.44
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking grep-matcher v0.1.8
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking notify-types v1.0.1
[INFO] [stderr]     Checking encoding_rs_io v0.1.7
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling axum-macros v0.4.2
[INFO] [stderr]     Checking streaming-iterator v0.1.9
[INFO] [stderr]     Checking unicode-width v0.2.0
[INFO] [stderr]     Checking predicates-core v1.0.10
[INFO] [stderr]     Checking matchit v0.7.3
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking minijinja v2.19.0
[INFO] [stderr]     Checking fuzzy-matcher v0.3.7
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking float-cmp v0.10.0
[INFO] [stderr]    Compiling assert_cmd v2.2.0
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]    Compiling tree-sitter v0.24.7
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling tree-sitter-bash v0.23.3
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking tokio v1.50.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking inotify v0.10.2
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]     Checking filetime v0.2.27
[INFO] [stderr]     Checking memmap2 v0.9.10
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking uuid v1.23.0
[INFO] [stderr]     Checking notify v7.0.0
[INFO] [stderr]     Checking eventsource-stream v0.2.3
[INFO] [stderr]     Checking termtree v0.5.1
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking predicates-tree v1.0.13
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]     Checking globset v0.4.18
[INFO] [stderr]     Checking grep-searcher v0.1.16
[INFO] [stderr]     Checking grep-regex v0.1.14
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking ratatui v0.29.0
[INFO] [stderr]     Checking predicates v3.1.4
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking tokio-test v0.4.5
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking rust-agent v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]   --> src/tools/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use serde_json::Value;
[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: `json`
[INFO] [stdout]   --> src/api/openai_compat.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 | use serde_json::{json, Value};
[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: `serde_json::Value`
[INFO] [stdout]   --> src/tools/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use serde_json::Value;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tools::Tool`
[INFO] [stdout]   --> src/tools/pdfkg/mod.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     use crate::tools::Tool;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt`
[INFO] [stdout]  --> src/main.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing_subscriber::{fmt, EnvFilter};
[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: `json`
[INFO] [stdout]   --> src/api/openai_compat.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 | use serde_json::{json, Value};
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamEvent`
[INFO] [stdout]   --> src/api/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     StreamEvent,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PdfKgError`
[INFO] [stdout]   --> src/tools/pdfkg/mod.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use client::{PdfKgClient, PdfKgError};
[INFO] [stdout]    |                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolError` and `ToolResult`
[INFO] [stdout]  --> src/tools/mod.rs:9:40
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use registry::{Tool, ToolRegistry, ToolResult, ToolError, ToolContext};
[INFO] [stdout]   |                                        ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]   --> src/tools/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use serde_json::Value;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt`
[INFO] [stdout]  --> src/main.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing_subscriber::{fmt, EnvFilter};
[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: `StreamEvent`
[INFO] [stdout]   --> src/api/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     StreamEvent,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PdfKgError`
[INFO] [stdout]   --> src/tools/pdfkg/mod.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use client::{PdfKgClient, PdfKgError};
[INFO] [stdout]    |                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ToolError` and `ToolResult`
[INFO] [stdout]  --> src/tools/mod.rs:9:40
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use registry::{Tool, ToolRegistry, ToolResult, ToolError, ToolContext};
[INFO] [stdout]   |                                        ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]   --> src/tools/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use serde_json::Value;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tools::Tool`
[INFO] [stdout]   --> src/tools/pdfkg/mod.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     use crate::tools::Tool;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `model`, `stop_reason`, and `usage` are never read
[INFO] [stdout]   --> src/api/anthropic.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct CreateMessageResponse {
[INFO] [stdout]    |            --------------------- fields in this struct
[INFO] [stdout] 79 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 80 |     pub content: Vec<ContentBlock>,
[INFO] [stdout] 81 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 82 |     pub stop_reason: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 83 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CreateMessageResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `input_tokens`, `output_tokens`, `cache_creation_input_tokens`, and `cache_read_input_tokens` are never read
[INFO] [stdout]   --> src/api/anthropic.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct Usage {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 88 |     pub input_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 89 |     pub output_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 90 |     #[serde(default)]
[INFO] [stdout] 91 |     pub cache_creation_input_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     #[serde(default)]
[INFO] [stdout] 93 |     pub cache_read_input_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Usage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `StreamEvent` is never used
[INFO] [stdout]   --> src/api/anthropic.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub enum StreamEvent {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContentDelta` is never constructed
[INFO] [stdout]    --> src/api/anthropic.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct ContentDelta {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PartialMessage` is never constructed
[INFO] [stdout]    --> src/api/anthropic.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub struct PartialMessage {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MessageDeltaData` is never constructed
[INFO] [stdout]    --> src/api/anthropic.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub struct MessageDeltaData {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_message_stream` and `parse_sse_event` are never used
[INFO] [stdout]    --> src/api/anthropic.rs:161:18
[INFO] [stdout]     |
[INFO] [stdout] 130 | impl AnthropicClient {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub async fn create_message_stream(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     fn parse_sse_event(buffer: &mut String) -> Option<StreamEvent> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `base_url` is never used
[INFO] [stdout]   --> src/api/openai_compat.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl OpenAICompatClient {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn base_url(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_turns` and `token_budget` are never read
[INFO] [stdout]   --> src/config/mod.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct Config {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub max_turns: u32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 56 |     pub tool_timeout: Duration,
[INFO] [stdout] 57 |     pub token_budget: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` 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 `session_id` is never read
[INFO] [stdout]   --> src/tools/registry.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct ToolContext {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub session_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToolContext` 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 `get` is never used
[INFO] [stdout]    --> src/tools/registry.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout]  92 | impl ToolRegistry {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn get(&self, name: &str) -> Option<Arc<dyn Tool>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemorySystem` is never constructed
[INFO] [stdout]  --> src/memory/mod.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MemorySystem;
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `App` is never constructed
[INFO] [stdout]  --> src/tui/mod.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct App;
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `stop_reason` are never read
[INFO] [stdout]   --> src/api/anthropic.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct CreateMessageResponse {
[INFO] [stdout]    |            --------------------- fields in this struct
[INFO] [stdout] 79 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub stop_reason: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CreateMessageResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cache_creation_input_tokens` and `cache_read_input_tokens` are never read
[INFO] [stdout]   --> src/api/anthropic.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct Usage {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub cache_creation_input_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     #[serde(default)]
[INFO] [stdout] 93 |     pub cache_read_input_tokens: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Usage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `StreamEvent` is never used
[INFO] [stdout]   --> src/api/anthropic.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub enum StreamEvent {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContentDelta` is never constructed
[INFO] [stdout]    --> src/api/anthropic.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct ContentDelta {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PartialMessage` is never constructed
[INFO] [stdout]    --> src/api/anthropic.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub struct PartialMessage {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MessageDeltaData` is never constructed
[INFO] [stdout]    --> src/api/anthropic.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub struct MessageDeltaData {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_message_stream` and `parse_sse_event` are never used
[INFO] [stdout]    --> src/api/anthropic.rs:161:18
[INFO] [stdout]     |
[INFO] [stdout] 130 | impl AnthropicClient {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub async fn create_message_stream(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     fn parse_sse_event(buffer: &mut String) -> Option<StreamEvent> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `base_url` is never used
[INFO] [stdout]   --> src/api/openai_compat.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl OpenAICompatClient {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn base_url(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_turns` and `token_budget` are never read
[INFO] [stdout]   --> src/config/mod.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct Config {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub max_turns: u32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 56 |     pub tool_timeout: Duration,
[INFO] [stdout] 57 |     pub token_budget: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` 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 `session_id` is never read
[INFO] [stdout]   --> src/tools/registry.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct ToolContext {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub session_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToolContext` 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 `get` is never used
[INFO] [stdout]    --> src/tools/registry.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout]  92 | impl ToolRegistry {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn get(&self, name: &str) -> Option<Arc<dyn Tool>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemorySystem` is never constructed
[INFO] [stdout]  --> src/memory/mod.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MemorySystem;
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `App` is never constructed
[INFO] [stdout]  --> src/tui/mod.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct App;
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 44.63s
[INFO] running `Command { std: "docker" "inspect" "d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265", kill_on_drop: false }`
[INFO] [stdout] d4df05726e6a6b39118c2d508ab3087967d9e308cc484b588585464e62eb2265
