[INFO] cloning repository https://github.com/open-gitagent/rusty-gitclaw
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/open-gitagent/rusty-gitclaw" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fopen-gitagent%2Frusty-gitclaw", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fopen-gitagent%2Frusty-gitclaw'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c4241b58058615a297c28ef2ea6e6e8a4cc19a80
[INFO] checking open-gitagent/rusty-gitclaw against try#0611f7de057c584b8771102fde7aed6c70c71d3b for pr-146440
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fopen-gitagent%2Frusty-gitclaw" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/open-gitagent/rusty-gitclaw
[INFO] finished tweaking git repo https://github.com/open-gitagent/rusty-gitclaw
[INFO] tweaked toml for git repo https://github.com/open-gitagent/rusty-gitclaw written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/open-gitagent/rusty-gitclaw on toolchain 0611f7de057c584b8771102fde7aed6c70c71d3b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/open-gitagent/rusty-gitclaw 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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "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] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded fluent-uri v0.3.2
[INFO] [stderr]   Downloaded fancy-regex v0.14.0
[INFO] [stderr]   Downloaded referencing v0.28.3
[INFO] [stderr]   Downloaded jsonschema v0.28.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9c6221961911de977f040a564abc40c038ae9109bbe7acad562f469b1a31058f
[INFO] running `Command { std: "docker" "start" "-a" "9c6221961911de977f040a564abc40c038ae9109bbe7acad562f469b1a31058f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9c6221961911de977f040a564abc40c038ae9109bbe7acad562f469b1a31058f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9c6221961911de977f040a564abc40c038ae9109bbe7acad562f469b1a31058f", kill_on_drop: false }`
[INFO] [stdout] 9c6221961911de977f040a564abc40c038ae9109bbe7acad562f469b1a31058f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d3efa9031072ea7d1b9eac3585e15e7df4fd21b9bba9304321d1448bd4860034
[INFO] running `Command { std: "docker" "start" "-a" "d3efa9031072ea7d1b9eac3585e15e7df4fd21b9bba9304321d1448bd4860034", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]     Checking borrow-or-share v0.2.4
[INFO] [stderr]     Checking outref v0.5.2
[INFO] [stderr]     Checking eventsource-stream v0.2.3
[INFO] [stderr]     Checking bytecount v0.6.9
[INFO] [stderr]     Checking num-cmp v0.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking nibble_vec v0.1.0
[INFO] [stderr]     Checking clap_lex v1.0.0
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]     Checking fd-lock v4.0.4
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking clap_builder v4.5.60
[INFO] [stderr]     Checking radix_trie v0.2.1
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking fancy-regex v0.14.0
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking fluent-uri v0.3.2
[INFO] [stderr]     Checking email_address v0.2.9
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking uuid v1.21.0
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking tokio v1.50.0
[INFO] [stderr]     Checking referencing v0.28.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking uuid-simd v0.8.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking clap v4.5.60
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking fraction v0.15.3
[INFO] [stderr]     Checking rustyline v15.0.0
[INFO] [stderr]     Checking tungstenite v0.24.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-tungstenite v0.24.0
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking reqwest-eventsource v0.6.0
[INFO] [stderr]     Checking jsonschema v0.28.3
[INFO] [stderr]     Checking pi-ai v0.1.0 (/opt/rustwide/workdir/pi-ai)
[INFO] [stderr]     Checking pi-agent-core v0.1.0 (/opt/rustwide/workdir/pi-agent-core)
[INFO] [stderr]     Checking gitclaw v0.1.0 (/opt/rustwide/workdir/gitclaw)
[INFO] [stdout] warning: unused import: `crate::loader::AgentManifest`
[INFO] [stdout]  --> gitclaw/src/sdk_types.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::loader::AgentManifest;
[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: `Serialize`
[INFO] [stdout]  --> gitclaw/src/tool_loader.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> gitclaw/src/tool_loader.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde_json::{json, Value};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_OUTPUT`
[INFO] [stdout]   --> gitclaw/src/tools/cli.rs:10:55
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::shared::{truncate_output, DEFAULT_TIMEOUT, MAX_OUTPUT};
[INFO] [stdout]    |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_LINES`
[INFO] [stdout]  --> gitclaw/src/tools/read.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::shared::{paginate_lines, MAX_LINES};
[INFO] [stdout]   |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::loader::AgentManifest`
[INFO] [stdout]  --> gitclaw/src/sdk_types.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::loader::AgentManifest;
[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: `Serialize`
[INFO] [stdout]  --> gitclaw/src/tool_loader.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> gitclaw/src/tool_loader.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde_json::{json, Value};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_OUTPUT`
[INFO] [stdout]   --> gitclaw/src/tools/cli.rs:10:55
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::shared::{truncate_output, DEFAULT_TIMEOUT, MAX_OUTPUT};
[INFO] [stdout]    |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_LINES`
[INFO] [stdout]  --> gitclaw/src/tools/read.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::shared::{paginate_lines, MAX_LINES};
[INFO] [stdout]   |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clean_url` is never used
[INFO] [stdout]   --> gitclaw/src/session.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn clean_url(url: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ws_tx` is never read
[INFO] [stdout]   --> gitclaw/src/voice/openai_realtime.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct OpenAIRealtimeAdapter {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] 14 |     config: VoiceAdapterConfig,
[INFO] [stdout] 15 |     ws_tx: Option<
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::loader::AgentManifest`
[INFO] [stdout]  --> gitclaw/src/sdk_types.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::loader::AgentManifest;
[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: `Serialize`
[INFO] [stdout]  --> gitclaw/src/tool_loader.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> gitclaw/src/tool_loader.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde_json::{json, Value};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_OUTPUT`
[INFO] [stdout]   --> gitclaw/src/tools/cli.rs:10:55
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::shared::{truncate_output, DEFAULT_TIMEOUT, MAX_OUTPUT};
[INFO] [stdout]    |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_LINES`
[INFO] [stdout]  --> gitclaw/src/tools/read.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::shared::{paginate_lines, MAX_LINES};
[INFO] [stdout]   |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VoiceAdapterConfig`, `VoiceAdapter`, and `VoiceServerOptions`
[INFO] [stdout]  --> gitclaw/src/voice/mod.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use adapter::{VoiceAdapter, VoiceAdapterConfig, VoiceServerOptions};
[INFO] [stdout]   |                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HooksFileConfig`
[INFO] [stdout]   --> gitclaw/src/main.rs:30:43
[INFO] [stdout]    |
[INFO] [stdout] 30 | use hooks::{load_hooks_config, run_hooks, HooksFileConfig};
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::loader::AgentManifest`
[INFO] [stdout]  --> gitclaw/src/sdk_types.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::loader::AgentManifest;
[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: `Serialize`
[INFO] [stdout]  --> gitclaw/src/tool_loader.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> gitclaw/src/tool_loader.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde_json::{json, Value};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_OUTPUT`
[INFO] [stdout]   --> gitclaw/src/tools/cli.rs:10:55
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::shared::{truncate_output, DEFAULT_TIMEOUT, MAX_OUTPUT};
[INFO] [stdout]    |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_LINES`
[INFO] [stdout]  --> gitclaw/src/tools/read.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::shared::{paginate_lines, MAX_LINES};
[INFO] [stdout]   |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VoiceAdapterConfig`, `VoiceAdapter`, and `VoiceServerOptions`
[INFO] [stdout]  --> gitclaw/src/voice/mod.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use adapter::{VoiceAdapter, VoiceAdapterConfig, VoiceServerOptions};
[INFO] [stdout]   |                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HooksFileConfig`
[INFO] [stdout]   --> gitclaw/src/main.rs:30:43
[INFO] [stdout]    |
[INFO] [stdout] 30 | use hooks::{load_hooks_config, run_hooks, HooksFileConfig};
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clean_url` is never used
[INFO] [stdout]   --> gitclaw/src/session.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn clean_url(url: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ws_tx` is never read
[INFO] [stdout]   --> gitclaw/src/voice/openai_realtime.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct OpenAIRealtimeAdapter {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] 14 |     config: VoiceAdapterConfig,
[INFO] [stdout] 15 |     ws_tx: Option<
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `log_tool_use`, `log_tool_result`, `log_response`, `log_error`, and `log_session_end` are never used
[INFO] [stdout]    --> gitclaw/src/audit.rs:59:18
[INFO] [stdout]     |
[INFO] [stdout]  27 | impl AuditLogger {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub async fn log_tool_use(&self, tool: &str, args: &serde_json::Value) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub async fn log_tool_result(&self, tool: &str, result: &str) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub async fn log_response(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub async fn log_error(&self, error: &str) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub async fn log_session_end(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `log_level` and `extra` are never read
[INFO] [stdout]  --> gitclaw/src/config.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct EnvConfig {
[INFO] [stdout]   |            --------- fields in this struct
[INFO] [stdout] 7 |     pub log_level: Option<String>,
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout] 8 |     pub model_override: Option<String>,
[INFO] [stdout] 9 |     pub extra: serde_yaml::Value,
[INFO] [stdout]   |         ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `EnvConfig` 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 `description` is never read
[INFO] [stdout]   --> gitclaw/src/hooks.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct HookDefinition {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 10 |     pub script: String,
[INFO] [stdout] 11 |     pub description: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HookDefinition` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `knowledge`, `examples`, and `env_config` are never read
[INFO] [stdout]   --> gitclaw/src/loader.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct LoadedAgent {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub knowledge: LoadedKnowledge,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub examples: Vec<ExampleEntry>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 82 |     pub env_config: EnvConfig,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SandboxProvider` is never used
[INFO] [stdout]  --> gitclaw/src/sandbox.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait SandboxProvider: Send + Sync {
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StubSandbox` is never constructed
[INFO] [stdout]   --> gitclaw/src/sandbox.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct StubSandbox;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session_id` and `manifest` are never read
[INFO] [stdout]   --> gitclaw/src/sdk.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Query {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     session_id: String,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 20 |     manifest: Option<AgentManifest>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `abort`, `session_id`, `manifest`, and `messages` are never used
[INFO] [stdout]   --> gitclaw/src/sdk.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Query {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn abort(&self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn session_id(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn manifest(&self) -> Option<&AgentManifest> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn messages(&self) -> &[GCMessage] {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tool` is never used
[INFO] [stdout]    --> gitclaw/src/sdk.rs:343:8
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub fn tool(
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `PreToolUseFn` is never used
[INFO] [stdout]   --> gitclaw/src/sdk_hooks.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type PreToolUseFn = Box<dyn Fn(GCPreToolUseContext) -> HookResult + Send + Sync>;
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgrammaticHooks` is never constructed
[INFO] [stdout]   --> gitclaw/src/sdk_hooks.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ProgrammaticHooks {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GCHookContext` is never constructed
[INFO] [stdout]   --> gitclaw/src/sdk_types.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct GCHookContext {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GCPreToolUseContext` is never constructed
[INFO] [stdout]   --> gitclaw/src/sdk_types.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub struct GCPreToolUseContext {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GCHookResult` is never constructed
[INFO] [stdout]   --> gitclaw/src/sdk_types.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct GCHookResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `description`, `input_schema`, and `handler` are never read
[INFO] [stdout]    --> gitclaw/src/sdk_types.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub struct GCToolDefinition {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 100 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 101 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 102 |     pub input_schema: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 103 |     pub handler: Box<dyn Fn(serde_json::Value) -> futures::future::BoxFuture<'static, Result<String, String>> + Send + Sync>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SandboxOptions` is never constructed
[INFO] [stdout]    --> gitclaw/src/sdk_types.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct SandboxOptions {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tools` and `max_turns` are never read
[INFO] [stdout]    --> gitclaw/src/sdk_types.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct QueryOptions {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub tools: Option<Vec<GCToolDefinition>>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub max_turns: Option<usize>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `session_id` is never read
[INFO] [stdout]   --> gitclaw/src/session.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct LocalSession {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub session_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clean_url` is never used
[INFO] [stdout]   --> gitclaw/src/session.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn clean_url(url: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `meta`, `has_scripts`, and `has_references` are never read
[INFO] [stdout]   --> gitclaw/src/skills.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct ParsedSkill {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 15 |     pub meta: SkillMetadata,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 16 |     pub instructions: String,
[INFO] [stdout] 17 |     pub has_scripts: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 18 |     pub has_references: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParsedSkill` 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 `disconnect` is never used
[INFO] [stdout]   --> gitclaw/src/voice/adapter.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub trait VoiceAdapter: Send + Sync {
[INFO] [stdout]    |           ------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 17 |     async fn disconnect(&mut self) -> Result<(), String>;
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `adapter` is never read
[INFO] [stdout]   --> gitclaw/src/voice/adapter.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct VoiceServerOptions {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 21 |     pub port: Option<u16>,
[INFO] [stdout] 22 |     pub adapter: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ws_tx` is never read
[INFO] [stdout]   --> gitclaw/src/voice/openai_realtime.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct OpenAIRealtimeAdapter {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] 14 |     config: VoiceAdapterConfig,
[INFO] [stdout] 15 |     ws_tx: Option<
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `format` is never read
[INFO] [stdout]   --> gitclaw/src/workflows.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct WorkflowMetadata {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub format: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WorkflowMetadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `log_tool_use`, `log_tool_result`, `log_response`, `log_error`, and `log_session_end` are never used
[INFO] [stdout]    --> gitclaw/src/audit.rs:59:18
[INFO] [stdout]     |
[INFO] [stdout]  27 | impl AuditLogger {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub async fn log_tool_use(&self, tool: &str, args: &serde_json::Value) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub async fn log_tool_result(&self, tool: &str, result: &str) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub async fn log_response(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub async fn log_error(&self, error: &str) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub async fn log_session_end(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `log_level` and `extra` are never read
[INFO] [stdout]  --> gitclaw/src/config.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct EnvConfig {
[INFO] [stdout]   |            --------- fields in this struct
[INFO] [stdout] 7 |     pub log_level: Option<String>,
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout] 8 |     pub model_override: Option<String>,
[INFO] [stdout] 9 |     pub extra: serde_yaml::Value,
[INFO] [stdout]   |         ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `EnvConfig` 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 `description` is never read
[INFO] [stdout]   --> gitclaw/src/hooks.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct HookDefinition {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 10 |     pub script: String,
[INFO] [stdout] 11 |     pub description: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HookDefinition` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `knowledge`, `examples`, and `env_config` are never read
[INFO] [stdout]   --> gitclaw/src/loader.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct LoadedAgent {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub knowledge: LoadedKnowledge,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub examples: Vec<ExampleEntry>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 82 |     pub env_config: EnvConfig,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SandboxProvider` is never used
[INFO] [stdout]  --> gitclaw/src/sandbox.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait SandboxProvider: Send + Sync {
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StubSandbox` is never constructed
[INFO] [stdout]   --> gitclaw/src/sandbox.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct StubSandbox;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session_id` and `manifest` are never read
[INFO] [stdout]   --> gitclaw/src/sdk.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Query {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     session_id: String,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 20 |     manifest: Option<AgentManifest>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `abort`, `session_id`, `manifest`, and `messages` are never used
[INFO] [stdout]   --> gitclaw/src/sdk.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Query {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn abort(&self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn session_id(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn manifest(&self) -> Option<&AgentManifest> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn messages(&self) -> &[GCMessage] {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tool` is never used
[INFO] [stdout]    --> gitclaw/src/sdk.rs:343:8
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub fn tool(
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `PreToolUseFn` is never used
[INFO] [stdout]   --> gitclaw/src/sdk_hooks.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type PreToolUseFn = Box<dyn Fn(GCPreToolUseContext) -> HookResult + Send + Sync>;
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgrammaticHooks` is never constructed
[INFO] [stdout]   --> gitclaw/src/sdk_hooks.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ProgrammaticHooks {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GCHookContext` is never constructed
[INFO] [stdout]   --> gitclaw/src/sdk_types.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct GCHookContext {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GCPreToolUseContext` is never constructed
[INFO] [stdout]   --> gitclaw/src/sdk_types.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub struct GCPreToolUseContext {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GCHookResult` is never constructed
[INFO] [stdout]   --> gitclaw/src/sdk_types.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct GCHookResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `description`, `input_schema`, and `handler` are never read
[INFO] [stdout]    --> gitclaw/src/sdk_types.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub struct GCToolDefinition {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 100 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 101 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 102 |     pub input_schema: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 103 |     pub handler: Box<dyn Fn(serde_json::Value) -> futures::future::BoxFuture<'static, Result<String, String>> + Send + Sync>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SandboxOptions` is never constructed
[INFO] [stdout]    --> gitclaw/src/sdk_types.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct SandboxOptions {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tools` and `max_turns` are never read
[INFO] [stdout]    --> gitclaw/src/sdk_types.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct QueryOptions {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub tools: Option<Vec<GCToolDefinition>>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub max_turns: Option<usize>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `session_id` is never read
[INFO] [stdout]   --> gitclaw/src/session.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct LocalSession {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub session_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clean_url` is never used
[INFO] [stdout]   --> gitclaw/src/session.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn clean_url(url: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `meta`, `has_scripts`, and `has_references` are never read
[INFO] [stdout]   --> gitclaw/src/skills.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct ParsedSkill {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 15 |     pub meta: SkillMetadata,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 16 |     pub instructions: String,
[INFO] [stdout] 17 |     pub has_scripts: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 18 |     pub has_references: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParsedSkill` 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 `disconnect` is never used
[INFO] [stdout]   --> gitclaw/src/voice/adapter.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub trait VoiceAdapter: Send + Sync {
[INFO] [stdout]    |           ------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 17 |     async fn disconnect(&mut self) -> Result<(), String>;
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `adapter` is never read
[INFO] [stdout]   --> gitclaw/src/voice/adapter.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct VoiceServerOptions {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 21 |     pub port: Option<u16>,
[INFO] [stdout] 22 |     pub adapter: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ws_tx` is never read
[INFO] [stdout]   --> gitclaw/src/voice/openai_realtime.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct OpenAIRealtimeAdapter {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] 14 |     config: VoiceAdapterConfig,
[INFO] [stdout] 15 |     ws_tx: Option<
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `format` is never read
[INFO] [stdout]   --> gitclaw/src/workflows.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct WorkflowMetadata {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub format: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WorkflowMetadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.55s
[INFO] running `Command { std: "docker" "inspect" "d3efa9031072ea7d1b9eac3585e15e7df4fd21b9bba9304321d1448bd4860034", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d3efa9031072ea7d1b9eac3585e15e7df4fd21b9bba9304321d1448bd4860034", kill_on_drop: false }`
[INFO] [stdout] d3efa9031072ea7d1b9eac3585e15e7df4fd21b9bba9304321d1448bd4860034
