[INFO] cloning repository https://github.com/BenChung/Clautribution
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/BenChung/Clautribution" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBenChung%2FClautribution", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBenChung%2FClautribution'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f9f90b5de31f2c8061769835c6c4c0f9ed32f167
[INFO] checking BenChung/Clautribution against 012c0bd4d516934012c9a1ecb26e9eb283d2ed75 for pr-133502-29
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBenChung%2FClautribution" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/BenChung/Clautribution
[INFO] finished tweaking git repo https://github.com/BenChung/Clautribution
[INFO] tweaked toml for git repo https://github.com/BenChung/Clautribution written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/BenChung/Clautribution on toolchain 012c0bd4d516934012c9a1ecb26e9eb283d2ed75
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+012c0bd4d516934012c9a1ecb26e9eb283d2ed75" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/BenChung/Clautribution 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" "+012c0bd4d516934012c9a1ecb26e9eb283d2ed75" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded minijinja v2.15.1
[INFO] [stderr]   Downloaded openssl-src v300.5.5+3.5.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6
[INFO] running `Command { std: "docker" "start" "988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6", 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" "988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6" "/opt/rustwide/cargo-home/bin/cargo" "+012c0bd4d516934012c9a1ecb26e9eb283d2ed75" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6", 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" "988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6" "/opt/rustwide/cargo-home/bin/cargo" "+012c0bd4d516934012c9a1ecb26e9eb283d2ed75" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking uuid v1.21.0
[INFO] [stderr]    Compiling syn v2.0.116
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]     Checking tempfile v3.25.0
[INFO] [stderr]    Compiling openssl-src v300.5.5+3.5.5
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling libz-sys v1.1.23
[INFO] [stderr]    Compiling libssh2-sys v0.3.1
[INFO] [stderr]    Compiling libgit2-sys v0.18.3+1.9.2
[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 zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking minijinja v2.15.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking git2 v0.20.4
[INFO] [stderr]     Checking clautribution v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `read_note` is never used
[INFO] [stdout]   --> tests/common/mod.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn read_note(repo_path: &std::path::Path, ref_name: &str) -> Option<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: constant `COMMON_NO_GIT` is never used
[INFO] [stdout]   --> tests/common/mod.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub const COMMON_NO_GIT: &str = r#"
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_note` is never used
[INFO] [stdout]   --> tests/common/mod.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn read_note(repo_path: &std::path::Path, ref_name: &str) -> Option<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: constant `COMMON_NO_GIT` is never used
[INFO] [stdout]   --> tests/common/mod.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub const COMMON_NO_GIT: &str = r#"
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `temp_git_repo` is never used
[INFO] [stdout]   --> tests/common/mod.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn temp_git_repo() -> tempfile::TempDir {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `common` is never used
[INFO] [stdout]   --> tests/common/mod.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn common(cwd: &str, transcript_path: &str) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_note` is never used
[INFO] [stdout]   --> tests/common/mod.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn read_note(repo_path: &std::path::Path, ref_name: &str) -> Option<String> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COMMON_NO_GIT` is never used
[INFO] [stdout]   --> tests/common/mod.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub const COMMON_NO_GIT: &str = r#"
[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 `0` is never read
[INFO] [stdout]   --> src/transcript/mod.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 |     FileHistorySnapshot(FileHistorySnapshotEntry),
[INFO] [stdout]    |     ------------------- ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TranscriptEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 37 -     FileHistorySnapshot(FileHistorySnapshotEntry),
[INFO] [stdout] 37 +     FileHistorySnapshot(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/transcript/mod.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 |     QueueOperation(QueueOperationEntry),
[INFO] [stdout]    |     -------------- ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TranscriptEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 39 -     QueueOperation(QueueOperationEntry),
[INFO] [stdout] 39 +     QueueOperation(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/transcript/mod.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct ConversationEntry {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub is_sidechain: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 55 |     pub user_type: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 56 |     pub cwd: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 57 |     pub session_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 58 |     pub timestamp: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 59 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 60 |     #[serde(default)]
[INFO] [stdout] 61 |     pub git_branch: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     #[serde(default)]
[INFO] [stdout] 63 |     pub slug: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub request_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 69 |     #[serde(default)]
[INFO] [stdout] 70 |     pub thinking_metadata: Option<ThinkingMetadata>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 71 |     #[serde(default)]
[INFO] [stdout] 72 |     pub todos: Option<Vec<serde_json::Value>>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 73 |     #[serde(default)]
[INFO] [stdout] 74 |     pub permission_mode: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 75 |     #[serde(default)]
[INFO] [stdout] 76 |     pub tool_use_result: Option<ToolUseResult>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 77 |     #[serde(default)]
[INFO] [stdout] 78 |     pub source_tool_assistant_uuid: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 79 |     #[serde(default)]
[INFO] [stdout] 80 |     pub is_meta: Option<bool>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConversationEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `level`, `disabled`, and `triggers` are never read
[INFO] [stdout]   --> src/transcript/mod.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub struct ThinkingMetadata {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 96 |     pub level: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 97 |     pub disabled: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 98 |     #[serde(default)]
[INFO] [stdout] 99 |     pub triggers: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ThinkingMetadata` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/transcript/mod.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct Message {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 109 |     pub role: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub model: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 113 |     #[serde(default)]
[INFO] [stdout] 114 |     pub id: Option<String>,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 115 |     #[serde(default, rename = "type")]
[INFO] [stdout] 116 |     pub message_type: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 117 |     #[serde(default)]
[INFO] [stdout] 118 |     pub stop_reason: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 119 |     #[serde(default)]
[INFO] [stdout] 120 |     pub stop_sequence: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 121 |     #[serde(default)]
[INFO] [stdout] 122 |     pub usage: Option<Usage>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Message` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:144:14
[INFO] [stdout]     |
[INFO] [stdout] 144 |     Thinking(ThinkingBlock),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ContentBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 144 -     Thinking(ThinkingBlock),
[INFO] [stdout] 144 +     Thinking(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `thinking` and `signature` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub struct ThinkingBlock {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 158 |     pub thinking: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 159 |     #[serde(default)]
[INFO] [stdout] 160 |     pub signature: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ThinkingBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `caller` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct ToolUseBlock {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub caller: Option<Caller>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `caller_type` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct Caller {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 174 |     #[serde(rename = "type")]
[INFO] [stdout] 175 |     pub caller_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Caller` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_error` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub struct ToolResultBlock {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub is_error: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolResultBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/transcript/mod.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 191 | pub struct Usage {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 192 |     #[serde(default)]
[INFO] [stdout] 193 |     pub input_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 194 |     #[serde(default)]
[INFO] [stdout] 195 |     pub cache_creation_input_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 196 |     #[serde(default)]
[INFO] [stdout] 197 |     pub cache_read_input_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 198 |     #[serde(default)]
[INFO] [stdout] 199 |     pub output_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 200 |     #[serde(default)]
[INFO] [stdout] 201 |     pub service_tier: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 202 |     #[serde(default)]
[INFO] [stdout] 203 |     pub cache_creation: Option<CacheCreation>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 204 |     #[serde(default)]
[INFO] [stdout] 205 |     pub inference_geo: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Usage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ephemeral_5m_input_tokens` and `ephemeral_1h_input_tokens` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 209 | pub struct CacheCreation {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 210 |     #[serde(default)]
[INFO] [stdout] 211 |     pub ephemeral_5m_input_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 212 |     #[serde(default)]
[INFO] [stdout] 213 |     pub ephemeral_1h_input_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CacheCreation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:225:10
[INFO] [stdout]     |
[INFO] [stdout] 225 |     Read(ReadToolResult),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 225 -     Read(ReadToolResult),
[INFO] [stdout] 225 +     Read(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:226:11
[INFO] [stdout]     |
[INFO] [stdout] 226 |     Write(WriteToolResult),
[INFO] [stdout]     |     ----- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 226 -     Write(WriteToolResult),
[INFO] [stdout] 226 +     Write(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:227:10
[INFO] [stdout]     |
[INFO] [stdout] 227 |     Edit(EditToolResult),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 227 -     Edit(EditToolResult),
[INFO] [stdout] 227 +     Edit(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:228:10
[INFO] [stdout]     |
[INFO] [stdout] 228 |     Bash(BashToolResult),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 228 -     Bash(BashToolResult),
[INFO] [stdout] 228 +     Bash(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:230:11
[INFO] [stdout]     |
[INFO] [stdout] 230 |     Other(serde_json::Value),
[INFO] [stdout]     |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 230 -     Other(serde_json::Value),
[INFO] [stdout] 230 +     Other(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `result_type` and `file` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub struct ReadToolResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub result_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 239 |     pub file: ReadFileInfo,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ReadToolResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `file_path`, `content`, `num_lines`, `start_line`, and `total_lines` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct ReadFileInfo {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 245 |     pub file_path: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 246 |     pub content: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 247 |     pub num_lines: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 248 |     pub start_line: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 249 |     pub total_lines: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ReadFileInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `result_type`, `file_path`, `content`, `structured_patch`, and `original_file` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:257:9
[INFO] [stdout]     |
[INFO] [stdout] 254 | pub struct WriteToolResult {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 257 |     pub result_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 258 |     pub file_path: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 259 |     pub content: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 260 |     #[serde(default)]
[INFO] [stdout] 261 |     pub structured_patch: Option<Vec<DiffHunk>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 262 |     #[serde(default)]
[INFO] [stdout] 263 |     pub original_file: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WriteToolResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/transcript/mod.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub struct EditToolResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 269 |     pub file_path: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 270 |     pub old_string: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 271 |     pub new_string: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 272 |     #[serde(default)]
[INFO] [stdout] 273 |     pub original_file: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 274 |     #[serde(default)]
[INFO] [stdout] 275 |     pub structured_patch: Option<Vec<DiffHunk>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 276 |     #[serde(default)]
[INFO] [stdout] 277 |     pub user_modified: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 278 |     #[serde(default)]
[INFO] [stdout] 279 |     pub replace_all: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `EditToolResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `old_start`, `old_lines`, `new_start`, `new_lines`, and `lines` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:285:9
[INFO] [stdout]     |
[INFO] [stdout] 284 | pub struct DiffHunk {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 285 |     pub old_start: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 286 |     pub old_lines: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 287 |     pub new_start: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 288 |     pub new_lines: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 289 |     pub lines: Vec<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DiffHunk` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `stdout`, `stderr`, `interrupted`, and `is_image` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:295:9
[INFO] [stdout]     |
[INFO] [stdout] 294 | pub struct BashToolResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 295 |     pub stdout: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 296 |     pub stderr: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 297 |     #[serde(default)]
[INFO] [stdout] 298 |     pub interrupted: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 299 |     #[serde(default)]
[INFO] [stdout] 300 |     pub is_image: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BashToolResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/transcript/mod.rs:316:9
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub struct ProgressEntry {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 316 |     pub is_sidechain: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 317 |     #[serde(default)]
[INFO] [stdout] 318 |     pub user_type: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 319 |     #[serde(default)]
[INFO] [stdout] 320 |     pub cwd: String,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 321 |     #[serde(default)]
[INFO] [stdout] 322 |     pub session_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 323 |     #[serde(default)]
[INFO] [stdout] 324 |     pub timestamp: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 325 |     #[serde(default)]
[INFO] [stdout] 326 |     pub version: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 327 |     #[serde(default)]
[INFO] [stdout] 328 |     pub git_branch: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 329 |     #[serde(default)]
[INFO] [stdout] 330 |     pub slug: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 331 |     #[serde(default, rename = "toolUseID")]
[INFO] [stdout] 332 |     pub tool_use_id: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 333 |     #[serde(default, rename = "parentToolUseID")]
[INFO] [stdout] 334 |     pub parent_tool_use_id: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 335 |     #[serde(default)]
[INFO] [stdout] 336 |     pub data: Option<ProgressData>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ProgressEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `progress_type`, `output`, `full_output`, `elapsed_time_seconds`, and `total_lines` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub struct ProgressData {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 342 |     #[serde(rename = "type")]
[INFO] [stdout] 343 |     pub progress_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 344 |     #[serde(default)]
[INFO] [stdout] 345 |     pub output: Option<String>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 346 |     #[serde(default)]
[INFO] [stdout] 347 |     pub full_output: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 348 |     #[serde(default)]
[INFO] [stdout] 349 |     pub elapsed_time_seconds: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 350 |     #[serde(default)]
[INFO] [stdout] 351 |     pub total_lines: Option<i64>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ProgressData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `message_id`, `snapshot`, and `is_snapshot_update` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:361:9
[INFO] [stdout]     |
[INFO] [stdout] 360 | pub struct FileHistorySnapshotEntry {
[INFO] [stdout]     |            ------------------------ fields in this struct
[INFO] [stdout] 361 |     pub message_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 362 |     pub snapshot: FileSnapshot,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 363 |     #[serde(default)]
[INFO] [stdout] 364 |     pub is_snapshot_update: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileHistorySnapshotEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `message_id`, `timestamp`, and `tracked_file_backups` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:370:9
[INFO] [stdout]     |
[INFO] [stdout] 369 | pub struct FileSnapshot {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 370 |     pub message_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 371 |     pub timestamp: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 372 |     pub tracked_file_backups: HashMap<String, FileBackup>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileSnapshot` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `backup_file_name`, `version`, and `backup_time` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 377 | pub struct FileBackup {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 378 |     pub backup_file_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 379 |     pub version: i64,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 380 |     pub backup_time: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileBackup` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `operation`, `timestamp`, `session_id`, and `content` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:390:9
[INFO] [stdout]     |
[INFO] [stdout] 389 | pub struct QueueOperationEntry {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] 390 |     pub operation: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 391 |     pub timestamp: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 392 |     pub session_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 393 |     #[serde(default)]
[INFO] [stdout] 394 |     pub content: Option<String>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QueueOperationEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/transcript/mod.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub struct SystemEntry {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 404 |     pub uuid: String,
[INFO] [stdout] 405 |     pub subtype: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub is_sidechain: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 412 |     #[serde(default)]
[INFO] [stdout] 413 |     pub user_type: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 414 |     #[serde(default)]
[INFO] [stdout] 415 |     pub cwd: String,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 416 |     #[serde(default)]
[INFO] [stdout] 417 |     pub session_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 418 |     #[serde(default)]
[INFO] [stdout] 419 |     pub timestamp: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 420 |     #[serde(default)]
[INFO] [stdout] 421 |     pub version: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 422 |     #[serde(default)]
[INFO] [stdout] 423 |     pub git_branch: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 424 |     #[serde(default)]
[INFO] [stdout] 425 |     pub slug: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 426 |     #[serde(default)]
[INFO] [stdout] 427 |     pub duration_ms: Option<u64>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 428 |     #[serde(default)]
[INFO] [stdout] 429 |     pub is_meta: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SystemEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assistant_blocks_by_entry` is never used
[INFO] [stdout]    --> src/transcript/mod.rs:486:4
[INFO] [stdout]     |
[INFO] [stdout] 486 | fn assistant_blocks_by_entry<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `get_raw`, `entries`, and `last_text_response` are never used
[INFO] [stdout]    --> src/transcript/mod.rs:549:12
[INFO] [stdout]     |
[INFO] [stdout] 498 | impl Transcript {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 549 |     pub fn get_raw(&self, uuid: &str) -> Option<&serde_json::Value> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 571 |     pub fn entries(&self) -> &[TranscriptEntry] {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 706 |     pub fn last_text_response(chain: &[&TranscriptEntry]) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `permission_mode` is never read
[INFO] [stdout]   --> src/types/mod.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct CommonInput {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub permission_mode: Option<PermissionMode>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CommonInput` 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 `suggestion_type` and `tool` are never read
[INFO] [stdout]   --> src/types/mod.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct PermissionSuggestion {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout] 74 |     #[serde(rename = "type")]
[INFO] [stdout] 75 |     pub suggestion_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 76 |     #[serde(default)]
[INFO] [stdout] 77 |     pub tool: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PermissionSuggestion` 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 `model` and `agent_type` are never read
[INFO] [stdout]   --> src/types/mod.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct SessionStartInput {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub model: Option<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 89 |     #[serde(default)]
[INFO] [stdout] 90 |     pub agent_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SessionStartInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `tool_name`, `tool_input`, and `tool_use_id` are never read
[INFO] [stdout]    --> src/types/mod.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct PreToolUseInput {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 102 |     #[serde(flatten)]
[INFO] [stdout] 103 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 104 |     pub tool_name: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 105 |     pub tool_input: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 106 |     pub tool_use_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PreToolUseInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `tool_name`, `tool_input`, and `permission_suggestions` are never read
[INFO] [stdout]    --> src/types/mod.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct PermissionRequestInput {
[INFO] [stdout]     |            ---------------------- fields in this struct
[INFO] [stdout] 111 |     #[serde(flatten)]
[INFO] [stdout] 112 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 113 |     pub tool_name: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 114 |     pub tool_input: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 115 |     #[serde(default)]
[INFO] [stdout] 116 |     pub permission_suggestions: Option<Vec<PermissionSuggestion>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PermissionRequestInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `tool_name`, `tool_input`, `tool_response`, and `tool_use_id` are never read
[INFO] [stdout]    --> src/types/mod.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub struct PostToolUseInput {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 121 |     #[serde(flatten)]
[INFO] [stdout] 122 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 123 |     pub tool_name: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 124 |     pub tool_input: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 125 |     pub tool_response: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 126 |     pub tool_use_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PostToolUseInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `tool_name`, `tool_input`, `tool_use_id`, `error`, and `is_interrupt` are never read
[INFO] [stdout]    --> src/types/mod.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub struct PostToolUseFailureInput {
[INFO] [stdout]     |            ----------------------- fields in this struct
[INFO] [stdout] 131 |     #[serde(flatten)]
[INFO] [stdout] 132 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 133 |     pub tool_name: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 134 |     pub tool_input: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 135 |     pub tool_use_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 136 |     pub error: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 137 |     #[serde(default)]
[INFO] [stdout] 138 |     pub is_interrupt: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PostToolUseFailureInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `message`, `title`, and `notification_type` are never read
[INFO] [stdout]    --> src/types/mod.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub struct NotificationInput {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 143 |     #[serde(flatten)]
[INFO] [stdout] 144 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 145 |     pub message: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 146 |     #[serde(default)]
[INFO] [stdout] 147 |     pub title: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 148 |     pub notification_type: NotificationType,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NotificationInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `agent_id`, and `agent_type` are never read
[INFO] [stdout]    --> src/types/mod.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub struct SubagentStartInput {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] 153 |     #[serde(flatten)]
[INFO] [stdout] 154 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 155 |     pub agent_id: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 156 |     pub agent_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SubagentStartInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `stop_hook_active`, `agent_id`, `agent_type`, and `agent_transcript_path` are never read
[INFO] [stdout]    --> src/types/mod.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub struct SubagentStopInput {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 161 |     #[serde(flatten)]
[INFO] [stdout] 162 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 163 |     pub stop_hook_active: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 164 |     pub agent_id: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 165 |     pub agent_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 166 |     pub agent_transcript_path: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SubagentStopInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stop_hook_active` is never read
[INFO] [stdout]    --> src/types/mod.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub struct StopInput {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub stop_hook_active: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StopInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `teammate_name`, and `team_name` are never read
[INFO] [stdout]    --> src/types/mod.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub struct TeammateIdleInput {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 178 |     #[serde(flatten)]
[INFO] [stdout] 179 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 180 |     pub teammate_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 181 |     pub team_name: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TeammateIdleInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `task_id`, `task_subject`, `task_description`, `teammate_name`, and `team_name` are never read
[INFO] [stdout]    --> src/types/mod.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub struct TaskCompletedInput {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] 186 |     #[serde(flatten)]
[INFO] [stdout] 187 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 188 |     pub task_id: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 189 |     pub task_subject: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 190 |     #[serde(default)]
[INFO] [stdout] 191 |     pub task_description: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 192 |     #[serde(default)]
[INFO] [stdout] 193 |     pub teammate_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 194 |     #[serde(default)]
[INFO] [stdout] 195 |     pub team_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TaskCompletedInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `common`, `trigger`, and `custom_instructions` are never read
[INFO] [stdout]    --> src/types/mod.rs:201:9
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub struct PreCompactInput {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 200 |     #[serde(flatten)]
[INFO] [stdout] 201 |     pub common: CommonInput,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 202 |     pub trigger: CompactTrigger,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 203 |     pub custom_instructions: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PreCompactInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `reason` is never read
[INFO] [stdout]    --> src/types/mod.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct SessionEndInput {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub reason: SessionEndReason,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SessionEndInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:221:16
[INFO] [stdout]     |
[INFO] [stdout] 221 |     PreToolUse(PreToolUseInput),
[INFO] [stdout]     |     ---------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 221 -     PreToolUse(PreToolUseInput),
[INFO] [stdout] 221 +     PreToolUse(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:222:23
[INFO] [stdout]     |
[INFO] [stdout] 222 |     PermissionRequest(PermissionRequestInput),
[INFO] [stdout]     |     ----------------- ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 222 -     PermissionRequest(PermissionRequestInput),
[INFO] [stdout] 222 +     PermissionRequest(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:223:17
[INFO] [stdout]     |
[INFO] [stdout] 223 |     PostToolUse(PostToolUseInput),
[INFO] [stdout]     |     ----------- ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 223 -     PostToolUse(PostToolUseInput),
[INFO] [stdout] 223 +     PostToolUse(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:224:24
[INFO] [stdout]     |
[INFO] [stdout] 224 |     PostToolUseFailure(PostToolUseFailureInput),
[INFO] [stdout]     |     ------------------ ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 224 -     PostToolUseFailure(PostToolUseFailureInput),
[INFO] [stdout] 224 +     PostToolUseFailure(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:225:18
[INFO] [stdout]     |
[INFO] [stdout] 225 |     Notification(NotificationInput),
[INFO] [stdout]     |     ------------ ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 225 -     Notification(NotificationInput),
[INFO] [stdout] 225 +     Notification(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:226:19
[INFO] [stdout]     |
[INFO] [stdout] 226 |     SubagentStart(SubagentStartInput),
[INFO] [stdout]     |     ------------- ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 226 -     SubagentStart(SubagentStartInput),
[INFO] [stdout] 226 +     SubagentStart(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:227:18
[INFO] [stdout]     |
[INFO] [stdout] 227 |     SubagentStop(SubagentStopInput),
[INFO] [stdout]     |     ------------ ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 227 -     SubagentStop(SubagentStopInput),
[INFO] [stdout] 227 +     SubagentStop(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:229:18
[INFO] [stdout]     |
[INFO] [stdout] 229 |     TeammateIdle(TeammateIdleInput),
[INFO] [stdout]     |     ------------ ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 229 -     TeammateIdle(TeammateIdleInput),
[INFO] [stdout] 229 +     TeammateIdle(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:230:19
[INFO] [stdout]     |
[INFO] [stdout] 230 |     TaskCompleted(TaskCompletedInput),
[INFO] [stdout]     |     ------------- ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 230 -     TaskCompleted(TaskCompletedInput),
[INFO] [stdout] 230 +     TaskCompleted(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:231:16
[INFO] [stdout]     |
[INFO] [stdout] 231 |     PreCompact(PreCompactInput),
[INFO] [stdout]     |     ---------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HookInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 231 -     PreCompact(PreCompactInput),
[INFO] [stdout] 231 +     PreCompact(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `common` is never used
[INFO] [stdout]    --> src/types/mod.rs:237:12
[INFO] [stdout]     |
[INFO] [stdout] 235 | impl HookInput {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 236 |     /// Access the common fields shared by all hook events.
[INFO] [stdout] 237 |     pub fn common(&self) -> &CommonInput {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ToolCall` is never used
[INFO] [stdout]    --> src/types/mod.rs:263:10
[INFO] [stdout]     |
[INFO] [stdout] 263 | pub enum ToolCall {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `tool_call` is never used
[INFO] [stdout]    --> src/types/mod.rs:282:12
[INFO] [stdout]     |
[INFO] [stdout] 280 | impl PreToolUseInput {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] 281 |     /// Parse `tool_name` + `tool_input` into a typed `ToolCall`.
[INFO] [stdout] 282 |     pub fn tool_call(&self) -> Result<ToolCall, serde_json::Error> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `tool_call` is never used
[INFO] [stdout]    --> src/types/mod.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 287 | impl PostToolUseInput {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 288 |     /// Parse `tool_name` + `tool_input` into a typed `ToolCall`.
[INFO] [stdout] 289 |     pub fn tool_call(&self) -> Result<ToolCall, serde_json::Error> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `parse` is never used
[INFO] [stdout]    --> src/types/mod.rs:295:12
[INFO] [stdout]     |
[INFO] [stdout] 294 | impl ToolCall {
[INFO] [stdout]     | ------------- associated function in this implementation
[INFO] [stdout] 295 |     pub fn parse(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BashToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:320:12
[INFO] [stdout]     |
[INFO] [stdout] 320 | pub struct BashToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WriteToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:331:12
[INFO] [stdout]     |
[INFO] [stdout] 331 | pub struct WriteToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EditToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:337:12
[INFO] [stdout]     |
[INFO] [stdout] 337 | pub struct EditToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ReadToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:346:12
[INFO] [stdout]     |
[INFO] [stdout] 346 | pub struct ReadToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GlobToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:355:12
[INFO] [stdout]     |
[INFO] [stdout] 355 | pub struct GlobToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrepToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:362:12
[INFO] [stdout]     |
[INFO] [stdout] 362 | pub struct GrepToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WebFetchToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:377:12
[INFO] [stdout]     |
[INFO] [stdout] 377 | pub struct WebFetchToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WebSearchToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:383:12
[INFO] [stdout]     |
[INFO] [stdout] 383 | pub struct WebSearchToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TaskToolInput` is never constructed
[INFO] [stdout]    --> src/types/mod.rs:392:12
[INFO] [stdout]     |
[INFO] [stdout] 392 | pub struct TaskToolInput {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/transcript/mod.rs:602:80
[INFO] [stdout]     |
[INFO] [stdout] 602 |     pub fn turn<'a>(&'a self, tail: &'a str, prompt_uuid: Option<&str>) -> Vec<&TranscriptEntry> {
[INFO] [stdout]     |                      --              -- the lifetime is named here             ^^^^^^^^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 602 |     pub fn turn<'a>(&'a self, tail: &'a str, prompt_uuid: Option<&str>) -> Vec<&'a TranscriptEntry> {
[INFO] [stdout]     |                                                                                 ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/transcript/mod.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct ConversationEntry {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub is_sidechain: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 55 |     pub user_type: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 56 |     pub cwd: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 57 |     pub session_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 58 |     pub timestamp: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 59 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 60 |     #[serde(default)]
[INFO] [stdout] 61 |     pub git_branch: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     #[serde(default)]
[INFO] [stdout] 63 |     pub slug: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub thinking_metadata: Option<ThinkingMetadata>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 71 |     #[serde(default)]
[INFO] [stdout] 72 |     pub todos: Option<Vec<serde_json::Value>>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 73 |     #[serde(default)]
[INFO] [stdout] 74 |     pub permission_mode: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub source_tool_assistant_uuid: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 79 |     #[serde(default)]
[INFO] [stdout] 80 |     pub is_meta: Option<bool>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConversationEntry` has a derived impl for the trait `Debug`, but this is 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 `level`, `disabled`, and `triggers` are never read
[INFO] [stdout]   --> src/transcript/mod.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub struct ThinkingMetadata {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 96 |     pub level: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 97 |     pub disabled: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 98 |     #[serde(default)]
[INFO] [stdout] 99 |     pub triggers: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ThinkingMetadata` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `role`, `id`, `message_type`, `stop_reason`, and `stop_sequence` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct Message {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 109 |     pub role: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub id: Option<String>,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 115 |     #[serde(default, rename = "type")]
[INFO] [stdout] 116 |     pub message_type: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 117 |     #[serde(default)]
[INFO] [stdout] 118 |     pub stop_reason: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 119 |     #[serde(default)]
[INFO] [stdout] 120 |     pub stop_sequence: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Message` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:144:14
[INFO] [stdout]     |
[INFO] [stdout] 144 |     Thinking(ThinkingBlock),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ContentBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 144 -     Thinking(ThinkingBlock),
[INFO] [stdout] 144 +     Thinking(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `thinking` and `signature` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub struct ThinkingBlock {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 158 |     pub thinking: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 159 |     #[serde(default)]
[INFO] [stdout] 160 |     pub signature: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ThinkingBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `caller` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct ToolUseBlock {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub caller: Option<Caller>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `caller_type` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct Caller {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 174 |     #[serde(rename = "type")]
[INFO] [stdout] 175 |     pub caller_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Caller` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_error` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub struct ToolResultBlock {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub is_error: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolResultBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cache_creation_input_tokens`, `service_tier`, `cache_creation`, and `inference_geo` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 191 | pub struct Usage {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub cache_creation_input_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     pub service_tier: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 202 |     #[serde(default)]
[INFO] [stdout] 203 |     pub cache_creation: Option<CacheCreation>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 204 |     #[serde(default)]
[INFO] [stdout] 205 |     pub inference_geo: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Usage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ephemeral_5m_input_tokens` and `ephemeral_1h_input_tokens` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 209 | pub struct CacheCreation {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 210 |     #[serde(default)]
[INFO] [stdout] 211 |     pub ephemeral_5m_input_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 212 |     #[serde(default)]
[INFO] [stdout] 213 |     pub ephemeral_1h_input_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CacheCreation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:226:11
[INFO] [stdout]     |
[INFO] [stdout] 226 |     Write(WriteToolResult),
[INFO] [stdout]     |     ----- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 226 -     Write(WriteToolResult),
[INFO] [stdout] 226 +     Write(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:230:11
[INFO] [stdout]     |
[INFO] [stdout] 230 |     Other(serde_json::Value),
[INFO] [stdout]     |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolUseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 230 -     Other(serde_json::Value),
[INFO] [stdout] 230 +     Other(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `content`, `num_lines`, and `start_line` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:246:9
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct ReadFileInfo {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 245 |     pub file_path: String,
[INFO] [stdout] 246 |     pub content: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 247 |     pub num_lines: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 248 |     pub start_line: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ReadFileInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `result_type`, `file_path`, `content`, `structured_patch`, and `original_file` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:257:9
[INFO] [stdout]     |
[INFO] [stdout] 254 | pub struct WriteToolResult {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 257 |     pub result_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 258 |     pub file_path: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 259 |     pub content: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 260 |     #[serde(default)]
[INFO] [stdout] 261 |     pub structured_patch: Option<Vec<DiffHunk>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 262 |     #[serde(default)]
[INFO] [stdout] 263 |     pub original_file: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WriteToolResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `original_file`, `user_modified`, and `replace_all` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:273:9
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub struct EditToolResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 273 |     pub original_file: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     pub user_modified: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 278 |     #[serde(default)]
[INFO] [stdout] 279 |     pub replace_all: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `EditToolResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `old_start`, `old_lines`, `new_start`, and `new_lines` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:285:9
[INFO] [stdout]     |
[INFO] [stdout] 284 | pub struct DiffHunk {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 285 |     pub old_start: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 286 |     pub old_lines: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 287 |     pub new_start: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 288 |     pub new_lines: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DiffHunk` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `interrupted` and `is_image` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:298:9
[INFO] [stdout]     |
[INFO] [stdout] 294 | pub struct BashToolResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub interrupted: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 299 |     #[serde(default)]
[INFO] [stdout] 300 |     pub is_image: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BashToolResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/transcript/mod.rs:316:9
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub struct ProgressEntry {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 316 |     pub is_sidechain: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 317 |     #[serde(default)]
[INFO] [stdout] 318 |     pub user_type: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 319 |     #[serde(default)]
[INFO] [stdout] 320 |     pub cwd: String,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 321 |     #[serde(default)]
[INFO] [stdout] 322 |     pub session_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 323 |     #[serde(default)]
[INFO] [stdout] 324 |     pub timestamp: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 325 |     #[serde(default)]
[INFO] [stdout] 326 |     pub version: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 327 |     #[serde(default)]
[INFO] [stdout] 328 |     pub git_branch: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 329 |     #[serde(default)]
[INFO] [stdout] 330 |     pub slug: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 334 |     pub parent_tool_use_id: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ProgressEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `output`, `full_output`, and `elapsed_time_seconds` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:345:9
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub struct ProgressData {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 345 |     pub output: Option<String>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 346 |     #[serde(default)]
[INFO] [stdout] 347 |     pub full_output: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 348 |     #[serde(default)]
[INFO] [stdout] 349 |     pub elapsed_time_seconds: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ProgressData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_snapshot_update` is never read
[INFO] [stdout]    --> src/transcript/mod.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 360 | pub struct FileHistorySnapshotEntry {
[INFO] [stdout]     |            ------------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 364 |     pub is_snapshot_update: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileHistorySnapshotEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `message_id` and `timestamp` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:370:9
[INFO] [stdout]     |
[INFO] [stdout] 369 | pub struct FileSnapshot {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 370 |     pub message_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 371 |     pub timestamp: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileSnapshot` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `backup_file_name` and `backup_time` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 377 | pub struct FileBackup {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 378 |     pub backup_file_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 379 |     pub version: i64,
[INFO] [stdout] 380 |     pub backup_time: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileBackup` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timestamp` and `session_id` are never read
[INFO] [stdout]    --> src/transcript/mod.rs:391:9
[INFO] [stdout]     |
[INFO] [stdout] 389 | pub struct QueueOperationEntry {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] 390 |     pub operation: String,
[INFO] [stdout] 391 |     pub timestamp: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 392 |     pub session_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QueueOperationEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/transcript/mod.rs:411:9
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub struct SystemEntry {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub is_sidechain: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 412 |     #[serde(default)]
[INFO] [stdout] 413 |     pub user_type: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 414 |     #[serde(default)]
[INFO] [stdout] 415 |     pub cwd: String,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 416 |     #[serde(default)]
[INFO] [stdout] 417 |     pub session_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 418 |     #[serde(default)]
[INFO] [stdout] 419 |     pub timestamp: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 420 |     #[serde(default)]
[INFO] [stdout] 421 |     pub version: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 422 |     #[serde(default)]
[INFO] [stdout] 423 |     pub git_branch: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 424 |     #[serde(default)]
[INFO] [stdout] 425 |     pub slug: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |     pub is_meta: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SystemEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `suggestion_type` and `tool` are never read
[INFO] [stdout]   --> src/types/mod.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct PermissionSuggestion {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout] 74 |     #[serde(rename = "type")]
[INFO] [stdout] 75 |     pub suggestion_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 76 |     #[serde(default)]
[INFO] [stdout] 77 |     pub tool: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PermissionSuggestion` 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 `model` and `agent_type` are never read
[INFO] [stdout]   --> src/types/mod.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct SessionStartInput {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub model: Option<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 89 |     #[serde(default)]
[INFO] [stdout] 90 |     pub agent_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SessionStartInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tool_use_id` is never read
[INFO] [stdout]    --> src/types/mod.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct PreToolUseInput {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub tool_use_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PreToolUseInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tool_name`, `tool_input`, and `permission_suggestions` are never read
[INFO] [stdout]    --> src/types/mod.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct PermissionRequestInput {
[INFO] [stdout]     |            ---------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub tool_name: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 114 |     pub tool_input: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 115 |     #[serde(default)]
[INFO] [stdout] 116 |     pub permission_suggestions: Option<Vec<PermissionSuggestion>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PermissionRequestInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tool_name`, `tool_input`, `tool_use_id`, `error`, and `is_interrupt` are never read
[INFO] [stdout]    --> src/types/mod.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub struct PostToolUseFailureInput {
[INFO] [stdout]     |            ----------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub tool_name: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 134 |     pub tool_input: serde_json::Value,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 135 |     pub tool_use_id: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 136 |     pub error: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 137 |     #[serde(default)]
[INFO] [stdout] 138 |     pub is_interrupt: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PostToolUseFailureInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `message`, `title`, and `notification_type` are never read
[INFO] [stdout]    --> src/types/mod.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub struct NotificationInput {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub message: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 146 |     #[serde(default)]
[INFO] [stdout] 147 |     pub title: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 148 |     pub notification_type: NotificationType,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NotificationInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `agent_id` and `agent_type` are never read
[INFO] [stdout]    --> src/types/mod.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub struct SubagentStartInput {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 155 |     pub agent_id: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 156 |     pub agent_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SubagentStartInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `stop_hook_active`, `agent_id`, `agent_type`, and `agent_transcript_path` are never read
[INFO] [stdout]    --> src/types/mod.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub struct SubagentStopInput {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub stop_hook_active: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 164 |     pub agent_id: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 165 |     pub agent_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 166 |     pub agent_transcript_path: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SubagentStopInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stop_hook_active` is never read
[INFO] [stdout]    --> src/types/mod.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub struct StopInput {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub stop_hook_active: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StopInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `teammate_name` and `team_name` are never read
[INFO] [stdout]    --> src/types/mod.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub struct TeammateIdleInput {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub teammate_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 181 |     pub team_name: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TeammateIdleInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `task_id`, `task_subject`, `task_description`, `teammate_name`, and `team_name` are never read
[INFO] [stdout]    --> src/types/mod.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub struct TaskCompletedInput {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub task_id: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 189 |     pub task_subject: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 190 |     #[serde(default)]
[INFO] [stdout] 191 |     pub task_description: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 192 |     #[serde(default)]
[INFO] [stdout] 193 |     pub teammate_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 194 |     #[serde(default)]
[INFO] [stdout] 195 |     pub team_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TaskCompletedInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `trigger` and `custom_instructions` are never read
[INFO] [stdout]    --> src/types/mod.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub struct PreCompactInput {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 202 |     pub trigger: CompactTrigger,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 203 |     pub custom_instructions: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PreCompactInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `reason` is never read
[INFO] [stdout]    --> src/types/mod.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct SessionEndInput {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub reason: SessionEndReason,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SessionEndInput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:267:10
[INFO] [stdout]     |
[INFO] [stdout] 267 |     Read(ReadToolInput),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 267 -     Read(ReadToolInput),
[INFO] [stdout] 267 +     Read(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:268:10
[INFO] [stdout]     |
[INFO] [stdout] 268 |     Glob(GlobToolInput),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 268 -     Glob(GlobToolInput),
[INFO] [stdout] 268 +     Glob(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:269:10
[INFO] [stdout]     |
[INFO] [stdout] 269 |     Grep(GrepToolInput),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 269 -     Grep(GrepToolInput),
[INFO] [stdout] 269 +     Grep(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:270:14
[INFO] [stdout]     |
[INFO] [stdout] 270 |     WebFetch(WebFetchToolInput),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 270 -     WebFetch(WebFetchToolInput),
[INFO] [stdout] 270 +     WebFetch(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:271:15
[INFO] [stdout]     |
[INFO] [stdout] 271 |     WebSearch(WebSearchToolInput),
[INFO] [stdout]     |     --------- ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 271 -     WebSearch(WebSearchToolInput),
[INFO] [stdout] 271 +     WebSearch(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/types/mod.rs:272:10
[INFO] [stdout]     |
[INFO] [stdout] 272 |     Task(TaskToolInput),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 272 -     Task(TaskToolInput),
[INFO] [stdout] 272 +     Task(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `tool_call` is never used
[INFO] [stdout]    --> src/types/mod.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 287 | impl PostToolUseInput {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 288 |     /// Parse `tool_name` + `tool_input` into a typed `ToolCall`.
[INFO] [stdout] 289 |     pub fn tool_call(&self) -> Result<ToolCall, serde_json::Error> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `file_path`, `offset`, and `limit` are never read
[INFO] [stdout]    --> src/types/mod.rs:347:9
[INFO] [stdout]     |
[INFO] [stdout] 346 | pub struct ReadToolInput {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 347 |     pub file_path: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 348 |     #[serde(default)]
[INFO] [stdout] 349 |     pub offset: Option<u64>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 350 |     #[serde(default)]
[INFO] [stdout] 351 |     pub limit: Option<u64>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ReadToolInput` 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 `pattern` and `path` are never read
[INFO] [stdout]    --> src/types/mod.rs:356:9
[INFO] [stdout]     |
[INFO] [stdout] 355 | pub struct GlobToolInput {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 356 |     pub pattern: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 357 |     #[serde(default)]
[INFO] [stdout] 358 |     pub path: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GlobToolInput` 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 `path`, `glob`, and `output_mode` are never read
[INFO] [stdout]    --> src/types/mod.rs:365:9
[INFO] [stdout]     |
[INFO] [stdout] 362 | pub struct GrepToolInput {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 365 |     pub path: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 366 |     #[serde(default)]
[INFO] [stdout] 367 |     pub glob: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 368 |     #[serde(default)]
[INFO] [stdout] 369 |     pub output_mode: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GrepToolInput` 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 `url` and `prompt` are never read
[INFO] [stdout]    --> src/types/mod.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 377 | pub struct WebFetchToolInput {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 378 |     pub url: String,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 379 |     pub prompt: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WebFetchToolInput` 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 `query`, `allowed_domains`, and `blocked_domains` are never read
[INFO] [stdout]    --> src/types/mod.rs:384:9
[INFO] [stdout]     |
[INFO] [stdout] 383 | pub struct WebSearchToolInput {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] 384 |     pub query: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 385 |     #[serde(default)]
[INFO] [stdout] 386 |     pub allowed_domains: Option<Vec<String>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 387 |     #[serde(default)]
[INFO] [stdout] 388 |     pub blocked_domains: Option<Vec<String>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WebSearchToolInput` 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 `prompt`, `description`, `subagent_type`, and `model` are never read
[INFO] [stdout]    --> src/types/mod.rs:393:9
[INFO] [stdout]     |
[INFO] [stdout] 392 | pub struct TaskToolInput {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 393 |     pub prompt: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 394 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 395 |     pub subagent_type: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 396 |     #[serde(default)]
[INFO] [stdout] 397 |     pub model: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TaskToolInput` 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: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/transcript/mod.rs:602:80
[INFO] [stdout]     |
[INFO] [stdout] 602 |     pub fn turn<'a>(&'a self, tail: &'a str, prompt_uuid: Option<&str>) -> Vec<&TranscriptEntry> {
[INFO] [stdout]     |                      --              -- the lifetime is named here             ^^^^^^^^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 602 |     pub fn turn<'a>(&'a self, tail: &'a str, prompt_uuid: Option<&str>) -> Vec<&'a TranscriptEntry> {
[INFO] [stdout]     |                                                                                 ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6m 15s
[INFO] running `Command { std: "docker" "inspect" "988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6", kill_on_drop: false }`
[INFO] [stdout] 988ee896c4f7a2609c29e1506cfa54416e2e21aa558ede4a5f55250674d4e5d6
