[INFO] cloning repository https://github.com/stickyburn/hyprcode
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/stickyburn/hyprcode" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstickyburn%2Fhyprcode", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstickyburn%2Fhyprcode'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2291995164bc5236ed4c13ba621aaa94e1302afc
[INFO] checking stickyburn/hyprcode against try#1779a8680dcd39c56ed600627cf6742ef07ed78c for pr-149045
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstickyburn%2Fhyprcode" "/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/stickyburn/hyprcode
[INFO] finished tweaking git repo https://github.com/stickyburn/hyprcode
[INFO] tweaked toml for git repo https://github.com/stickyburn/hyprcode written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/stickyburn/hyprcode on toolchain 1779a8680dcd39c56ed600627cf6742ef07ed78c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1779a8680dcd39c56ed600627cf6742ef07ed78c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/stickyburn/hyprcode 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" "+1779a8680dcd39c56ed600627cf6742ef07ed78c" "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" "+1779a8680dcd39c56ed600627cf6742ef07ed78c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0fbc8654411f04985aab12883a4fb2f7ce084ba147de125e63542b9e344b50e6
[INFO] running `Command { std: "docker" "start" "-a" "0fbc8654411f04985aab12883a4fb2f7ce084ba147de125e63542b9e344b50e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0fbc8654411f04985aab12883a4fb2f7ce084ba147de125e63542b9e344b50e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0fbc8654411f04985aab12883a4fb2f7ce084ba147de125e63542b9e344b50e6", kill_on_drop: false }`
[INFO] [stdout] 0fbc8654411f04985aab12883a4fb2f7ce084ba147de125e63542b9e344b50e6
[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" "+1779a8680dcd39c56ed600627cf6742ef07ed78c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ec00f503899bbb5b75692a03699c66d7e47913e68c437f2c653a905e88dcc1dc
[INFO] running `Command { std: "docker" "start" "-a" "ec00f503899bbb5b75692a03699c66d7e47913e68c437f2c653a905e88dcc1dc", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling tree-sitter-language v0.1.7
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling aws-lc-rs v1.16.2
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking openssl-probe v0.2.1
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling openssl v0.10.76
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]     Checking ipnet v2.12.0
[INFO] [stderr]     Checking compression-core v0.4.31
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking compression-codecs v0.4.37
[INFO] [stderr]     Checking compact_str v0.9.0
[INFO] [stderr]     Checking unicode-truncate v2.0.1
[INFO] [stderr]     Checking kasuari v0.4.12
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]     Checking num-conv v0.2.1
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking line-clipping v0.3.7
[INFO] [stderr]     Checking pxfm v0.1.28
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]     Checking png v0.18.1
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling serde_with_macros v3.18.0
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]     Checking streaming-iterator v0.1.9
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]     Checking tokio v1.51.1
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]     Checking str_indices v0.4.4
[INFO] [stderr]     Checking etcetera v0.9.0
[INFO] [stderr]     Checking ropey v1.6.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking ratatui-core v0.1.0
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking eventsource-stream v0.2.3
[INFO] [stderr]     Checking strum v0.28.0
[INFO] [stderr]     Checking serde_with v3.18.0
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking uuid v1.23.0
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling aws-lc-sys v0.39.1
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]    Compiling libsqlite3-sys v0.31.0
[INFO] [stderr]    Compiling tree-sitter-python v0.25.0
[INFO] [stderr]    Compiling tree-sitter-go v0.25.0
[INFO] [stderr]    Compiling tree-sitter-typescript v0.23.2
[INFO] [stderr]    Compiling tree-sitter-md v0.5.3
[INFO] [stderr]    Compiling tree-sitter-rust v0.24.2
[INFO] [stderr]     Checking value-ext v0.1.3
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tree-sitter v0.26.8
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking async-compression v0.4.41
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking ratatui-widgets v0.3.0
[INFO] [stderr]     Checking tracing-appender v0.2.4
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking tree-sitter-highlight v0.26.8
[INFO] [stderr]     Checking ratatui-macros v0.7.0
[INFO] [stderr]     Checking ratatui v0.30.0
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking rusqlite v0.33.0
[INFO] [stderr]     Checking rustls-webpki v0.103.11
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking reqwest v0.13.2
[INFO] [stderr]     Checking genai v0.6.0-beta.16
[INFO] [stderr]     Checking hyprcode v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/llm/models.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[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: `SplashView` and `TimelineView`
[INFO] [stdout]   --> src/ui/mod.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use timeline::{SplashView, TimelineView};
[INFO] [stdout]    |                    ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyModifiers`
[INFO] [stdout]    --> src/editor/mod.rs:403:47
[INFO] [stdout]     |
[INFO] [stdout] 403 |     use crossterm::event::{KeyCode, KeyEvent, KeyModifiers};
[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: `std::sync::Arc`
[INFO] [stdout]  --> src/llm/models.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SplashView` and `TimelineView`
[INFO] [stdout]   --> src/ui/mod.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use timeline::{SplashView, TimelineView};
[INFO] [stdout]    |                    ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event_tx`
[INFO] [stdout]    --> src/app/spawn.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let event_tx = self.event_tx.clone();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_event_tx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event_tx`
[INFO] [stdout]    --> src/app/spawn.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let event_tx = self.event_tx.clone();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_event_tx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_start` is never read
[INFO] [stdout]   --> src/syntax/mod.rs:89:21
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     current_start = start;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 93 |                         current_start = end;
[INFO] [stdout]    |                         ------------------- `current_start` is overwritten here before the previous value is read
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/app/event.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Resize(u16, u16),
[INFO] [stdout]    |     ------ ^^^  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 15 -     Resize(u16, u16),
[INFO] [stdout] 15 +     Resize((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ToolResult` and `SyntaxUpdate` are never constructed
[INFO] [stdout]   --> src/app/event.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum AppEvent {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 29 |     ToolResult(String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     SyntaxUpdate {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` 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 `model_provider` is never used
[INFO] [stdout]    --> src/app/handlers.rs:705:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl App {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 705 |     pub fn model_provider(&self) -> &'static str {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `save_as`, `char_to_line`, `set_scroll_offset`, `scroll_to`, and `line_at` are never used
[INFO] [stdout]    --> src/buffer/mod.rs:39:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl Buffer {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  39 |     pub fn save_as(&mut self, path: impl Into<std::path::PathBuf>) -> Result<(), crate::document::DocumentError> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn char_to_line(&self, char_idx: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn set_scroll_offset(&mut self, offset: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn scroll_to(&mut self, line: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn line_at(&self, offset: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/buffer/selection.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Selection {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `primary_mut` is never used
[INFO] [stdout]   --> src/buffer/selection.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl SelectionSet {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn primary_mut(&mut self) -> Option<&mut Selection> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/buffer/viewport.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl Position {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 9 |     pub fn new(row: usize, col: usize) -> Self {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `scroll_up`, `scroll_down`, and `move_to_row` are never used
[INFO] [stdout]   --> src/buffer/viewport.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Viewport {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn scroll_up(&mut self, n: usize) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn scroll_down(&mut self, n: usize, total_lines: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn move_to_row(&mut self, row: usize, total_lines: usize, visible_rows: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Tool` is never constructed
[INFO] [stdout]   --> src/chat/message.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum Role {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 11 |     Tool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Role` 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: variant `ToolCall` is never constructed
[INFO] [stdout]   --> src/chat/message.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum ContentBlock {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 32 |     ToolCall {
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContentBlock` 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: variants `Running`, `Success`, and `Failed` are never constructed
[INFO] [stdout]   --> src/chat/message.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub enum ToolStatus {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 49 |     Running,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 50 |     Success(Option<String>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 51 |     Failed(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToolStatus` 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 `id` is never read
[INFO] [stdout]   --> src/chat/message.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct Message {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 57 |     pub id: uuid::Uuid,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Message` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `thinking_content` is never used
[INFO] [stdout]    --> src/chat/message.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl Message {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn thinking_content(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `display_width` is never used
[INFO] [stdout]   --> src/chat/render.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl RenderLine {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn display_width(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `span_line_count` is never used
[INFO] [stdout]    --> src/chat/render.rs:546:8
[INFO] [stdout]     |
[INFO] [stdout] 546 | pub fn span_line_count(spans: &[StyledSpan], max_width: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `encoding` is never read
[INFO] [stdout]   --> src/document/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Document {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     encoding: Encoding,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `save_as`, `char_to_line`, and `encoding` are never used
[INFO] [stdout]    --> src/document/mod.rs:64:12
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl Document {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub fn save_as(&mut self, path: impl Into<PathBuf>) -> Result<(), DocumentError> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn char_to_line(&self, char_idx: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn encoding(&self) -> Encoding {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Word`, `AroundFunction`, `InsideFunction`, `AroundBlock`, and `InsideBlock` are never constructed
[INFO] [stdout]   --> src/editor/action.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum TextObject {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 21 |     Word,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 22 |     /// Around function — for future tree-sitter integration.
[INFO] [stdout] 23 |     AroundFunction,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     /// Inside function — for future tree-sitter integration.
[INFO] [stdout] 25 |     InsideFunction,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     /// Around block — for future tree-sitter integration.
[INFO] [stdout] 27 |     AroundBlock,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     /// Inside block — for future tree-sitter integration.
[INFO] [stdout] 29 |     InsideBlock,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TextObject` 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: variant `SelectList` is never constructed
[INFO] [stdout]   --> src/editor/action.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub enum Action {
[INFO] [stdout]    |          ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 45 |     SelectList(TextObject),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Action` 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: variant `Cancelled` is never constructed
[INFO] [stdout]   --> src/llm/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum StopReason {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 37 |     Cancelled,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StopReason` 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 `to_chat_messages` is never used
[INFO] [stdout]   --> src/llm/mod.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn to_chat_messages(messages: &[crate::chat::Message]) -> Vec<genai::chat::ChatMessage> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_defaults`, `model`, and `is_local_ollama` are never used
[INFO] [stdout]    --> src/llm/client.rs:40:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl HyprClient {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  40 |     pub fn with_defaults(model: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  55 |     pub fn model(&self) -> &str {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn is_local_ollama() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `base_url` is never read
[INFO] [stdout]   --> src/llm/config.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct ProviderInfo {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub base_url: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ProviderInfo` 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: multiple associated items are never used
[INFO] [stdout]    --> src/llm/config.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl ProviderConfig {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 127 |     /// Create a new configuration with a custom default model.
[INFO] [stdout] 128 |     pub fn with_default_model(model: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn get_provider(&self, id: &str) -> Option<&ProviderInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn provider_for_model(&self, model: &str) -> Option<&ProviderInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn has_any_api_key(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn suggested_models(&self) -> Vec<(&str, &str)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn is_provider_available(&self, provider_id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn is_local_ollama_running() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CACHE_TTL` is never used
[INFO] [stdout]   --> src/llm/models.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const CACHE_TTL: Duration = Duration::from_secs(24 * 60 * 60); // 24 hours
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cached_at` is never read
[INFO] [stdout]   --> src/llm/models.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct ModelsDev {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     cached_at: Option<SystemTime>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ModelsDev` 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: associated items `get_provider`, `provider_to_adapter`, `provider_to_adapter_static`, `is_local_ollama_available`, `is_ollama_cloud_available`, and `available_models` are never used
[INFO] [stdout]    --> src/llm/models.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout]  48 | impl ModelsDev {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn get_provider(&self, provider_id: &str) -> Option<&ProviderEntry> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn provider_to_adapter(provider_id: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn provider_to_adapter_static(provider_id: &str) -> &'static str {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub fn is_local_ollama_available() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn is_ollama_cloud_available() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn available_models(&self) -> Vec<(&ProviderEntry, &ModelInfo)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `supports_tools` and `capability_description` are never used
[INFO] [stdout]    --> src/llm/models.rs:358:12
[INFO] [stdout]     |
[INFO] [stdout] 351 | impl ModelInfo {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 358 |     pub fn supports_tools(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub fn capability_description(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModelsCache` is never constructed
[INFO] [stdout]    --> src/llm/models.rs:396:12
[INFO] [stdout]     |
[INFO] [stdout] 396 | pub struct ModelsCache {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_or_fetch`, and `clear` are never used
[INFO] [stdout]    --> src/llm/models.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl ModelsCache {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new empty cache.
[INFO] [stdout] 402 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 407 |     pub async fn get_or_fetch(&self, paths: &crate::paths::Paths) -> anyhow::Result<ModelsDev> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |     pub async fn clear(&self) {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `supports_streaming` is never used
[INFO] [stdout]    --> src/llm/stream.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub fn supports_streaming(model: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `icon` is never used
[INFO] [stdout]   --> src/notes.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl NoteKind {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 17 |     /// Display icon for this note kind.
[INFO] [stdout] 18 |     pub fn icon(self) -> &'static str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `timestamp` are never read
[INFO] [stdout]   --> src/notes.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct Note {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 28 |     pub id: Uuid,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub timestamp: OffsetDateTime,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Note` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `config_dir` is never used
[INFO] [stdout]   --> src/paths.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Paths {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn config_dir(&self) -> &PathBuf {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SessionInfo` is never constructed
[INFO] [stdout]   --> src/session.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct SessionInfo {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `path` are never read
[INFO] [stdout]   --> src/session.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct Conversation {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 81 |     /// Session ID
[INFO] [stdout] 82 |     pub id: SessionId,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 83 |     /// Path to the session file
[INFO] [stdout] 84 |     pub path: PathBuf,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `load`, `push_system`, `read_entries`, and `entry_count` are never used
[INFO] [stdout]    --> src/session.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout]  91 | impl Conversation {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn load(paths: &crate::paths::Paths, id: &SessionId) -> Result<Self, SessionError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn push_system(&mut self, content: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn read_entries(&self) -> Result<Vec<ConversationEntry>, SessionError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn entry_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsonlError` is never used
[INFO] [stdout]  --> src/store/jsonl.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum JsonlError {
[INFO] [stdout]   |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LogLine` is never constructed
[INFO] [stdout]   --> src/store/jsonl.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct LogLine {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonlWriter` is never constructed
[INFO] [stdout]   --> src/store/jsonl.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct JsonlWriter {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `open` and `write` are never used
[INFO] [stdout]   --> src/store/jsonl.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl JsonlWriter {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 30 |     pub fn open(path: impl Into<PathBuf>) -> Result<Self, JsonlError> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn write(&mut self, line: &LogLine) -> Result<(), JsonlError> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonlReader` is never constructed
[INFO] [stdout]   --> src/store/jsonl.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct JsonlReader {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `open` is never used
[INFO] [stdout]   --> src/store/jsonl.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl JsonlReader {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 56 |     pub fn open(path: impl Into<PathBuf>) -> Result<Self, JsonlError> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MetaStoreError` is never used
[INFO] [stdout]  --> src/store/meta.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum MetaStoreError {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Policy` is never used
[INFO] [stdout]   --> src/store/meta.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum Policy {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MetaStore` is never constructed
[INFO] [stdout]   --> src/store/meta.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct MetaStore {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/store/meta.rs:50:12
[INFO] [stdout]     |
[INFO] [stdout]  49 | impl MetaStore {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  50 |     pub fn open(path: &Path) -> Result<Self, MetaStoreError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn init_tables(&self) -> Result<(), MetaStoreError> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub fn create_session(&self, id: &SessionId, summary: &str) -> Result<(), MetaStoreError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn list_sessions(&self, limit: usize) -> Result<Vec<SessionInfo>, MetaStoreError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn update_session_timestamp(&self, id: &SessionId) -> Result<(), MetaStoreError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn get_permission(&self, pattern: &str) -> Result<Option<Policy>, MetaStoreError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn set_permission(&self, pattern: &str, policy: Policy) -> Result<(), MetaStoreError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn upsert_document(&self, path: &Path, language: &str) -> Result<(), MetaStoreError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_rfc3339` is never used
[INFO] [stdout]    --> src/store/meta.rs:169:4
[INFO] [stdout]     |
[INFO] [stdout] 169 | fn now_rfc3339() -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `language_for_path` is never used
[INFO] [stdout]   --> src/syntax/languages.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn language_for_path(path: &Path) -> Option<LanguageInfo> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EditorView` is never constructed
[INFO] [stdout]  --> src/ui/editor_view.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct EditorView<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find_highlight_style` is never used
[INFO] [stdout]    --> src/ui/editor_view.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl<'a> EditorView<'a> {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] 120 |     /// Find the highlight style for a given byte position in the buffer.
[INFO] [stdout] 121 |     fn find_highlight_style(&self, byte_pos: usize) -> ratatui::style::Style {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Confirm` and `Static` are never constructed
[INFO] [stdout]    --> src/ui/modal.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub enum ModalState {
[INFO] [stdout]     |          ---------- variants in this enum
[INFO] [stdout] 168 |     Menu(MenuState),
[INFO] [stdout] 169 |     Confirm(ConfirmState),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 170 |     Static {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModalState` 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: multiple fields are never read
[INFO] [stdout]    --> src/ui/theme.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | pub struct Theme {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  79 |     pub bg_raised: Color,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub status_separator: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub hover_bg: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub timestamp: Style,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub msg_icon_user: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 107 |     pub msg_icon_agent: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 108 |     pub msg_icon_system: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 109 |     pub msg_icon_tool: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub input_bg: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub input_border: Color,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub sidebar_bg: Color,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub editor_gutter_active: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 151 |     pub editor_gutter_separator: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 152 |     pub editor_text: Style,
[INFO] [stdout] 153 |     pub editor_selection: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 154 |     pub editor_cursor_line: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Theme` 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: value assigned to `current_start` is never read
[INFO] [stdout]   --> src/syntax/mod.rs:89:21
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     current_start = start;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 93 |                         current_start = end;
[INFO] [stdout]    |                         ------------------- `current_start` is overwritten here before the previous value is read
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/app/event.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Resize(u16, u16),
[INFO] [stdout]    |     ------ ^^^  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 15 -     Resize(u16, u16),
[INFO] [stdout] 15 +     Resize((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ToolResult` and `SyntaxUpdate` are never constructed
[INFO] [stdout]   --> src/app/event.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum AppEvent {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 29 |     ToolResult(String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     SyntaxUpdate {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` 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 `model_provider` is never used
[INFO] [stdout]    --> src/app/handlers.rs:705:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl App {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 705 |     pub fn model_provider(&self) -> &'static str {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `save_as`, `char_to_line`, `scroll_to`, and `line_at` are never used
[INFO] [stdout]    --> src/buffer/mod.rs:39:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl Buffer {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  39 |     pub fn save_as(&mut self, path: impl Into<std::path::PathBuf>) -> Result<(), crate::document::DocumentError> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn char_to_line(&self, char_idx: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn scroll_to(&mut self, line: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn line_at(&self, offset: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `primary_mut` is never used
[INFO] [stdout]   --> src/buffer/selection.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl SelectionSet {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn primary_mut(&mut self) -> Option<&mut Selection> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Tool` is never constructed
[INFO] [stdout]   --> src/chat/message.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum Role {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 11 |     Tool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Role` 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: variant `ToolCall` is never constructed
[INFO] [stdout]   --> src/chat/message.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum ContentBlock {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 32 |     ToolCall {
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContentBlock` 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: variants `Running`, `Success`, and `Failed` are never constructed
[INFO] [stdout]   --> src/chat/message.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub enum ToolStatus {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 49 |     Running,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 50 |     Success(Option<String>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 51 |     Failed(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToolStatus` 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 `id` is never read
[INFO] [stdout]   --> src/chat/message.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct Message {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 57 |     pub id: uuid::Uuid,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Message` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `display_width` is never used
[INFO] [stdout]   --> src/chat/render.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl RenderLine {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn display_width(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `encoding` is never read
[INFO] [stdout]   --> src/document/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Document {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     encoding: Encoding,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `encoding` is never used
[INFO] [stdout]    --> src/document/mod.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl Document {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn encoding(&self) -> Encoding {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Word`, `AroundFunction`, `InsideFunction`, `AroundBlock`, and `InsideBlock` are never constructed
[INFO] [stdout]   --> src/editor/action.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum TextObject {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 21 |     Word,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 22 |     /// Around function — for future tree-sitter integration.
[INFO] [stdout] 23 |     AroundFunction,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     /// Inside function — for future tree-sitter integration.
[INFO] [stdout] 25 |     InsideFunction,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     /// Around block — for future tree-sitter integration.
[INFO] [stdout] 27 |     AroundBlock,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     /// Inside block — for future tree-sitter integration.
[INFO] [stdout] 29 |     InsideBlock,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TextObject` 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: variant `SelectList` is never constructed
[INFO] [stdout]   --> src/editor/action.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub enum Action {
[INFO] [stdout]    |          ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 45 |     SelectList(TextObject),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Action` 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: variant `Cancelled` is never constructed
[INFO] [stdout]   --> src/llm/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum StopReason {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 37 |     Cancelled,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StopReason` 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 `to_chat_messages` is never used
[INFO] [stdout]   --> src/llm/mod.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn to_chat_messages(messages: &[crate::chat::Message]) -> Vec<genai::chat::ChatMessage> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `is_local_ollama` is never used
[INFO] [stdout]    --> src/llm/client.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl HyprClient {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn is_local_ollama() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `base_url` is never read
[INFO] [stdout]   --> src/llm/config.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct ProviderInfo {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub base_url: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ProviderInfo` 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: associated items `with_default_model`, `has_any_api_key`, `suggested_models`, `is_provider_available`, and `is_local_ollama_running` are never used
[INFO] [stdout]    --> src/llm/config.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl ProviderConfig {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 127 |     /// Create a new configuration with a custom default model.
[INFO] [stdout] 128 |     pub fn with_default_model(model: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn has_any_api_key(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn suggested_models(&self) -> Vec<(&str, &str)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn is_provider_available(&self, provider_id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn is_local_ollama_running() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CACHE_TTL` is never used
[INFO] [stdout]   --> src/llm/models.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const CACHE_TTL: Duration = Duration::from_secs(24 * 60 * 60); // 24 hours
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cached_at` is never read
[INFO] [stdout]   --> src/llm/models.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct ModelsDev {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     cached_at: Option<SystemTime>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ModelsDev` 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: associated items `get_provider`, `provider_to_adapter`, `provider_to_adapter_static`, `is_local_ollama_available`, `is_ollama_cloud_available`, and `available_models` are never used
[INFO] [stdout]    --> src/llm/models.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout]  48 | impl ModelsDev {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn get_provider(&self, provider_id: &str) -> Option<&ProviderEntry> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn provider_to_adapter(provider_id: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn provider_to_adapter_static(provider_id: &str) -> &'static str {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub fn is_local_ollama_available() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn is_ollama_cloud_available() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn available_models(&self) -> Vec<(&ProviderEntry, &ModelInfo)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModelsCache` is never constructed
[INFO] [stdout]    --> src/llm/models.rs:396:12
[INFO] [stdout]     |
[INFO] [stdout] 396 | pub struct ModelsCache {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_or_fetch`, and `clear` are never used
[INFO] [stdout]    --> src/llm/models.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl ModelsCache {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new empty cache.
[INFO] [stdout] 402 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 407 |     pub async fn get_or_fetch(&self, paths: &crate::paths::Paths) -> anyhow::Result<ModelsDev> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |     pub async fn clear(&self) {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `icon` is never used
[INFO] [stdout]   --> src/notes.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl NoteKind {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 17 |     /// Display icon for this note kind.
[INFO] [stdout] 18 |     pub fn icon(self) -> &'static str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `timestamp` are never read
[INFO] [stdout]   --> src/notes.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct Note {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 28 |     pub id: Uuid,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub timestamp: OffsetDateTime,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Note` 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 `id` and `path` are never read
[INFO] [stdout]   --> src/session.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct Conversation {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 81 |     /// Session ID
[INFO] [stdout] 82 |     pub id: SessionId,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 83 |     /// Path to the session file
[INFO] [stdout] 84 |     pub path: PathBuf,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `load`, `push_system`, `read_entries`, and `entry_count` are never used
[INFO] [stdout]    --> src/session.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout]  91 | impl Conversation {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn load(paths: &crate::paths::Paths, id: &SessionId) -> Result<Self, SessionError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn push_system(&mut self, content: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn read_entries(&self) -> Result<Vec<ConversationEntry>, SessionError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn entry_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `language_for_path` is never used
[INFO] [stdout]   --> src/syntax/languages.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn language_for_path(path: &Path) -> Option<LanguageInfo> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EditorView` is never constructed
[INFO] [stdout]  --> src/ui/editor_view.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct EditorView<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find_highlight_style` is never used
[INFO] [stdout]    --> src/ui/editor_view.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl<'a> EditorView<'a> {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] 120 |     /// Find the highlight style for a given byte position in the buffer.
[INFO] [stdout] 121 |     fn find_highlight_style(&self, byte_pos: usize) -> ratatui::style::Style {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Confirm` and `Static` are never constructed
[INFO] [stdout]    --> src/ui/modal.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub enum ModalState {
[INFO] [stdout]     |          ---------- variants in this enum
[INFO] [stdout] 168 |     Menu(MenuState),
[INFO] [stdout] 169 |     Confirm(ConfirmState),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 170 |     Static {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModalState` 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: multiple fields are never read
[INFO] [stdout]    --> src/ui/theme.rs:79:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | pub struct Theme {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  79 |     pub bg_raised: Color,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub status_separator: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub hover_bg: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub timestamp: Style,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub msg_icon_user: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 107 |     pub msg_icon_agent: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 108 |     pub msg_icon_system: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 109 |     pub msg_icon_tool: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub input_bg: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub input_border: Color,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub sidebar_bg: Color,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub editor_gutter_active: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 151 |     pub editor_gutter_separator: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 152 |     pub editor_text: Style,
[INFO] [stdout] 153 |     pub editor_selection: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 154 |     pub editor_cursor_line: Style,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Theme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 14s
[INFO] running `Command { std: "docker" "inspect" "ec00f503899bbb5b75692a03699c66d7e47913e68c437f2c653a905e88dcc1dc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ec00f503899bbb5b75692a03699c66d7e47913e68c437f2c653a905e88dcc1dc", kill_on_drop: false }`
[INFO] [stdout] ec00f503899bbb5b75692a03699c66d7e47913e68c437f2c653a905e88dcc1dc
