[INFO] cloning repository https://github.com/matt-aircritical/claudeman
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/matt-aircritical/claudeman" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-aircritical%2Fclaudeman", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-aircritical%2Fclaudeman'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c0a3c8ef864ece5b33ec118b2185b7f04145f381
[INFO] checking matt-aircritical/claudeman/c0a3c8ef864ece5b33ec118b2185b7f04145f381 against a7c37f9f0ee5e93396106e9de20f4a86b4154e63 for pr-129249-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-aircritical%2Fclaudeman" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/matt-aircritical/claudeman
[INFO] finished tweaking git repo https://github.com/matt-aircritical/claudeman
[INFO] tweaked toml for git repo https://github.com/matt-aircritical/claudeman written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/matt-aircritical/claudeman on toolchain a7c37f9f0ee5e93396106e9de20f4a86b4154e63
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/matt-aircritical/claudeman 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" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded sketches-ddsketch v0.4.0
[INFO] [stderr]   Downloaded line-clipping v0.3.7
[INFO] [stderr]   Downloaded tantivy v0.26.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de
[INFO] running `Command { std: "docker" "start" "6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de" "/opt/rustwide/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de" "/opt/rustwide/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking lru v0.16.3
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling cc v1.2.59
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]     Checking unicode-truncate v2.0.1
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking futures-core v0.3.32
[INFO] [stderr]     Checking ownedbytes v0.9.0
[INFO] [stderr]     Checking bitpacking v0.9.3
[INFO] [stderr]     Checking utf8-ranges v1.0.5
[INFO] [stderr]     Checking compact_str v0.9.0
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking line-clipping v0.3.7
[INFO] [stderr]     Checking murmurhash32 v0.3.1
[INFO] [stderr]     Checking tantivy-bitpacker v0.10.0
[INFO] [stderr]    Compiling typetag v0.2.21
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking tantivy-fst v0.5.0
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking ordered-float v5.3.0
[INFO] [stderr]     Checking downcast-rs v2.0.2
[INFO] [stderr]     Checking winnow v1.0.1
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking fastdivide v0.4.2
[INFO] [stderr]     Checking inventory v0.3.24
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking arc-swap v1.9.1
[INFO] [stderr]     Checking memmap2 v0.9.10
[INFO] [stderr]     Checking measure_time v0.9.0
[INFO] [stderr]     Checking oneshot v0.1.13
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking lz4_flex v0.13.0
[INFO] [stderr]     Checking levenshtein_automata v0.2.1
[INFO] [stderr]     Checking htmlescape v0.3.1
[INFO] [stderr]     Checking toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]     Checking datasketches v0.2.0
[INFO] [stderr]     Checking census v0.4.2
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]     Checking toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking rayon-core v1.13.0
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]     Checking fs4 v0.13.1
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]     Checking erased-serde v0.4.10
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]     Checking uuid v1.23.0
[INFO] [stderr]     Checking serde_spanned v1.1.1
[INFO] [stderr]     Checking toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling typetag-impl v0.2.21
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking kasuari v0.4.12
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]     Checking ratatui-core v0.1.0
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling bon-macros v3.9.1
[INFO] [stderr]     Checking ratatui-widgets v0.3.0
[INFO] [stderr]     Checking ratatui-crossterm v0.1.0
[INFO] [stderr]     Checking tantivy-common v0.11.0
[INFO] [stderr]     Checking rust-stemmers v1.2.0
[INFO] [stderr]     Checking tantivy-tokenizer-api v0.7.0
[INFO] [stderr]     Checking sketches-ddsketch v0.4.0
[INFO] [stderr]     Checking tantivy-query-grammar v0.26.0
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking tantivy-stacker v0.7.0
[INFO] [stderr]     Checking tantivy-sstable v0.7.0
[INFO] [stderr]     Checking ratatui-macros v0.7.0
[INFO] [stderr]     Checking ratatui v0.30.0
[INFO] [stderr]     Checking tantivy-columnar v0.7.0
[INFO] [stderr]     Checking bon v3.9.1
[INFO] [stderr]     Checking tantivy v0.26.0
[INFO] [stderr]     Checking claudeman v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `PathBuf`
[INFO] [stdout]  --> tests/../src/scanner.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::{Path, PathBuf};
[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: `PathBuf`
[INFO] [stdout]  --> tests/../src/scanner.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::{Path, PathBuf};
[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: `PathBuf`
[INFO] [stdout]  --> tests/../src/scanner.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::{Path, PathBuf};
[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: `PathBuf`
[INFO] [stdout]  --> tests/../src/scanner.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `project_dir` and `file_mtime` are never read
[INFO] [stdout]   --> tests/../src/scanner.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct DiscoveredSession {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout]  7 |     pub session_id: String,
[INFO] [stdout]  8 |     pub project_dir: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]  9 |     pub jsonl_path: String,
[INFO] [stdout] 10 |     pub file_mtime: u64,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DiscoveredSession` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PathBuf`
[INFO] [stdout]  --> src/scanner.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::{Path, PathBuf};
[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: `crate::search`
[INFO] [stdout]   --> src/tui/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::search;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `load`, `config_path`, `claude_dir`, and `index_dir` are never used
[INFO] [stdout]   --> tests/../src/config.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Config {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn load() -> Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn config_path() -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn claude_dir(&self) -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn index_dir() -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `discover_sessions` is never used
[INFO] [stdout]   --> tests/../src/scanner.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn discover_sessions(claude_dir: &Path) -> Vec<DiscoveredSession> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_mangled_path` is never used
[INFO] [stdout]   --> tests/../src/scanner.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub fn decode_mangled_path(mangled: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> tests/../src/indexer.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct IndexedSession {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 15 |     pub session_id: String,
[INFO] [stdout] 16 |     pub project_dir: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 17 |     pub cwd: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 18 |     pub started_at: u64,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 19 |     pub last_activity: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 20 |     pub name: String,
[INFO] [stdout] 21 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 22 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 23 |     pub message_count: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 24 |     pub first_user_message: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     pub first_assistant_message: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub jsonl_path: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IndexedSession` 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 `open` and `remove_session` are never used
[INFO] [stdout]    --> tests/../src/indexer.rs:57:12
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl SessionIndex {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn open(path: &Path) -> Result<Self> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn remove_session(&self, session_id: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PathBuf`
[INFO] [stdout]  --> src/scanner.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path::{Path, PathBuf};
[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: `crate::search`
[INFO] [stdout]   --> src/tui/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::search;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `load`, `save`, and `default_path` are never used
[INFO] [stdout]   --> tests/../src/names.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl NameStore {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn load() -> Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn save(&self) -> Result<()> { self.save_to(&Self::default_path()) }
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn default_path() -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `discover_sessions` is never used
[INFO] [stdout]   --> tests/../src/scanner.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn discover_sessions(claude_dir: &Path) -> Vec<DiscoveredSession> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_mangled_path` is never used
[INFO] [stdout]   --> tests/../src/scanner.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub fn decode_mangled_path(mangled: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `filtered_sessions`
[INFO] [stdout]    --> src/tui/mod.rs:282:13
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let filtered_sessions: Vec<&IndexedSession> = self
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filtered_sessions`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parsed`
[INFO] [stdout]    --> src/tui/mod.rs:388:16
[INFO] [stdout]     |
[INFO] [stdout] 388 |             Ok(parsed) => {
[INFO] [stdout]     |                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `version` is never read
[INFO] [stdout]   --> src/indexer.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct IndexedSession {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IndexedSession` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `open` is never used
[INFO] [stdout]   --> src/indexer.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl SessionIndex {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn open(path: &Path) -> Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `group_by_date` is never used
[INFO] [stdout]   --> src/search.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn group_by_date(sessions: &[IndexedSession]) -> BTreeMap<String, Vec<&IndexedSession>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/tui/mod.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct App {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub config: Config,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `discover_sessions` is never used
[INFO] [stdout]   --> tests/../src/scanner.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn discover_sessions(claude_dir: &Path) -> Vec<DiscoveredSession> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_mangled_path` is never used
[INFO] [stdout]   --> tests/../src/scanner.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub fn decode_mangled_path(mangled: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> tests/../src/indexer.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct IndexedSession {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub cwd: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 18 |     pub started_at: u64,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 19 |     pub last_activity: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 20 |     pub name: String,
[INFO] [stdout] 21 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 22 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 23 |     pub message_count: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 24 |     pub first_user_message: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     pub first_assistant_message: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub jsonl_path: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IndexedSession` 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 `index` is never read
[INFO] [stdout]   --> tests/../src/indexer.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct SessionIndex {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 30 |     index: Index,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `open`, `search`, `needs_reindex`, and `remove_session` are never used
[INFO] [stdout]    --> tests/../src/indexer.rs:57:12
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl SessionIndex {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn open(path: &Path) -> Result<Self> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn search(&self, query_str: &str) -> Result<Vec<IndexedSession>> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn needs_reindex(&self, session_id: &str, current_mtime: u64) -> Result<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn remove_session(&self, session_id: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `load_from`, `load`, `save_to`, `save`, and `default_path` are never used
[INFO] [stdout]   --> tests/../src/names.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl NameStore {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn load_from(path: &Path) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn load() -> Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn save_to(&self, path: &Path) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn save(&self) -> Result<()> { self.save_to(&Self::default_path()) }
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn default_path() -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `group_by_date` is never used
[INFO] [stdout]   --> tests/../src/search.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn group_by_date(sessions: &[IndexedSession]) -> BTreeMap<String, Vec<&IndexedSession>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_date` is never used
[INFO] [stdout]   --> tests/../src/search.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn format_date(timestamp: u64) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `filtered_sessions`
[INFO] [stdout]    --> src/tui/mod.rs:282:13
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let filtered_sessions: Vec<&IndexedSession> = self
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filtered_sessions`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parsed`
[INFO] [stdout]    --> src/tui/mod.rs:388:16
[INFO] [stdout]     |
[INFO] [stdout] 388 |             Ok(parsed) => {
[INFO] [stdout]     |                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `version` is never read
[INFO] [stdout]   --> src/indexer.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct IndexedSession {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IndexedSession` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `open` is never used
[INFO] [stdout]   --> src/indexer.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl SessionIndex {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn open(path: &Path) -> Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `group_by_date` is never used
[INFO] [stdout]   --> src/search.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn group_by_date(sessions: &[IndexedSession]) -> BTreeMap<String, Vec<&IndexedSession>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/tui/mod.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct App {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub config: Config,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.58s
[INFO] running `Command { std: "docker" "inspect" "6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de", kill_on_drop: false }`
[INFO] [stdout] 6219cf6e228f1206b4d51e422a663a5b56627f883f88ef55e94d81cb6350b7de
