[INFO] cloning repository https://github.com/matt-meridian7/m7-lantern-code
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/matt-meridian7/m7-lantern-code" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-meridian7%2Fm7-lantern-code", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-meridian7%2Fm7-lantern-code'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 901d2b798bf6fcc96d6525317738fbbfbaadde5b
[INFO] checking matt-meridian7/m7-lantern-code against f10db292a3733b5c67c8da8c7661195ff4b05774 for pr-158914
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-meridian7%2Fm7-lantern-code" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  29% (3667/12607)
Updating files:  30% (3783/12607)
Updating files:  31% (3909/12607)
Updating files:  32% (4035/12607)
Updating files:  33% (4161/12607)
Updating files:  34% (4287/12607)
Updating files:  35% (4413/12607)
Updating files:  36% (4539/12607)
Updating files:  37% (4665/12607)
Updating files:  37% (4785/12607)
Updating files:  38% (4791/12607)
Updating files:  39% (4917/12607)
Updating files:  40% (5043/12607)
Updating files:  41% (5169/12607)
Updating files:  42% (5295/12607)
Updating files:  42% (5310/12607)
Updating files:  43% (5422/12607)
Updating files:  44% (5548/12607)
Updating files:  45% (5674/12607)
Updating files:  46% (5800/12607)
Updating files:  47% (5926/12607)
Updating files:  48% (6052/12607)
Updating files:  49% (6178/12607)
Updating files:  49% (6203/12607)
Updating files:  50% (6304/12607)
Updating files:  51% (6430/12607)
Updating files:  52% (6556/12607)
Updating files:  53% (6682/12607)
Updating files:  54% (6808/12607)
Updating files:  55% (6934/12607)
Updating files:  56% (7060/12607)
Updating files:  56% (7115/12607)
Updating files:  57% (7186/12607)
Updating files:  58% (7313/12607)
Updating files:  58% (7325/12607)
Updating files:  59% (7439/12607)
Updating files:  59% (7454/12607)
Updating files:  60% (7565/12607)
Updating files:  60% (7657/12607)
Updating files:  61% (7691/12607)
Updating files:  61% (7769/12607)
Updating files:  62% (7817/12607)
Updating files:  62% (7840/12607)
Updating files:  62% (7888/12607)
Updating files:  63% (7943/12607)
Updating files:  63% (7998/12607)
Updating files:  64% (8069/12607)
Updating files:  65% (8195/12607)
Updating files:  66% (8321/12607)
Updating files:  67% (8447/12607)
Updating files:  68% (8573/12607)
Updating files:  69% (8699/12607)
Updating files:  70% (8825/12607)
Updating files:  71% (8951/12607)
Updating files:  72% (9078/12607)
Updating files:  72% (9082/12607)
Updating files:  73% (9204/12607)
Updating files:  74% (9330/12607)
Updating files:  74% (9432/12607)
Updating files:  75% (9456/12607)
Updating files:  76% (9582/12607)
Updating files:  77% (9708/12607)
Updating files:  77% (9725/12607)
Updating files:  78% (9834/12607)
Updating files:  79% (9960/12607)
Updating files:  79% (9985/12607)
Updating files:  80% (10086/12607)
Updating files:  81% (10212/12607)
Updating files:  81% (10226/12607)
Updating files:  82% (10338/12607)
Updating files:  83% (10464/12607)
Updating files:  84% (10590/12607)
Updating files:  85% (10716/12607)
Updating files:  86% (10843/12607)
Updating files:  87% (10969/12607)
Updating files:  88% (11095/12607)
Updating files:  89% (11221/12607)
Updating files:  90% (11347/12607)
Updating files:  91% (11473/12607)
Updating files:  92% (11599/12607)
Updating files:  93% (11725/12607)
Updating files:  94% (11851/12607)
Updating files:  94% (11930/12607)
Updating files:  95% (11977/12607)
Updating files:  95% (12075/12607)
Updating files:  96% (12103/12607)
Updating files:  97% (12229/12607)
Updating files:  97% (12267/12607)
Updating files:  98% (12355/12607)
Updating files:  98% (12365/12607)
Updating files:  99% (12481/12607)
Updating files: 100% (12607/12607)
Updating files: 100% (12607/12607), done.
[INFO] started tweaking git repo https://github.com/matt-meridian7/m7-lantern-code
[INFO] finished tweaking git repo https://github.com/matt-meridian7/m7-lantern-code
[INFO] tweaked toml for git repo https://github.com/matt-meridian7/m7-lantern-code written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/matt-meridian7/m7-lantern-code on toolchain f10db292a3733b5c67c8da8c7661195ff4b05774
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/matt-meridian7/m7-lantern-code already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691
[INFO] running `Command { std: "docker" "start" "581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691", 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" "581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691" "/opt/rustwide/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691", 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" "581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691" "/opt/rustwide/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling crc-catalog v2.5.0
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]     Checking tokio v1.52.3
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]    Compiling crc v3.4.0
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking either v1.16.0
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking pin-project v1.1.13
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking prost v0.13.5
[INFO] [stderr]     Checking dashmap v6.2.1
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking uuid v1.23.1
[INFO] [stderr]     Checking hostname v0.4.2
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]     Checking h2 v0.4.14
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking tokio-test v0.4.5
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]    Compiling sqlx-sqlite v0.8.6
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]     Checking hyper-timeout v0.5.2
[INFO] [stderr]     Checking tonic v0.12.3
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking lantern v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::os::unix::process::CommandExt`
[INFO] [stdout]   --> tests/cli.rs:90:13
[INFO] [stdout]    |
[INFO] [stdout] 90 |         use std::os::unix::process::CommandExt;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeliverResult`, `TranscriptResult`, and `ValidationResult`
[INFO] [stdout]  --> src/temporal/mod.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use activities::{DeliverResult, TranscriptResult, ValidationResult};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `client::TemporalGrpcClient`
[INFO] [stdout]  --> src/temporal/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use client::TemporalGrpcClient;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/temporal/mod.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{error, info};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AgentQueues` and `QueueManager`
[INFO] [stdout]  --> src/queue/mod.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use manager::{AgentQueues, QueueManager};
[INFO] [stdout]   |                   ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `priority::compare_priority`
[INFO] [stdout]  --> src/queue/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use priority::compare_priority;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `scheduler::Scheduler`
[INFO] [stdout]  --> src/queue/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use scheduler::Scheduler;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeliverResult`, `TranscriptResult`, and `ValidationResult`
[INFO] [stdout]  --> src/temporal/mod.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use activities::{DeliverResult, TranscriptResult, ValidationResult};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `client::TemporalGrpcClient`
[INFO] [stdout]  --> src/temporal/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use client::TemporalGrpcClient;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/temporal/mod.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{error, info};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WorkItem`
[INFO] [stdout]    --> src/queue/scheduler.rs:120:31
[INFO] [stdout]     |
[INFO] [stdout] 120 |     use crate::types::{Agent, WorkItem};
[INFO] [stdout]     |                               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AgentQueues` and `QueueManager`
[INFO] [stdout]  --> src/queue/mod.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use manager::{AgentQueues, QueueManager};
[INFO] [stdout]   |                   ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `priority::compare_priority`
[INFO] [stdout]  --> src/queue/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use priority::compare_priority;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `scheduler::Scheduler`
[INFO] [stdout]  --> src/queue/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use scheduler::Scheduler;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/temporal/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     mut shutdown: tokio::sync::watch::Receiver<bool>,
[INFO] [stdout]    |     ----^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/temporal/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     mut shutdown: tokio::sync::watch::Receiver<bool>,
[INFO] [stdout]    |     ----^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AgentStatus` is never used
[INFO] [stdout]  --> src/types.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum AgentStatus {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WorkItemStatus` is never used
[INFO] [stdout]   --> src/types.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum WorkItemStatus {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AgentLoad` is never constructed
[INFO] [stdout]    --> src/types.rs:177:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub struct AgentLoad {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `insert_lease` is never used
[INFO] [stdout]   --> src/db/queries.rs:83:14
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub async fn insert_lease(pool: &SqlitePool, lease: &Lease) -> anyhow::Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_active_work_for_agent` is never used
[INFO] [stdout]    --> src/db/queries.rs:204:14
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub async fn get_active_work_for_agent(pool: &SqlitePool, agent_id: &str) -> anyhow::Result<Vec<WorkItem>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignalWorkflowExecutionRequest` is never constructed
[INFO] [stdout]    --> src/temporal/client.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct SignalWorkflowExecutionRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignalWorkflowExecutionResponse` is never constructed
[INFO] [stdout]    --> src/temporal/client.rs:147:12
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct SignalWorkflowExecutionResponse {}
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `signal_workflow_execution` is never used
[INFO] [stdout]    --> src/temporal/client.rs:214:18
[INFO] [stdout]     |
[INFO] [stdout] 157 | impl TemporalGrpcClient {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub async fn signal_workflow_execution(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `workflow_id_for_session` is never used
[INFO] [stdout]  --> src/temporal/signals.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn workflow_id_for_session(session_id: &str) -> String {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_signal` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | async fn send_signal(
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_assignment_acked` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub async fn signal_assignment_acked(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_assignment_completed` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:57:14
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub async fn signal_assignment_completed(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_assignment_blocked` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub async fn signal_assignment_blocked(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_assignment_stale` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:91:14
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub async fn signal_assignment_stale(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_agent_recovered` is never used
[INFO] [stdout]    --> src/temporal/signals.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub async fn signal_agent_recovered(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kill_session` is never used
[INFO] [stdout]   --> src/tmux/session.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub async fn kill_session(name: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capture_pane` is never used
[INFO] [stdout]    --> src/tmux/pane.rs:115:14
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub async fn capture_pane(pane_id: &str) -> Result<String> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_squad_layout` is never used
[INFO] [stdout]   --> src/tmux/layout.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub async fn create_squad_layout(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_pane` is never used
[INFO] [stdout]    --> src/tmux/layout.rs:122:10
[INFO] [stdout]     |
[INFO] [stdout] 122 | async fn split_pane(pane_id: &str, direction: &str, percent: Option<u8>) -> Result<String> {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeliveryOrchestrator` is never constructed
[INFO] [stdout]   --> src/delivery/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct DeliveryOrchestrator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `deliver` are never used
[INFO] [stdout]   --> src/delivery/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl DeliveryOrchestrator {
[INFO] [stdout]    | ------------------------- associated items in this implementation
[INFO] [stdout] 26 |     pub fn new(pool: SqlitePool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub async fn deliver(&self, assignment: &Assignment, agent: &Agent) -> anyhow::Result<()> {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist_assignment` is never used
[INFO] [stdout]  --> src/delivery/persist.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub async fn persist_assignment(pool: &SqlitePool, assignment: &Assignment) -> anyhow::Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ACTIVE_LEASES` is never used
[INFO] [stdout]  --> src/delivery/lease.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | static ACTIVE_LEASES: Lazy<DashMap<String, (String, i64)>> = Lazy::new(DashMap::new);
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `GENERATIONS` is never used
[INFO] [stdout]   --> src/delivery/lease.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | static GENERATIONS: Lazy<DashMap<String, AtomicI64>> = Lazy::new(DashMap::new);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_lease` is never used
[INFO] [stdout]   --> src/delivery/lease.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn generate_lease(work_item_id: &str, agent_id: &str) -> Lease {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_lease` is never used
[INFO] [stdout]   --> src/delivery/lease.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn validate_lease(agent_id: &str, assignment_id: &str, generation: i64) -> anyhow::Result<bool> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `increment_generation` is never used
[INFO] [stdout]   --> src/delivery/lease.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn increment_generation(agent_id: &str) -> i64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_active_md` is never used
[INFO] [stdout]  --> src/delivery/active_md.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn write_active_md(agent: &Agent, assignment: &Assignment, lease: &Lease) -> anyhow::Result<PathBuf> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inject_assignment_notice` is never used
[INFO] [stdout]  --> src/delivery/inject.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub async fn inject_assignment_notice(pane_id: &str, assignment_id: &str) -> anyhow::Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PendingAck` is never constructed
[INFO] [stdout]   --> src/delivery/ack.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct PendingAck {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PENDING_ACKS` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub static PENDING_ACKS: Lazy<DashMap<String, PendingAck>> = Lazy::new(DashMap::new);
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `register_pending_ack` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn register_pending_ack(assignment_id: &str, agent_id: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `start_ack_timer` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:33:14
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub async fn start_ack_timer(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `retry_injection` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:64:14
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub async fn retry_injection(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_ack_received` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn check_ack_received(assignment_id: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mark_ack_received` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn mark_ack_received(assignment_id: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_stale_assignments` is never used
[INFO] [stdout]  --> src/delivery/stale.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn check_stale_assignments(pool: &SqlitePool) -> anyhow::Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active` is never read
[INFO] [stdout]   --> src/queue/manager.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct AgentQueues {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 12 |     pub active: Option<WorkItem>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AgentQueues` 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_pending`, `role_urgent`, `role_deferred`, and `max_depth` are never read
[INFO] [stdout]   --> src/queue/manager.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct QueueManager {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 35 |     role_pending: DashMap<String, VecDeque<WorkItem>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 36 |     role_urgent: DashMap<String, VecDeque<WorkItem>>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 37 |     role_deferred: DashMap<String, VecDeque<WorkItem>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 38 |     agent_queues: DashMap<String, AgentQueues>,
[INFO] [stdout] 39 |     max_depth: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QueueManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `enqueue`, `dequeue`, `urgent_enqueue`, and `defer` are never used
[INFO] [stdout]    --> src/queue/manager.rs:58:12
[INFO] [stdout]     |
[INFO] [stdout]  42 | impl QueueManager {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn enqueue(&self, work_item: WorkItem) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn dequeue(&self, role: &str) -> Option<WorkItem> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn urgent_enqueue(&self, work_item: WorkItem) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn defer(&self, work_item: WorkItem) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_load` is never used
[INFO] [stdout]   --> src/queue/scheduler.rs:83:18
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Scheduler {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub async fn calculate_load(&self, agent_id: &str) -> Result<AgentLoad> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `QUEUED_INJECTIONS` is never used
[INFO] [stdout]   --> src/human/mod.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | static QUEUED_INJECTIONS: OnceCell<DashMap<String, Vec<String>>> = OnceCell::new();
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `queued_injections` is never used
[INFO] [stdout]   --> src/human/mod.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) fn queued_injections() -> &'static DashMap<String, Vec<String>> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recover_agent` is never used
[INFO] [stdout]   --> src/human/commands.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub async fn recover_agent(agent_id: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_human_active` is never used
[INFO] [stdout]   --> src/human/detect.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn is_human_active(agent_id: &str) -> Result<bool> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_keyboard_activity` is never used
[INFO] [stdout]   --> src/human/detect.rs:24:14
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub async fn detect_keyboard_activity(pane_id: &str) -> Result<bool> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_takeover_flag` is never used
[INFO] [stdout]   --> src/human/detect.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn check_takeover_flag(agent_id: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `can_inject` is never used
[INFO] [stdout]   --> src/human/safety.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub async fn can_inject(agent_id: &str) -> Result<bool> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_inject` is never used
[INFO] [stdout]   --> src/human/safety.rs:41:14
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub async fn safe_inject(agent_id: &str, message: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `relaunch_agent` is never used
[INFO] [stdout]  --> src/recovery/agent.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn relaunch_agent(agent: &Agent, pane_id: &str) -> Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_agent_command` is never used
[INFO] [stdout]   --> src/recovery/agent.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn build_agent_command(agent_kind: &str, role: &str, session: &str) -> Vec<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inject_recovery_context` is never used
[INFO] [stdout]   --> src/recovery/context.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub async fn inject_recovery_context(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capture_transcript_before_death` is never used
[INFO] [stdout]   --> src/recovery/transcript.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub async fn capture_transcript_before_death(pool: &SqlitePool, agent_id: &str) -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `store_transcript` is never used
[INFO] [stdout]   --> src/recovery/transcript.rs:45:14
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub async fn store_transcript(pool: &SqlitePool, agent_id: &str, content: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AgentLoad` is never constructed
[INFO] [stdout]    --> src/types.rs:177:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub struct AgentLoad {
[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 `get_active_work_for_agent` is never used
[INFO] [stdout]    --> src/db/queries.rs:204:14
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub async fn get_active_work_for_agent(pool: &SqlitePool, agent_id: &str) -> anyhow::Result<Vec<WorkItem>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignalWorkflowExecutionRequest` is never constructed
[INFO] [stdout]    --> src/temporal/client.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct SignalWorkflowExecutionRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignalWorkflowExecutionResponse` is never constructed
[INFO] [stdout]    --> src/temporal/client.rs:147:12
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct SignalWorkflowExecutionResponse {}
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `signal_workflow_execution` is never used
[INFO] [stdout]    --> src/temporal/client.rs:214:18
[INFO] [stdout]     |
[INFO] [stdout] 157 | impl TemporalGrpcClient {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub async fn signal_workflow_execution(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `workflow_id_for_session` is never used
[INFO] [stdout]  --> src/temporal/signals.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn workflow_id_for_session(session_id: &str) -> String {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_signal` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | async fn send_signal(
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_assignment_acked` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub async fn signal_assignment_acked(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_assignment_completed` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:57:14
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub async fn signal_assignment_completed(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_assignment_blocked` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub async fn signal_assignment_blocked(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_assignment_stale` is never used
[INFO] [stdout]   --> src/temporal/signals.rs:91:14
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub async fn signal_assignment_stale(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `signal_agent_recovered` is never used
[INFO] [stdout]    --> src/temporal/signals.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub async fn signal_agent_recovered(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kill_session` is never used
[INFO] [stdout]   --> src/tmux/session.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub async fn kill_session(name: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capture_pane` is never used
[INFO] [stdout]    --> src/tmux/pane.rs:115:14
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub async fn capture_pane(pane_id: &str) -> Result<String> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_squad_layout` is never used
[INFO] [stdout]   --> src/tmux/layout.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub async fn create_squad_layout(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_pane` is never used
[INFO] [stdout]    --> src/tmux/layout.rs:122:10
[INFO] [stdout]     |
[INFO] [stdout] 122 | async fn split_pane(pane_id: &str, direction: &str, percent: Option<u8>) -> Result<String> {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeliveryOrchestrator` is never constructed
[INFO] [stdout]   --> src/delivery/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct DeliveryOrchestrator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `deliver` are never used
[INFO] [stdout]   --> src/delivery/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl DeliveryOrchestrator {
[INFO] [stdout]    | ------------------------- associated items in this implementation
[INFO] [stdout] 26 |     pub fn new(pool: SqlitePool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub async fn deliver(&self, assignment: &Assignment, agent: &Agent) -> anyhow::Result<()> {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `persist_assignment` is never used
[INFO] [stdout]  --> src/delivery/persist.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub async fn persist_assignment(pool: &SqlitePool, assignment: &Assignment) -> anyhow::Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_active_md` is never used
[INFO] [stdout]  --> src/delivery/active_md.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn write_active_md(agent: &Agent, assignment: &Assignment, lease: &Lease) -> anyhow::Result<PathBuf> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inject_assignment_notice` is never used
[INFO] [stdout]  --> src/delivery/inject.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub async fn inject_assignment_notice(pane_id: &str, assignment_id: &str) -> anyhow::Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PendingAck` is never constructed
[INFO] [stdout]   --> src/delivery/ack.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct PendingAck {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PENDING_ACKS` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub static PENDING_ACKS: Lazy<DashMap<String, PendingAck>> = Lazy::new(DashMap::new);
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `register_pending_ack` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn register_pending_ack(assignment_id: &str, agent_id: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `start_ack_timer` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:33:14
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub async fn start_ack_timer(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `retry_injection` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:64:14
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub async fn retry_injection(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_ack_received` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub fn check_ack_received(assignment_id: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mark_ack_received` is never used
[INFO] [stdout]   --> src/delivery/ack.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn mark_ack_received(assignment_id: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_stale_assignments` is never used
[INFO] [stdout]  --> src/delivery/stale.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn check_stale_assignments(pool: &SqlitePool) -> anyhow::Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active` is never read
[INFO] [stdout]   --> src/queue/manager.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct AgentQueues {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 12 |     pub active: Option<WorkItem>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AgentQueues` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_load` is never used
[INFO] [stdout]   --> src/queue/scheduler.rs:83:18
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Scheduler {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub async fn calculate_load(&self, agent_id: &str) -> Result<AgentLoad> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `QUEUED_INJECTIONS` is never used
[INFO] [stdout]   --> src/human/mod.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | static QUEUED_INJECTIONS: OnceCell<DashMap<String, Vec<String>>> = OnceCell::new();
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `queued_injections` is never used
[INFO] [stdout]   --> src/human/mod.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) fn queued_injections() -> &'static DashMap<String, Vec<String>> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recover_agent` is never used
[INFO] [stdout]   --> src/human/commands.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub async fn recover_agent(agent_id: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_human_active` is never used
[INFO] [stdout]   --> src/human/detect.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn is_human_active(agent_id: &str) -> Result<bool> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_keyboard_activity` is never used
[INFO] [stdout]   --> src/human/detect.rs:24:14
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub async fn detect_keyboard_activity(pane_id: &str) -> Result<bool> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_takeover_flag` is never used
[INFO] [stdout]   --> src/human/detect.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn check_takeover_flag(agent_id: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `can_inject` is never used
[INFO] [stdout]   --> src/human/safety.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub async fn can_inject(agent_id: &str) -> Result<bool> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_inject` is never used
[INFO] [stdout]   --> src/human/safety.rs:41:14
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub async fn safe_inject(agent_id: &str, message: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `relaunch_agent` is never used
[INFO] [stdout]  --> src/recovery/agent.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn relaunch_agent(agent: &Agent, pane_id: &str) -> Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_agent_command` is never used
[INFO] [stdout]   --> src/recovery/agent.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn build_agent_command(agent_kind: &str, role: &str, session: &str) -> Vec<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `inject_recovery_context` is never used
[INFO] [stdout]   --> src/recovery/context.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub async fn inject_recovery_context(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capture_transcript_before_death` is never used
[INFO] [stdout]   --> src/recovery/transcript.rs:13:14
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub async fn capture_transcript_before_death(pool: &SqlitePool, agent_id: &str) -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `store_transcript` is never used
[INFO] [stdout]   --> src/recovery/transcript.rs:45:14
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub async fn store_transcript(pool: &SqlitePool, agent_id: &str, content: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 54.26s
[INFO] running `Command { std: "docker" "inspect" "581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691", kill_on_drop: false }`
[INFO] [stdout] 581e66993de0553b1001d76b279a66728f43ae28cf38b00d09b4db3fe16b9691
