[INFO] cloning repository https://github.com/Marenz/forge
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Marenz/forge" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarenz%2Fforge", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarenz%2Fforge'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c5c36d1defbbf3f54e4dd4ac9137c362890967d6
[INFO] checking Marenz/forge against try#6757d700f93f6d16c8b39cf79e96b019bd570e7d for pr-155299
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarenz%2Fforge" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Marenz/forge
[INFO] finished tweaking git repo https://github.com/Marenz/forge
[INFO] tweaked toml for git repo https://github.com/Marenz/forge written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Marenz/forge on toolchain 6757d700f93f6d16c8b39cf79e96b019bd570e7d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6757d700f93f6d16c8b39cf79e96b019bd570e7d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Marenz/forge 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" "+6757d700f93f6d16c8b39cf79e96b019bd570e7d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+6757d700f93f6d16c8b39cf79e96b019bd570e7d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e81d5e6158c6902d492b5de5f3d21da88c465226381159c84261366752fc5b15
[INFO] running `Command { std: "docker" "start" "-a" "e81d5e6158c6902d492b5de5f3d21da88c465226381159c84261366752fc5b15", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e81d5e6158c6902d492b5de5f3d21da88c465226381159c84261366752fc5b15", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e81d5e6158c6902d492b5de5f3d21da88c465226381159c84261366752fc5b15", kill_on_drop: false }`
[INFO] [stdout] e81d5e6158c6902d492b5de5f3d21da88c465226381159c84261366752fc5b15
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+6757d700f93f6d16c8b39cf79e96b019bd570e7d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 306c43958b3fb6f27d9ef5b3417c112a1576fa3c9132f3928e5d292c31f092e3
[INFO] running `Command { std: "docker" "start" "-a" "306c43958b3fb6f27d9ef5b3417c112a1576fa3c9132f3928e5d292c31f092e3", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling cranelift-srcgen v0.119.1
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling cc v1.2.57
[INFO] [stderr]    Compiling cranelift-isle v0.119.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.119.1
[INFO] [stderr]     Checking cranelift-bitset v0.119.1
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling target-lexicon v0.13.5
[INFO] [stderr]     Checking bumpalo v3.20.2
[INFO] [stderr]    Compiling cranelift-assembler-x64-meta v0.119.1
[INFO] [stderr]     Checking cranelift-entity v0.119.1
[INFO] [stderr]     Checking arbitrary v1.4.2
[INFO] [stderr]     Checking regalloc2 v0.11.2
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking cranelift-bforest v0.119.1
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.119.1
[INFO] [stderr]     Checking gimli v0.31.1
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling openssl v0.10.76
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]    Compiling cranelift-assembler-x64 v0.119.1
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking cranelift-control v0.119.1
[INFO] [stderr]     Checking ipnet v2.12.0
[INFO] [stderr]     Checking anstyle-parse v1.0.0
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking colorchoice v1.0.5
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking tokio v1.50.0
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking region v3.0.2
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]     Checking wasmtime-jit-icache-coherence v32.0.1
[INFO] [stderr]     Checking errno v0.2.8
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]    Compiling cranelift-codegen v0.119.1
[INFO] [stderr]     Checking exec v0.3.1
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking tungstenite v0.28.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-tungstenite v0.28.0
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking cranelift-frontend v0.119.1
[INFO] [stderr]     Checking cranelift-module v0.119.1
[INFO] [stderr]     Checking cranelift-native v0.119.1
[INFO] [stderr]     Checking cranelift-jit v0.119.1
[INFO] [stderr]     Checking cranelift v0.119.1
[INFO] [stderr]     Checking adapsis v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `EVAL_TIMEOUT_SECS`
[INFO] [stdout]  --> src/api/execute.rs:8:68
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::{AppConfig, MutationResult, TestCaseResult, WorkingSet, EVAL_TIMEOUT_SECS};
[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: `AgentCompletionCallback` and `CodeExecutionResult`
[INFO] [stdout]   --> src/api/mod.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     CodeExecutionResult,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 35 |     AgentCompletionCallback,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EVAL_TIMEOUT_SECS`
[INFO] [stdout]  --> src/api/execute.rs:8:68
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::{AppConfig, MutationResult, TestCaseResult, WorkingSet, EVAL_TIMEOUT_SECS};
[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: `AgentCompletionCallback`
[INFO] [stdout]   --> src/api/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     AgentCompletionCallback,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]     --> src/vm.rs:1187:9
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     use std::sync::Arc;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]    --> src/session.rs:524:33
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   let sender = sender.clone();
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `call`
[INFO] [stdout]    --> src/eval/mod.rs:866:13
[INFO] [stdout]     |
[INFO] [stdout] 866 |         let call = ast::CallExpr {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_call`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `io_sender`
[INFO] [stdout]     --> src/eval/mod.rs:1349:17
[INFO] [stdout]      |
[INFO] [stdout] 1349 |             let io_sender = runtime.io_sender();
[INFO] [stdout]      |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_io_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/eval/mod.rs:2176:32
[INFO] [stdout]      |
[INFO] [stdout] 2176 |                 let (reply_tx, mut reply_rx) = tokio::sync::oneshot::channel();
[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: unused variable: `dot_pos`
[INFO] [stdout]    --> src/validator.rs:145:29
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 if let Some(dot_pos) = target.find('.') {
[INFO] [stdout]     |                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dot_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lib_errors` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:1573:25
[INFO] [stdout]      |
[INFO] [stdout] 1573 |                     let mut lib_errors = 0usize;
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_lib_errors` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `lib_errors` is never read
[INFO] [stdout]     --> src/main.rs:1577:29
[INFO] [stdout]      |
[INFO] [stdout] 1577 | ...                   lib_errors += 1;
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]    --> src/session.rs:524:33
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   let sender = sender.clone();
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVAL_TIMEOUT_SECS` is never used
[INFO] [stdout]   --> src/api/mod.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) const EVAL_TIMEOUT_SECS: u64 = 120;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ok_silent` is never used
[INFO] [stdout]    --> src/api/execute.rs:154:19
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl OperationResult {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub(super) fn ok_silent(&self, msg: impl Into<String>) {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_activity` is never used
[INFO] [stdout]    --> src/api/llm_handlers.rs:144:10
[INFO] [stdout]     |
[INFO] [stdout] 144 | async fn log_activity(
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InternedName` is never used
[INFO] [stdout]   --> src/ast.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub type InternedName = crate::intern::InternedId;
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_file`, `is_empty`, and `mime_from_extension` are never used
[INFO] [stdout]   --> src/attachment.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Attachment {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn from_file(path: PathBuf, mime_type: impl Into<String>, name: impl Into<String>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub fn mime_from_extension(name: &str) -> &'static str {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `category` is never read
[INFO] [stdout]   --> src/builtins.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct Builtin {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub category: BuiltinCategory,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `all_builtin_names` is never used
[INFO] [stdout]     --> src/builtins.rs:1396:8
[INFO] [stdout]      |
[INFO] [stdout] 1396 | pub fn all_builtin_names() -> Vec<&'static str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_fully_compilable` is never used
[INFO] [stdout]    --> src/compiler.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn is_fully_compilable(program: &ast::Program) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_mock_with_sender`, `registry`, and `complete_snapshot` are never used
[INFO] [stdout]    --> src/coroutine/mod.rs:762:12
[INFO] [stdout]     |
[INFO] [stdout] 733 | impl CoroutineHandle {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 762 |     pub fn new_mock_with_sender(mocks: Vec<crate::session::IoMock>, io_tx: mpsc::Sender<IoRequest>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 770 |     pub fn registry(&self) -> Option<&TaskRegistry> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 823 |     pub fn complete_snapshot(&self, function_name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `strct`, `as_str`, `as_list`, `as_list_mut`, and `get_field` are never used
[INFO] [stdout]    --> src/eval/mod.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl Value {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn strct(name: impl AsRef<str>, fields: HashMap<String, Value>) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn as_str(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn as_list(&self) -> Option<&[Value]> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn as_list_mut(&mut self) -> Option<&mut Vec<Value>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn get_field(&self, field: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `new_with_interner`, `set_id`, and `get_id` are never used
[INFO] [stdout]    --> src/eval/mod.rs:307:12
[INFO] [stdout]     |
[INFO] [stdout] 306 | impl Env {
[INFO] [stdout]     | -------- associated items in this implementation
[INFO] [stdout] 307 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 327 |     pub fn new_with_interner(interner: &StringInterner) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 |     pub fn set_id(&mut self, id: InternedId, value: Value) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 553 |     fn get_id(&self, id: InternedId) -> Option<&Value> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_vm_eval` is never used
[INFO] [stdout]     --> src/eval/mod.rs:4079:8
[INFO] [stdout]      |
[INFO] [stdout] 4079 | pub fn try_vm_eval(
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_vm_eval_async` is never used
[INFO] [stdout]     --> src/eval/mod.rs:4099:8
[INFO] [stdout]      |
[INFO] [stdout] 4099 | pub fn try_vm_eval_async(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `tool` is never used
[INFO] [stdout]    --> src/llm.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout]  97 | impl ChatMessage {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn tool(content: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `prompt_tokens`, `completion_tokens`, and `total_tokens` are never read
[INFO] [stdout]    --> src/llm.rs:143:9
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub struct LlmOutput {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub prompt_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 144 |     pub completion_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 145 |     pub total_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LlmOutput` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `usage` is never read
[INFO] [stdout]    --> src/llm.rs:892:5
[INFO] [stdout]     |
[INFO] [stdout] 889 | struct ChatCompletionResponse {
[INFO] [stdout]     |        ---------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 892 |     usage: Option<TokenUsage>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChatCompletionResponse` 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 `prompt_tokens`, `completion_tokens`, and `total_tokens` are never read
[INFO] [stdout]    --> src/llm.rs:898:5
[INFO] [stdout]     |
[INFO] [stdout] 896 | struct TokenUsage {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 897 |     #[serde(default)]
[INFO] [stdout] 898 |     prompt_tokens: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 899 |     #[serde(default)]
[INFO] [stdout] 900 |     completion_tokens: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 901 |     #[serde(default)]
[INFO] [stdout] 902 |     total_tokens: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TokenUsage` 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 `with_registries` is never used
[INFO] [stdout]   --> src/orchestrator.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<B: LlmBackend> Orchestrator<B> {
[INFO] [stdout]    | ----------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn with_registries(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_type_expr` is never used
[INFO] [stdout]     --> src/parser.rs:2304:8
[INFO] [stdout]      |
[INFO] [stdout] 2304 | pub fn parse_type_expr(input: &str) -> Result<TypeExpr> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/session.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl FailureHistory {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `task` and `fork_revision` are never read
[INFO] [stdout]    --> src/session.rs:363:9
[INFO] [stdout]     |
[INFO] [stdout] 360 | pub struct AgentBranch {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub task: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 364 |     pub fork_revision: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AgentBranch` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `fork`, `runtime`, `apply`, and `merge_into` are never used
[INFO] [stdout]    --> src/session.rs:375:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | impl AgentBranch {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 374 |     /// Create a new branch forked from the current session state.
[INFO] [stdout] 375 |     pub fn fork(name: &str, scope: AgentScope, task: &str, session: &Session) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 402 |     pub fn runtime(&self) -> &RuntimeState {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 407 |     pub fn apply(&mut self, source: &str) -> Result<Vec<(String, bool)>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 584 |     pub fn merge_into(self, session: &mut Session) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_temporary` and `with_callback` are never used
[INFO] [stdout]    --> src/session.rs:672:12
[INFO] [stdout]     |
[INFO] [stdout] 660 | impl Conversation {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 672 |     pub fn new_temporary() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 679 |     pub fn with_callback(mut self, reply_fn: String, reply_arg: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove`, `prune_temporary`, and `list_contexts` are never used
[INFO] [stdout]    --> src/session.rs:745:12
[INFO] [stdout]     |
[INFO] [stdout] 724 | impl ConversationManager {
[INFO] [stdout]     | ------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 745 |     pub fn remove(&mut self, context: &str) -> Option<Conversation> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 750 |     pub fn prune_temporary(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 755 |     pub fn list_contexts(&self) -> Vec<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/session.rs:771:12
[INFO] [stdout]      |
[INFO] [stdout]  760 | impl Session {
[INFO] [stdout]      | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  771 |     pub fn send_agent_message(&mut self, from: &str, to: &str, content: &str) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  776 |     pub fn drain_messages(&mut self, agent_name: &str) -> Vec<AgentMessage> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  781 |     pub fn peek_messages(&self, agent_name: &str) -> &[AgentMessage] {
[INFO] [stdout]      |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  787 |     pub fn is_function_tested(&self, fn_name: &str) -> bool {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  841 |     pub fn remove_routes_for_handler(&mut self, handler_name: &str) -> Vec<String> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  855 |     pub fn get_routes(&self) -> &[ast::HttpRoute] {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  860 |     pub fn find_route(&self, method: &str, path: &str) -> Option<&ast::HttpRoute> {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1418 |     pub fn parse_operations(&self, source: &str) -> Result<Vec<parser::Operation>> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1423 |     pub fn record_eval(&mut self, function: &str, input: &str, result: &str) {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1428 |     pub fn record_test(
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1439 |     pub fn record_query(&mut self, query: &str, response: &str) {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1444 |     pub fn record_trace(&mut self, function: &str, steps: usize) {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1449 |     pub fn rewind_to(&mut self, target_revision: usize) -> Result<()> {
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_eval` is never used
[INFO] [stdout]     --> src/session.rs:1852:8
[INFO] [stdout]      |
[INFO] [stdout] 1852 | pub fn record_eval(meta: &mut SessionMeta, function: &str, input: &str, result: &str) {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_test` is never used
[INFO] [stdout]     --> src/session.rs:1861:8
[INFO] [stdout]      |
[INFO] [stdout] 1861 | pub fn record_test(meta: &mut SessionMeta, function: &str, passed: usize, failed: usize, details: Vec<String>) {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_query` is never used
[INFO] [stdout]     --> src/session.rs:1871:8
[INFO] [stdout]      |
[INFO] [stdout] 1871 | pub fn record_query(meta: &mut SessionMeta, query: &str, response: &str) {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_trace` is never used
[INFO] [stdout]     --> src/session.rs:1879:8
[INFO] [stdout]      |
[INFO] [stdout] 1879 | pub fn record_trace(meta: &mut SessionMeta, function: &str, steps: usize) {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `roadmap_done` is never used
[INFO] [stdout]     --> src/session.rs:1939:8
[INFO] [stdout]      |
[INFO] [stdout] 1939 | pub fn roadmap_done(roadmap: &mut Vec<RoadmapItem>, n: usize) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_expr_pub` is never used
[INFO] [stdout]     --> src/session.rs:2022:8
[INFO] [stdout]      |
[INFO] [stdout] 2022 | pub fn format_expr_pub(expr: &parser::Expr) -> String {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `empty` and `install_with_interner` are never used
[INFO] [stdout]    --> src/shared_state.rs:166:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl EvalContext {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn empty() -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn install_with_interner(&self, program: &crate::ast::Program) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `BranchIf`, `Dup`, and `MakeList` are never constructed
[INFO] [stdout]    --> src/vm.rs:95:5
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub enum Op {
[INFO] [stdout]     |          -- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  95 |     BranchIf(usize),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     Dup,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     MakeList(usize),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Op` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `function_name` is never read
[INFO] [stdout]    --> src/vm.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct VmState {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 148 |     /// Name of the currently executing function (for diagnostics).
[INFO] [stdout] 149 |     pub function_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VmState` 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 `param_names` and `local_names` are never read
[INFO] [stdout]    --> src/vm.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct CompiledFunction {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub param_names: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 173 |     /// All local variable names in slot order (for debug/inspect).
[INFO] [stdout] 174 |     pub local_names: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CompiledFunction` 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: function `execute` is never used
[INFO] [stdout]    --> src/vm.rs:688:8
[INFO] [stdout]     |
[INFO] [stdout] 688 | pub fn execute(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resume` is never used
[INFO] [stdout]    --> src/vm.rs:727:8
[INFO] [stdout]     |
[INFO] [stdout] 727 | pub fn resume(mut vm_state: VmState, io_result: Value, program: &ast::Program) -> Result<VmResult> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> src/api/tests.rs:712:9
[INFO] [stdout]     |
[INFO] [stdout] 712 |     let res = execute_code(test_code, &config, &mut session, None).await;
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> src/api/tests.rs:748:9
[INFO] [stdout]     |
[INFO] [stdout] 748 |     let res = execute_code(test_code, &config, &mut session, None).await;
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]     --> src/api/tests.rs:1014:18
[INFO] [stdout]      |
[INFO] [stdout] 1014 |     let (router, config) = test_router();
[INFO] [stdout]      |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/api/tests.rs:1442:9
[INFO] [stdout]      |
[INFO] [stdout] 1442 |     let mut session = config.snapshot_working_set().await;
[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: unused variable: `session`
[INFO] [stdout]     --> src/api/tests.rs:1442:9
[INFO] [stdout]      |
[INFO] [stdout] 1442 |     let mut session = config.snapshot_working_set().await;
[INFO] [stdout]      |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `call`
[INFO] [stdout]    --> src/eval/mod.rs:866:13
[INFO] [stdout]     |
[INFO] [stdout] 866 |         let call = ast::CallExpr {
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_call`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `io_sender`
[INFO] [stdout]     --> src/eval/mod.rs:1349:17
[INFO] [stdout]      |
[INFO] [stdout] 1349 |             let io_sender = runtime.io_sender();
[INFO] [stdout]      |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_io_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/eval/mod.rs:2176:32
[INFO] [stdout]      |
[INFO] [stdout] 2176 |                 let (reply_tx, mut reply_rx) = tokio::sync::oneshot::channel();
[INFO] [stdout]      |                                ----^^^^^^^^
[INFO] [stdout]      |                                |
[INFO] [stdout]      |                                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/eval/tests.rs:4174:9
[INFO] [stdout]      |
[INFO] [stdout] 4174 |     let mut env = Env::new();
[INFO] [stdout]      |         ----^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/eval/tests.rs:4203:9
[INFO] [stdout]      |
[INFO] [stdout] 4203 |     let mut program = build_program(source);
[INFO] [stdout]      |         ----^^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/parser.rs:5945:17
[INFO] [stdout]      |
[INFO] [stdout] 5945 |                 model,
[INFO] [stdout]      |                 ^^^^^ help: try ignoring the field: `model: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/parser.rs:5963:17
[INFO] [stdout]      |
[INFO] [stdout] 5963 |                 model,
[INFO] [stdout]      |                 ^^^^^ help: try ignoring the field: `model: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/parser.rs:5981:17
[INFO] [stdout]      |
[INFO] [stdout] 5981 |                 model,
[INFO] [stdout]      |                 ^^^^^ help: try ignoring the field: `model: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ops`
[INFO] [stdout]     --> src/parser.rs:6581:21
[INFO] [stdout]      |
[INFO] [stdout] 6581 |                 let ops = parse("+source add timer(300000) poll -> on_tick");
[INFO] [stdout]      |                     ^^^ help: if this is intentional, prefix it with an underscore: `_ops`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dot_pos`
[INFO] [stdout]    --> src/validator.rs:145:29
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 if let Some(dot_pos) = target.find('.') {
[INFO] [stdout]     |                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dot_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lib_errors` is assigned to, but never used
[INFO] [stdout]     --> src/main.rs:1573:25
[INFO] [stdout]      |
[INFO] [stdout] 1573 |                     let mut lib_errors = 0usize;
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_lib_errors` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `lib_errors` is never read
[INFO] [stdout]     --> src/main.rs:1577:29
[INFO] [stdout]      |
[INFO] [stdout] 1577 | ...                   lib_errors += 1;
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EVAL_TIMEOUT_SECS` is never used
[INFO] [stdout]   --> src/api/mod.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) const EVAL_TIMEOUT_SECS: u64 = 120;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ok_silent` is never used
[INFO] [stdout]    --> src/api/execute.rs:154:19
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl OperationResult {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub(super) fn ok_silent(&self, msg: impl Into<String>) {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_activity` is never used
[INFO] [stdout]    --> src/api/llm_handlers.rs:144:10
[INFO] [stdout]     |
[INFO] [stdout] 144 | async fn log_activity(
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InternedName` is never used
[INFO] [stdout]   --> src/ast.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub type InternedName = crate::intern::InternedId;
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_empty` is never used
[INFO] [stdout]   --> src/attachment.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Attachment {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `registry` and `complete_snapshot` are never used
[INFO] [stdout]    --> src/coroutine/mod.rs:770:12
[INFO] [stdout]     |
[INFO] [stdout] 733 | impl CoroutineHandle {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 770 |     pub fn registry(&self) -> Option<&TaskRegistry> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 823 |     pub fn complete_snapshot(&self, function_name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_vm_eval` is never used
[INFO] [stdout]     --> src/eval/mod.rs:4079:8
[INFO] [stdout]      |
[INFO] [stdout] 4079 | pub fn try_vm_eval(
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_vm_eval_async` is never used
[INFO] [stdout]     --> src/eval/mod.rs:4099:8
[INFO] [stdout]      |
[INFO] [stdout] 4099 | pub fn try_vm_eval_async(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `tool` is never used
[INFO] [stdout]    --> src/llm.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout]  97 | impl ChatMessage {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn tool(content: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `prompt_tokens`, `completion_tokens`, and `total_tokens` are never read
[INFO] [stdout]    --> src/llm.rs:143:9
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub struct LlmOutput {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub prompt_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 144 |     pub completion_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 145 |     pub total_tokens: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LlmOutput` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `usage` is never read
[INFO] [stdout]    --> src/llm.rs:892:5
[INFO] [stdout]     |
[INFO] [stdout] 889 | struct ChatCompletionResponse {
[INFO] [stdout]     |        ---------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 892 |     usage: Option<TokenUsage>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChatCompletionResponse` 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 `prompt_tokens`, `completion_tokens`, and `total_tokens` are never read
[INFO] [stdout]    --> src/llm.rs:898:5
[INFO] [stdout]     |
[INFO] [stdout] 896 | struct TokenUsage {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 897 |     #[serde(default)]
[INFO] [stdout] 898 |     prompt_tokens: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 899 |     #[serde(default)]
[INFO] [stdout] 900 |     completion_tokens: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 901 |     #[serde(default)]
[INFO] [stdout] 902 |     total_tokens: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TokenUsage` 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 `with_registries` is never used
[INFO] [stdout]   --> src/orchestrator.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<B: LlmBackend> Orchestrator<B> {
[INFO] [stdout]    | ----------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn with_registries(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_type_expr` is never used
[INFO] [stdout]     --> src/parser.rs:2304:8
[INFO] [stdout]      |
[INFO] [stdout] 2304 | pub fn parse_type_expr(input: &str) -> Result<TypeExpr> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `task` is never read
[INFO] [stdout]    --> src/session.rs:363:9
[INFO] [stdout]     |
[INFO] [stdout] 360 | pub struct AgentBranch {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub task: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AgentBranch` 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 `runtime` is never used
[INFO] [stdout]    --> src/session.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | impl AgentBranch {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 402 |     pub fn runtime(&self) -> &RuntimeState {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_temporary` is never used
[INFO] [stdout]    --> src/session.rs:672:12
[INFO] [stdout]     |
[INFO] [stdout] 660 | impl Conversation {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 672 |     pub fn new_temporary() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove` and `list_contexts` are never used
[INFO] [stdout]    --> src/session.rs:745:12
[INFO] [stdout]     |
[INFO] [stdout] 724 | impl ConversationManager {
[INFO] [stdout]     | ------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 745 |     pub fn remove(&mut self, context: &str) -> Option<Conversation> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 755 |     pub fn list_contexts(&self) -> Vec<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/session.rs:771:12
[INFO] [stdout]      |
[INFO] [stdout]  760 | impl Session {
[INFO] [stdout]      | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  771 |     pub fn send_agent_message(&mut self, from: &str, to: &str, content: &str) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  776 |     pub fn drain_messages(&mut self, agent_name: &str) -> Vec<AgentMessage> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  781 |     pub fn peek_messages(&self, agent_name: &str) -> &[AgentMessage] {
[INFO] [stdout]      |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  841 |     pub fn remove_routes_for_handler(&mut self, handler_name: &str) -> Vec<String> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  855 |     pub fn get_routes(&self) -> &[ast::HttpRoute] {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  860 |     pub fn find_route(&self, method: &str, path: &str) -> Option<&ast::HttpRoute> {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1418 |     pub fn parse_operations(&self, source: &str) -> Result<Vec<parser::Operation>> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1423 |     pub fn record_eval(&mut self, function: &str, input: &str, result: &str) {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1428 |     pub fn record_test(
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1439 |     pub fn record_query(&mut self, query: &str, response: &str) {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1444 |     pub fn record_trace(&mut self, function: &str, steps: usize) {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1449 |     pub fn rewind_to(&mut self, target_revision: usize) -> Result<()> {
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_eval` is never used
[INFO] [stdout]     --> src/session.rs:1852:8
[INFO] [stdout]      |
[INFO] [stdout] 1852 | pub fn record_eval(meta: &mut SessionMeta, function: &str, input: &str, result: &str) {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_test` is never used
[INFO] [stdout]     --> src/session.rs:1861:8
[INFO] [stdout]      |
[INFO] [stdout] 1861 | pub fn record_test(meta: &mut SessionMeta, function: &str, passed: usize, failed: usize, details: Vec<String>) {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_query` is never used
[INFO] [stdout]     --> src/session.rs:1871:8
[INFO] [stdout]      |
[INFO] [stdout] 1871 | pub fn record_query(meta: &mut SessionMeta, query: &str, response: &str) {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_trace` is never used
[INFO] [stdout]     --> src/session.rs:1879:8
[INFO] [stdout]      |
[INFO] [stdout] 1879 | pub fn record_trace(meta: &mut SessionMeta, function: &str, steps: usize) {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `roadmap_done` is never used
[INFO] [stdout]     --> src/session.rs:1939:8
[INFO] [stdout]      |
[INFO] [stdout] 1939 | pub fn roadmap_done(roadmap: &mut Vec<RoadmapItem>, n: usize) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `empty` and `install_with_interner` are never used
[INFO] [stdout]    --> src/shared_state.rs:166:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl EvalContext {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn empty() -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn install_with_interner(&self, program: &crate::ast::Program) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `BranchIf`, `Dup`, and `MakeList` are never constructed
[INFO] [stdout]    --> src/vm.rs:95:5
[INFO] [stdout]     |
[INFO] [stdout]  21 | pub enum Op {
[INFO] [stdout]     |          -- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  95 |     BranchIf(usize),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     Dup,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     MakeList(usize),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Op` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `function_name` is never read
[INFO] [stdout]    --> src/vm.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct VmState {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 148 |     /// Name of the currently executing function (for diagnostics).
[INFO] [stdout] 149 |     pub function_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VmState` 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: function `resume` is never used
[INFO] [stdout]    --> src/vm.rs:727:8
[INFO] [stdout]     |
[INFO] [stdout] 727 | pub fn resume(mut vm_state: VmState, io_result: Value, program: &ast::Program) -> Result<VmResult> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` in tuple element 1 that must be used
[INFO] [stdout]    --> src/api/tests.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 | /     create_session(
[INFO] [stdout] 183 | |         State(config.clone()),
[INFO] [stdout] 184 | |         Json(CreateSessionRequest {
[INFO] [stdout] 185 | |             session_id: "dup".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 188 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` in tuple element 1 that must be used
[INFO] [stdout]    --> src/api/tests.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 209 | /     create_session(
[INFO] [stdout] 210 | |         State(config.clone()),
[INFO] [stdout] 211 | |         Json(CreateSessionRequest {
[INFO] [stdout] 212 | |             session_id: "to-delete".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 215 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` in tuple element 1 that must be used
[INFO] [stdout]    --> src/api/tests.rs:275:5
[INFO] [stdout]     |
[INFO] [stdout] 275 | /     create_session(
[INFO] [stdout] 276 | |         State(config.clone()),
[INFO] [stdout] 277 | |         Json(CreateSessionRequest {
[INFO] [stdout] 278 | |             session_id: "eval-test".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 281 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` in tuple element 1 that must be used
[INFO] [stdout]    --> src/api/tests.rs:302:5
[INFO] [stdout]     |
[INFO] [stdout] 302 | /     create_session(
[INFO] [stdout] 303 | |         State(config.clone()),
[INFO] [stdout] 304 | |         Json(CreateSessionRequest {
[INFO] [stdout] 305 | |             session_id: "fn-test".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 308 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` that must be used
[INFO] [stdout]    --> src/api/tests.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 | /     session_mutate(
[INFO] [stdout] 312 | |         State(config.clone()),
[INFO] [stdout] 313 | |         axum::extract::Path("fn-test".to_string()),
[INFO] [stdout] 314 | |         Json(MutateRequest {
[INFO] [stdout] ...   |
[INFO] [stdout] 318 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 311 |     let _ = session_mutate(
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` in tuple element 1 that must be used
[INFO] [stdout]    --> src/api/tests.rs:342:5
[INFO] [stdout]     |
[INFO] [stdout] 342 | /     create_session(
[INFO] [stdout] 343 | |         State(config.clone()),
[INFO] [stdout] 344 | |         Json(CreateSessionRequest {
[INFO] [stdout] 345 | |             session_id: "mut-test".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 348 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` in tuple element 1 that must be used
[INFO] [stdout]    --> src/api/tests.rs:394:5
[INFO] [stdout]     |
[INFO] [stdout] 394 | /     create_session(
[INFO] [stdout] 395 | |         State(config.clone()),
[INFO] [stdout] 396 | |         Json(CreateSessionRequest {
[INFO] [stdout] 397 | |             session_id: "session-a".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 400 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` in tuple element 1 that must be used
[INFO] [stdout]    --> src/api/tests.rs:401:5
[INFO] [stdout]     |
[INFO] [stdout] 401 | /     create_session(
[INFO] [stdout] 402 | |         State(config.clone()),
[INFO] [stdout] 403 | |         Json(CreateSessionRequest {
[INFO] [stdout] 404 | |             session_id: "session-b".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 407 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `axum::Json` that must be used
[INFO] [stdout]    --> src/api/tests.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 | /     session_mutate(
[INFO] [stdout] 411 | |         State(config.clone()),
[INFO] [stdout] 412 | |         axum::extract::Path("session-a".to_string()),
[INFO] [stdout] 413 | |         Json(MutateRequest {
[INFO] [stdout] ...   |
[INFO] [stdout] 417 | |     .await;
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 410 |     let _ = session_mutate(
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 06s
[INFO] running `Command { std: "docker" "inspect" "306c43958b3fb6f27d9ef5b3417c112a1576fa3c9132f3928e5d292c31f092e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "306c43958b3fb6f27d9ef5b3417c112a1576fa3c9132f3928e5d292c31f092e3", kill_on_drop: false }`
[INFO] [stdout] 306c43958b3fb6f27d9ef5b3417c112a1576fa3c9132f3928e5d292c31f092e3
