[INFO] cloning repository https://github.com/lhjnano/orca-tui [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lhjnano/orca-tui" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flhjnano%2Forca-tui", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flhjnano%2Forca-tui'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8f12e8515e3f2a36ad6acb38d7a16c63d9648032 [INFO] testing lhjnano/orca-tui against 1.99.0-beta.8 for beta-1.100-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flhjnano%2Forca-tui" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/lhjnano/orca-tui [INFO] finished tweaking git repo https://github.com/lhjnano/orca-tui [INFO] tweaked toml for git repo https://github.com/lhjnano/orca-tui written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/lhjnano/orca-tui on toolchain 1.99.0-beta.8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/lhjnano/orca-tui 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" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded vte_generate_state_changes v0.1.2 [INFO] [stderr] Downloaded vt100 v0.15.2 [INFO] [stderr] Downloaded futures-sink v0.3.33 [INFO] [stderr] Downloaded futures-task v0.3.33 [INFO] [stderr] Downloaded tokio-macros v2.7.1 [INFO] [stderr] Downloaded futures-core v0.3.33 [INFO] [stderr] Downloaded vte v0.11.1 [INFO] [stderr] Downloaded futures-macro v0.3.33 [INFO] [stderr] Downloaded zerocopy-derive v0.8.55 [INFO] [stderr] Downloaded ratatui-ppalla v0.0.3 [INFO] [stderr] Downloaded compact_str v0.8.2 [INFO] [stderr] Downloaded serial2 v0.2.37 [INFO] [stderr] Downloaded futures-util v0.3.33 [INFO] [stderr] Downloaded zerocopy v0.8.55 [INFO] [stderr] Downloaded regex-automata v0.4.16 [INFO] [stderr] Downloaded clap v4.6.4 [INFO] [stderr] Downloaded clap_builder v4.6.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f [INFO] running `Command { std: "docker" "start" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f", 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" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.107 [INFO] [stderr] Compiling quote v1.0.47 [INFO] [stderr] Compiling libc v0.2.189 [INFO] [stderr] Compiling serde_core v1.0.229 [INFO] [stderr] Compiling smallvec v1.15.2 [INFO] [stderr] Compiling zerocopy v0.8.55 [INFO] [stderr] Compiling bitflags v2.13.1 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling instability v0.3.12 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling hashbrown v0.17.1 [INFO] [stderr] Compiling unicode-segmentation v1.13.3 [INFO] [stderr] Compiling zmij v1.0.23 [INFO] [stderr] Compiling sha1 v0.10.7 [INFO] [stderr] Compiling futures-task v0.3.33 [INFO] [stderr] Compiling compact_str v0.8.2 [INFO] [stderr] Compiling arrayvec v0.7.8 [INFO] [stderr] Compiling futures-core v0.3.33 [INFO] [stderr] Compiling unicode-width v0.2.0 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling futures-sink v0.3.33 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling clap_builder v4.6.2 [INFO] [stderr] Compiling memchr v2.8.3 [INFO] [stderr] Compiling indexmap v2.14.0 [INFO] [stderr] Compiling syn v2.0.119 [INFO] [stderr] Compiling syn v3.0.3 [INFO] [stderr] Compiling vte_generate_state_changes v0.1.2 [INFO] [stderr] Compiling vte v0.11.1 [INFO] [stderr] Compiling vt100 v0.15.2 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling mio v1.2.2 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling socket2 v0.6.5 [INFO] [stderr] Compiling nix v0.28.0 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling serial2 v0.2.37 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling serde_json v1.0.151 [INFO] [stderr] Compiling serde_derive v1.0.229 [INFO] [stderr] Compiling clap_derive v4.6.4 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.7 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling clap v4.6.4 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling tokio-macros v2.7.1 [INFO] [stderr] Compiling futures-macro v0.3.33 [INFO] [stderr] Compiling tokio v1.53.1 [INFO] [stderr] Compiling futures-util v0.3.33 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling filedescriptor v0.8.3 [INFO] [stderr] Compiling tungstenite v0.24.0 [INFO] [stderr] Compiling serde v1.0.229 [INFO] [stderr] Compiling portable-pty v0.9.0 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling ratatui v0.29.0 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling ratatui-ppalla v0.0.3 [INFO] [stderr] Compiling tokio-tungstenite v0.24.0 [INFO] [stderr] Compiling orcatui v0.4.8 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `AttachClient` [INFO] [stdout] --> src/cli.rs:432:61 [INFO] [stdout] | [INFO] [stdout] 432 | use crate::daemon_server::{default_socket_path, AttachClient}; [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::net::Shutdown` [INFO] [stdout] --> src/daemon_server.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | use std::net::Shutdown; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::SystemTime` [INFO] [stdout] --> src/daemon_server.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | use std::time::SystemTime; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/orca_daemon.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Instant` [INFO] [stdout] --> src/orca_daemon.rs:31:27 [INFO] [stdout] | [INFO] [stdout] 31 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hint::black_box` [INFO] [stdout] --> src/perf_probe.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use std::hint::black_box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/perf_probe.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 18 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::backend::TestBackend` [INFO] [stdout] --> src/perf_probe.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use ratatui::backend::TestBackend; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::Terminal` [INFO] [stdout] --> src/perf_probe.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use ratatui::Terminal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::layout::split_panes` [INFO] [stdout] --> src/perf_probe.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::layout::split_panes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::pane::Pane` [INFO] [stdout] --> src/perf_probe.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use crate::pane::Pane; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FrameScheduler` and `TARGET_FRAME_60FPS` [INFO] [stdout] --> src/perf_probe.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | use crate::scheduler::{FrameScheduler, TARGET_FRAME_60FPS}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::terminal_emu::TerminalEmulator` [INFO] [stdout] --> src/perf_probe.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use crate::terminal_emu::TerminalEmulator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::widgets::Widget` [INFO] [stdout] --> src/toast.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use ratatui::widgets::Widget; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/orca_daemon.rs:33:22 [INFO] [stdout] | [INFO] [stdout] 33 | use anyhow::{anyhow, Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/app.rs:438:14 [INFO] [stdout] | [INFO] [stdout] 438 | for (idx, spec) in specs.into_iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reason` [INFO] [stdout] --> src/app.rs:1251:69 [INFO] [stdout] | [INFO] [stdout] 1251 | ... Err(DaemonError::Disconnected { reason }) => { [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `reason: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `worktrees` is never read [INFO] [stdout] --> src/app.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 213 | pub struct App> { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | worktrees: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `next_client_id` is never read [INFO] [stdout] --> src/daemon_server.rs:184:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub struct DaemonServer { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 184 | next_client_id: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `all_sessions_gone` is never used [INFO] [stdout] --> src/daemon_server.rs:512:8 [INFO] [stdout] | [INFO] [stdout] 190 | impl DaemonServer { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 512 | fn all_sessions_gone(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_frame` is never used [INFO] [stdout] --> src/orca_daemon.rs:199:4 [INFO] [stdout] | [INFO] [stdout] 199 | fn encode_frame(ftype: FrameType, payload: &[u8]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client_id` is never read [INFO] [stdout] --> src/orca_daemon.rs:361:5 [INFO] [stdout] | [INFO] [stdout] 357 | pub struct DaemonClient { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 361 | client_id: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `synth_ansi` is never used [INFO] [stdout] --> src/perf_probe.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn synth_ansi(mb: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/cli.rs:451:39 [INFO] [stdout] | [INFO] [stdout] 451 | let handler = sigterm_handler as usize; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 451 | let handler = sigterm_handler as *const () as usize; [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/cli.rs:456:33 [INFO] [stdout] | [INFO] [stdout] 456 | if let Some(flag) = &SHUTDOWN_FLAG { [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 456 | if let Some(flag) = &raw const SHUTDOWN_FLAG { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 47.57s [INFO] running `Command { std: "docker" "inspect" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling zerocopy v0.8.55 [INFO] [stderr] Compiling serde_core v1.0.229 [INFO] [stderr] Compiling zerocopy-derive v0.8.55 [INFO] [stderr] Compiling serde v1.0.229 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling regex-automata v0.4.16 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling regex v1.13.1 [INFO] [stderr] Compiling serde_json v1.0.151 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.7 [INFO] [stderr] Compiling criterion v0.5.1 [INFO] [stderr] Compiling tungstenite v0.24.0 [INFO] [stderr] Compiling tokio-tungstenite v0.24.0 [INFO] [stderr] Compiling orcatui v0.4.8 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `AttachClient` [INFO] [stdout] --> src/cli.rs:432:61 [INFO] [stdout] | [INFO] [stdout] 432 | use crate::daemon_server::{default_socket_path, AttachClient}; [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::net::Shutdown` [INFO] [stdout] --> src/daemon_server.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | use std::net::Shutdown; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::SystemTime` [INFO] [stdout] --> src/daemon_server.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | use std::time::SystemTime; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/orca_daemon.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Instant` [INFO] [stdout] --> src/orca_daemon.rs:31:27 [INFO] [stdout] | [INFO] [stdout] 31 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hint::black_box` [INFO] [stdout] --> src/perf_probe.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use std::hint::black_box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/perf_probe.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 18 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::backend::TestBackend` [INFO] [stdout] --> src/perf_probe.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use ratatui::backend::TestBackend; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::Terminal` [INFO] [stdout] --> src/perf_probe.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use ratatui::Terminal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::layout::split_panes` [INFO] [stdout] --> src/perf_probe.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::layout::split_panes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::pane::Pane` [INFO] [stdout] --> src/perf_probe.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use crate::pane::Pane; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FrameScheduler` and `TARGET_FRAME_60FPS` [INFO] [stdout] --> src/perf_probe.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | use crate::scheduler::{FrameScheduler, TARGET_FRAME_60FPS}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::terminal_emu::TerminalEmulator` [INFO] [stdout] --> src/perf_probe.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use crate::terminal_emu::TerminalEmulator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::widgets::Widget` [INFO] [stdout] --> src/toast.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use ratatui::widgets::Widget; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/orca_daemon.rs:33:22 [INFO] [stdout] | [INFO] [stdout] 33 | use anyhow::{anyhow, Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/app.rs:438:14 [INFO] [stdout] | [INFO] [stdout] 438 | for (idx, spec) in specs.into_iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reason` [INFO] [stdout] --> src/app.rs:1251:69 [INFO] [stdout] | [INFO] [stdout] 1251 | ... Err(DaemonError::Disconnected { reason }) => { [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `reason: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `worktrees` is never read [INFO] [stdout] --> src/app.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 213 | pub struct App> { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | worktrees: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `next_client_id` is never read [INFO] [stdout] --> src/daemon_server.rs:184:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub struct DaemonServer { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 184 | next_client_id: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `all_sessions_gone` is never used [INFO] [stdout] --> src/daemon_server.rs:512:8 [INFO] [stdout] | [INFO] [stdout] 190 | impl DaemonServer { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 512 | fn all_sessions_gone(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_frame` is never used [INFO] [stdout] --> src/orca_daemon.rs:199:4 [INFO] [stdout] | [INFO] [stdout] 199 | fn encode_frame(ftype: FrameType, payload: &[u8]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client_id` is never read [INFO] [stdout] --> src/orca_daemon.rs:361:5 [INFO] [stdout] | [INFO] [stdout] 357 | pub struct DaemonClient { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 361 | client_id: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `synth_ansi` is never used [INFO] [stdout] --> src/perf_probe.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn synth_ansi(mb: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/cli.rs:451:39 [INFO] [stdout] | [INFO] [stdout] 451 | let handler = sigterm_handler as usize; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 451 | let handler = sigterm_handler as *const () as usize; [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/cli.rs:456:33 [INFO] [stdout] | [INFO] [stdout] 456 | if let Some(flag) = &SHUTDOWN_FLAG { [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 456 | if let Some(flag) = &raw const SHUTDOWN_FLAG { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AttachClient` [INFO] [stdout] --> src/cli.rs:432:61 [INFO] [stdout] | [INFO] [stdout] 432 | use crate::daemon_server::{default_socket_path, AttachClient}; [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::net::Shutdown` [INFO] [stdout] --> src/daemon_server.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | use std::net::Shutdown; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/orca_daemon.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Instant` [INFO] [stdout] --> src/orca_daemon.rs:31:27 [INFO] [stdout] | [INFO] [stdout] 31 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/orca_daemon.rs:33:22 [INFO] [stdout] | [INFO] [stdout] 33 | use anyhow::{anyhow, Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Constraint` and `Layout` [INFO] [stdout] --> examples/screenshot.rs:8:34 [INFO] [stdout] | [INFO] [stdout] 8 | use ratatui::layout::{Alignment, Constraint, Layout, Rect}; [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: `ratatui::widgets::Widget` [INFO] [stdout] --> src/toast.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use ratatui::widgets::Widget; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/app.rs:438:14 [INFO] [stdout] | [INFO] [stdout] 438 | for (idx, spec) in specs.into_iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reason` [INFO] [stdout] --> src/app.rs:1251:69 [INFO] [stdout] | [INFO] [stdout] 1251 | ... Err(DaemonError::Disconnected { reason }) => { [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `reason: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/perf_probe.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | let mut backend = TestBackend::new(200, 50); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `worktrees` is never read [INFO] [stdout] --> src/app.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 213 | pub struct App> { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | worktrees: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `next_client_id` is never read [INFO] [stdout] --> src/daemon_server.rs:184:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub struct DaemonServer { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 184 | next_client_id: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `all_sessions_gone` is never used [INFO] [stdout] --> src/daemon_server.rs:512:8 [INFO] [stdout] | [INFO] [stdout] 190 | impl DaemonServer { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 512 | fn all_sessions_gone(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client_id` is never read [INFO] [stdout] --> src/orca_daemon.rs:361:5 [INFO] [stdout] | [INFO] [stdout] 357 | pub struct DaemonClient { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 361 | client_id: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/cli.rs:451:39 [INFO] [stdout] | [INFO] [stdout] 451 | let handler = sigterm_handler as usize; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 451 | let handler = sigterm_handler as *const () as usize; [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/cli.rs:456:33 [INFO] [stdout] | [INFO] [stdout] 456 | if let Some(flag) = &SHUTDOWN_FLAG { [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 456 | if let Some(flag) = &raw const SHUTDOWN_FLAG { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 32.78s [INFO] running `Command { std: "docker" "inspect" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `AttachClient` [INFO] [stderr] --> src/cli.rs:432:61 [INFO] [stderr] | [INFO] [stderr] 432 | use crate::daemon_server::{default_socket_path, AttachClient}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::net::Shutdown` [INFO] [stderr] --> src/daemon_server.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | use std::net::Shutdown; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::SystemTime` [INFO] [stderr] --> src/daemon_server.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | use std::time::SystemTime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Path` [INFO] [stderr] --> src/orca_daemon.rs:30:17 [INFO] [stderr] | [INFO] [stderr] 30 | use std::path::{Path, PathBuf}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instant` [INFO] [stderr] --> src/orca_daemon.rs:31:27 [INFO] [stderr] | [INFO] [stderr] 31 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::hint::black_box` [INFO] [stderr] --> src/perf_probe.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use std::hint::black_box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Duration` and `Instant` [INFO] [stderr] --> src/perf_probe.rs:18:17 [INFO] [stderr] | [INFO] [stderr] 18 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ratatui::backend::TestBackend` [INFO] [stderr] --> src/perf_probe.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use ratatui::backend::TestBackend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ratatui::Terminal` [INFO] [stderr] --> src/perf_probe.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use ratatui::Terminal; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::layout::split_panes` [INFO] [stderr] --> src/perf_probe.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | use crate::layout::split_panes; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::pane::Pane` [INFO] [stderr] --> src/perf_probe.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | use crate::pane::Pane; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `FrameScheduler` and `TARGET_FRAME_60FPS` [INFO] [stderr] --> src/perf_probe.rs:25:24 [INFO] [stderr] | [INFO] [stderr] 25 | use crate::scheduler::{FrameScheduler, TARGET_FRAME_60FPS}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::terminal_emu::TerminalEmulator` [INFO] [stderr] --> src/perf_probe.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use crate::terminal_emu::TerminalEmulator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ratatui::widgets::Widget` [INFO] [stderr] --> src/toast.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use ratatui::widgets::Widget; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Context` [INFO] [stderr] --> src/orca_daemon.rs:33:22 [INFO] [stderr] | [INFO] [stderr] 33 | use anyhow::{anyhow, Context, Result}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `idx` [INFO] [stderr] --> src/app.rs:438:14 [INFO] [stderr] | [INFO] [stderr] 438 | for (idx, spec) in specs.into_iter().enumerate() { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `reason` [INFO] [stderr] --> src/app.rs:1251:69 [INFO] [stderr] | [INFO] [stderr] 1251 | ... Err(DaemonError::Disconnected { reason }) => { [INFO] [stderr] | ^^^^^^ help: try ignoring the field: `reason: _` [INFO] [stderr] [INFO] [stderr] warning: field `worktrees` is never read [INFO] [stderr] --> src/app.rs:230:5 [INFO] [stderr] | [INFO] [stderr] 213 | pub struct App> { [INFO] [stderr] | --- field in this struct [INFO] [stderr] ... [INFO] [stderr] 230 | worktrees: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: field `next_client_id` is never read [INFO] [stderr] --> src/daemon_server.rs:184:5 [INFO] [stderr] | [INFO] [stderr] 178 | pub struct DaemonServer { [INFO] [stderr] | ------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 184 | next_client_id: usize, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `all_sessions_gone` is never used [INFO] [stderr] --> src/daemon_server.rs:512:8 [INFO] [stderr] | [INFO] [stderr] 190 | impl DaemonServer { [INFO] [stderr] | ----------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 512 | fn all_sessions_gone(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `encode_frame` is never used [INFO] [stderr] --> src/orca_daemon.rs:199:4 [INFO] [stderr] | [INFO] [stderr] 199 | fn encode_frame(ftype: FrameType, payload: &[u8]) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `client_id` is never read [INFO] [stderr] --> src/orca_daemon.rs:361:5 [INFO] [stderr] | [INFO] [stderr] 357 | pub struct DaemonClient { [INFO] [stderr] | ------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 361 | client_id: String, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `synth_ansi` is never used [INFO] [stderr] --> src/perf_probe.rs:30:4 [INFO] [stderr] | [INFO] [stderr] 30 | fn synth_ansi(mb: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: direct cast of function item into an integer [INFO] [stderr] --> src/cli.rs:451:39 [INFO] [stderr] | [INFO] [stderr] 451 | let handler = sigterm_handler as usize; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stderr] help: first cast to a pointer `as *const ()` [INFO] [stderr] | [INFO] [stderr] 451 | let handler = sigterm_handler as *const () as usize; [INFO] [stderr] | ++++++++++++ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/cli.rs:456:33 [INFO] [stderr] | [INFO] [stderr] 456 | if let Some(flag) = &SHUTDOWN_FLAG { [INFO] [stderr] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stderr] help: use `&raw const` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 456 | if let Some(flag) = &raw const SHUTDOWN_FLAG { [INFO] [stderr] | +++++++++ [INFO] [stderr] [INFO] [stderr] warning: `orcatui` (lib) generated 25 warnings (run `cargo fix --lib -p orcatui` to apply 17 suggestions) [INFO] [stderr] warning: unused imports: `Constraint` and `Layout` [INFO] [stderr] --> examples/screenshot.rs:8:34 [INFO] [stderr] | [INFO] [stderr] 8 | use ratatui::layout::{Alignment, Constraint, Layout, Rect}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/perf_probe.rs:114:13 [INFO] [stderr] | [INFO] [stderr] 114 | let mut backend = TestBackend::new(200, 50); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `orcatui` (example "screenshot") generated 1 warning (run `cargo fix --example "screenshot" -p orcatui` to apply 1 suggestion) [INFO] [stderr] warning: `orcatui` (lib test) generated 15 warnings (14 duplicates) (run `cargo fix --lib -p orcatui --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.19s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/orcatui-46ee7115866aee89) [INFO] [stdout] [INFO] [stdout] running 436 tests [INFO] [stdout] test agent::tests::from_command_matches_basename_for_paths ... ok [INFO] [stdout] test activity::tests::render_line_tool_with_and_without_input ... ok [INFO] [stdout] test agent::tests::from_command_unknown_is_generic_with_basename_name ... ok [INFO] [stdout] test agent::tests::new_agents_classify_from_binary ... ok [INFO] [stdout] test activity::tests::capacity_is_enforced_and_oldest_evicted ... ok [INFO] [stdout] test agent::tests::known_binary_names ... ok [INFO] [stdout] test agent::tests::from_command_empty_is_generic ... ok [INFO] [stdout] test agent::tests::status_failed_overrides_everything ... ok [INFO] [stdout] test agent::tests::status_icons_match_sidebar_glyphs ... ok [INFO] [stdout] test agent::tests::state_colors_and_icons ... ok [INFO] [stdout] test agent::tests::status_each_osc_state_maps_correctly ... ok [INFO] [stdout] test agent::tests::all_known_excludes_generic ... ok [INFO] [stdout] test activity::tests::record_appends_and_recent_is_newest_first ... ok [INFO] [stdout] test agent::tests::display_names ... ok [INFO] [stdout] test activity::tests::render_line_state_contains_arrow ... ok [INFO] [stdout] test activity::tests::timestamp_formatting_is_deterministic ... ok [INFO] [stdout] test agent::tests::from_command_matches_known_binary ... ok [INFO] [stdout] test activity::tests::agent_accessor_works_for_all_variants ... ok [INFO] [stdout] test agent::tests::status_interrupted_derived_from_osc ... ok [INFO] [stdout] test agent::tests::status_lifecycle_fallback_idle_to_idle ... ok [INFO] [stdout] test agent::tests::status_labels_are_orca_vocabulary ... ok [INFO] [stdout] test agent::tests::status_lifecycle_fallback_done_to_done ... ok [INFO] [stdout] test agent::tests::status_lifecycle_fallback_running_to_working ... ok [INFO] [stdout] test agent::tests::status_priority_ordering ... ok [INFO] [stdout] test agent::tests::status_unknown_osc_string_falls_back_to_lifecycle ... ok [INFO] [stdout] test agent::tests::status_is_active_expectations ... ok [INFO] [stdout] test app::tests::apply_update_exit_zero_is_done_nonzero_is_failed ... ok [INFO] [stdout] test app::tests::activity_log_records_state_transition ... ok [INFO] [stdout] test app::tests::apply_update_exit_is_idempotent_once_terminal ... ok [INFO] [stdout] test app::tests::activity_overlay_toggles_with_a_key ... ok [INFO] [stdout] test activity::tests::render_line_error_contains_error_marker ... ok [INFO] [stdout] test app::tests::apply_update_output_feeds_the_matching_pane ... ok [INFO] [stdout] test app::tests::apply_update_state_sets_pane_state ... ok [INFO] [stdout] test app::tests::close_first_pane_survivor_still_receives_output_by_stable_id ... ok [INFO] [stdout] test agent::tests::status_tally_counts_each_bucket ... ok [INFO] [stdout] test activity::tests::cap_is_clamped_to_at_least_one ... ok [INFO] [stdout] test app::tests::close_last_pane_clamps_focus_to_new_last ... ok [INFO] [stdout] test agent::tests::status_tally_empty_is_all_zero ... ok [INFO] [stdout] test app::tests::drain_bus_applies_queued_updates ... ok [INFO] [stdout] test app::tests::ctrl_b_toggles_sidebar_visibility ... ok [INFO] [stdout] test app::tests::close_all_panes_empties_state_and_resets_mode ... ok [INFO] [stdout] test app::tests::forward_key_to_agent_ctrl_chars_are_noop_with_no_session ... ok [INFO] [stdout] test agent::tests::detect_installed_returns_subset_and_never_panics ... ok [INFO] [stdout] test app::tests::apply_update_output_feeds_content_and_ignores_out_of_range_pane_id ... ok [INFO] [stdout] test app::tests::focus_next_and_prev_wrap_around ... ok [INFO] [stdout] test app::tests::forward_key_to_agent_is_a_noop_with_no_live_session ... ok [INFO] [stdout] test app::tests::forward_key_to_agent_special_keys_are_noop_with_no_session ... ok [INFO] [stdout] test app::tests::handle_event_other_event_is_noop ... ok [INFO] [stdout] test app::tests::handle_event_resize_is_a_noop ... ok [INFO] [stdout] test app::tests::handle_mouse_does_not_panic_when_focus_is_out_of_range ... ok [INFO] [stdout] test app::tests::handle_mouse_scroll_forwards_pageup_in_alt_screen ... ok [INFO] [stdout] test app::tests::handle_mouse_scroll_moves_focused_pane_scrollback ... ok [INFO] [stdout] test app::tests::custom_command_modal_types_and_spawns ... ok [INFO] [stdout] test app::tests::jump_palette_enter_with_no_matches_keeps_focus ... ok [INFO] [stdout] test app::tests::handle_event_mouse_routes_to_handle_mouse ... ok [INFO] [stdout] test app::tests::jump_palette_filters_and_focuses_on_enter ... ok [INFO] [stdout] test app::tests::handle_key_mode_switch_ctrl_q_quit_and_pane_focus ... ok [INFO] [stdout] test app::tests::jump_palette_backspace_and_navigation_clamp ... ok [INFO] [stdout] test app::tests::mouse_down_focuses_without_starting_a_selection ... ok [INFO] [stdout] test app::tests::focus_directional_clamps_at_grid_boundaries ... ok [INFO] [stdout] test app::tests::handle_event_key_release_does_not_trigger_handle_key ... ok [INFO] [stdout] test app::tests::focus_directional_moves_focus_on_a_grid ... ok [INFO] [stdout] test app::tests::forward_key_to_agent_alt_char_is_noop_with_no_session ... ok [INFO] [stdout] test app::tests::mouse_drag_extends_selection ... ok [INFO] [stdout] test app::tests::mouse_up_clears_selection ... ok [INFO] [stdout] test app::tests::dashboard_groups_panes_by_status_bucket ... ok [INFO] [stdout] test app::tests::mouse_click_without_drag_does_not_select_or_copy ... ok [INFO] [stdout] test app::tests::orchestration_drained_reflects_coordinator_state ... ok [INFO] [stdout] test app::tests::mouse_down_outside_any_pane_is_noop ... ok [INFO] [stdout] test app::tests::parse_stream_data_routes_ndjson_and_falls_back_to_pane_zero ... ok [INFO] [stdout] test app::tests::parse_stream_event_extracts_exit_code_and_ignores_non_exit ... ok [INFO] [stdout] test app::tests::publish_snapshot_broadcasts_pane_states ... ok [INFO] [stdout] test app::tests::close_pane_then_resize_survivor_content_refreshes ... ok [INFO] [stdout] test app::tests::send_to_focused_is_silent_noop_with_no_session ... ok [INFO] [stdout] test app::tests::settings_overlay_toggles_live_and_closes_on_esc ... ok [INFO] [stdout] test app::tests::reconnect_schedules_then_respawns_after_backoff ... ok [INFO] [stdout] test app::tests::sidebar_enter_activity_opens_overlay ... ok [INFO] [stdout] test app::tests::render_with_sidebar_shows_connection_state ... ok [INFO] [stdout] test app::tests::render_spawn_picker_does_not_panic ... ok [INFO] [stdout] test app::tests::close_then_spawn_assigns_fresh_pane_id_from_counter ... ok [INFO] [stdout] test app::tests::parallel_vecs_stay_in_lockstep_across_close_spawn_close ... ok [INFO] [stdout] test app::tests::sidebar_enter_settings_opens_overlay ... ok [INFO] [stdout] test app::tests::sidebar_enter_tasks_opens_repo_input ... ok [INFO] [stdout] test app::tests::reap_exited_marks_done_and_takes_the_slot ... ok [INFO] [stdout] test app::tests::render_with_sidebar_hidden_still_works ... ok [INFO] [stdout] test app::tests::sidebar_esc_returns_to_normal ... ok [INFO] [stdout] test app::tests::all_sessions_gone_reflects_live_slots ... ok [INFO] [stdout] test app::tests::sidebar_nav_moves_with_arrows ... ok [INFO] [stdout] test app::tests::spawn_options_includes_custom_command_entry ... ok [INFO] [stdout] test app::tests::spawn_options_lists_all_known_agents ... ok [INFO] [stdout] test app::tests::spawn_options_marks_uninstalled_agents ... ok [INFO] [stdout] test app::tests::render_draws_pane_headers_content_and_footer ... ok [INFO] [stdout] test app::tests::sidebar_mode_enters_with_ctrl_s ... ok [INFO] [stdout] test bus::tests::forward_session_pumps_output_then_exits ... ok [INFO] [stdout] test bus::tests::channel_delivers_in_order_then_disconnects ... ok [INFO] [stdout] test app::tests::render_with_toasts_overlay_does_not_panic ... ok [INFO] [stdout] test cli::tests::parse_mobile_default_and_custom_port ... ok [INFO] [stdout] test app::tests::render_resizes_each_pane_viewport_to_its_inner_area ... ok [INFO] [stdout] test cli::tests::parse_orchestrate_spec_and_parallel ... ok [INFO] [stdout] test cli::tests::parse_orchestrate_issues_overrides_spec ... ok [INFO] [stdout] test bus::tests::send_from_thread_arrives_in_order_on_main ... ok [INFO] [stdout] test cli::tests::parse_prs_and_issues_repo ... ok [INFO] [stdout] test app::tests::toggle_pin_flips_the_focused_pane_pinned_flag ... ok [INFO] [stdout] test cli::tests::prs_without_repo_is_a_required_arg_error ... ok [INFO] [stdout] test cli::tests::run_captures_separator_tokens_verbatim ... ok [INFO] [stdout] test app::tests::ctrl_n_spawns_a_new_pane_and_keeps_parallel_vecs_aligned ... ok [INFO] [stdout] test cli::tests::parse_run_defaults_when_flags_absent ... ok [INFO] [stdout] test cli::tests::parse_run_with_all_flags ... ok [INFO] [stdout] test cli::tests::smoke_parse_three_agents_via_separator ... ok [INFO] [stdout] test cli::tests::split_agents_empty_input_yields_nothing ... ok [INFO] [stdout] test cli::tests::split_agents_no_separator_is_one_per_token ... ok [INFO] [stdout] test cli::tests::version_flag_is_recognized ... ok [INFO] [stdout] test cli::tests::split_agents_drops_empty_segments ... ok [INFO] [stdout] test cli::tests::run_without_command_parses_empty_then_guarded_at_dispatch ... ok [INFO] [stdout] test clipboard::tests::which_returns_true_for_a_common_binary_if_present ... ok [INFO] [stdout] test config::tests::all_theme_accessors_match_defaults ... ok [INFO] [stdout] test config::tests::bad_theme_hex_falls_back_safely ... ok [INFO] [stdout] test cli::tests::unknown_subcommand_is_an_error ... ok [INFO] [stdout] test clipboard::tests::copy_does_not_panic_without_tool ... ok [INFO] [stdout] test config::tests::daemon_config_defaults ... ok [INFO] [stdout] test clipboard::tests::which_returns_false_for_nonexistent_binary ... ok [INFO] [stdout] test config::tests::defaults_are_orca_dark ... ok [INFO] [stdout] test config::tests::missing_file_uses_default ... ok [INFO] [stdout] test config::tests::load_round_trips_full_toml ... ok [INFO] [stdout] test config::tests::parse_hex_formats ... ok [INFO] [stdout] test config::tests::load_or_default_and_config_path_branches ... ok [INFO] [stdout] test config::tests::save_returns_err_without_config_dir ... ok [INFO] [stdout] test config::tests::serde_default_fill_works_for_partial_toml ... ok [INFO] [stdout] test cli::tests::split_agents_single_token_no_separator ... ok [INFO] [stdout] test cli::tests::split_agents_only_separators_yields_nothing ... ok [INFO] [stdout] test config::tests::theme_presets_are_distinct_and_named ... ok [INFO] [stdout] test coordinator::tests::add_task_assigns_dense_ids_and_starts_pending ... ok [INFO] [stdout] test coordinator::tests::all_done_vacuously_true_with_no_tasks ... ok [INFO] [stdout] test config::tests::new_theme_tokens_round_trip_through_toml ... ok [INFO] [stdout] test coordinator::tests::decision_gate_ask_then_answer_round_trip ... ok [INFO] [stdout] test coordinator::tests::all_done_true_only_when_every_task_terminal ... ok [INFO] [stdout] test coordinator::tests::default_equals_new ... ok [INFO] [stdout] test config::tests::save_round_trips_through_load ... ok [INFO] [stdout] test cli::tests::split_agents_with_separator_is_segments ... ok [INFO] [stdout] test coordinator::tests::dependency_gating_blocks_until_dep_done ... ok [INFO] [stdout] test app::tests::render_handles_many_panes_without_panic ... ok [INFO] [stdout] test clipboard::tests::copy_error_type_is_display_and_error ... ok [INFO] [stdout] test app::tests::zoom_render_at_degenerate_size_does_not_panic ... ok [INFO] [stdout] test coordinator::tests::failed_path_sets_failed_status ... ok [INFO] [stdout] test coordinator::tests::dispatch_next_returns_none_with_no_agents ... ok [INFO] [stdout] test coordinator::tests::dispatch_picks_lowest_id_ready_task_first ... ok [INFO] [stdout] test coordinator::tests::dispatch_skips_dispatched_and_in_progress_when_picking_next ... ok [INFO] [stdout] test app::tests::sidebar_nav_popup_renders_items_and_selection ... ok [INFO] [stdout] test coordinator::tests::failed_dependency_does_not_unblock ... ok [INFO] [stdout] test coordinator::tests::plan_from_spec_yields_one_task_per_non_empty_line ... ok [INFO] [stdout] test coordinator::tests::report_done_appends_inbox_message_from_assignee ... ok [INFO] [stdout] test coordinator::tests::dispatch_next_assigns_first_agent_and_moves_to_dispatched ... ok [INFO] [stdout] test daemon_server::tests::base64_roundtrip_for_pty_data ... ok [INFO] [stdout] test coordinator::tests::dispatch_next_returns_none_when_nothing_pending ... ok [INFO] [stdout] test daemon_server::tests::daemon_server_creates_and_removes_socket ... ok [INFO] [stdout] test coordinator::tests::happy_path_transitions_pending_dispatched_inprogress_done ... ok [INFO] [stdout] test coordinator::tests::inbox_accumulates_across_messages ... ok [INFO] [stdout] test coordinator::tests::plan_chain_makes_each_task_depend_on_the_previous ... ok [INFO] [stdout] test coordinator::tests::plan_from_spec_empty_spec_yields_no_tasks ... ok [INFO] [stdout] test daemon_server::tests::client_msg_create_deserializes ... ok [INFO] [stdout] test app::tests::zoom_then_esc_then_chat_then_gateway_does_not_panic ... ok [INFO] [stdout] test coordinator::tests::unknown_dependency_id_blocks ... ok [INFO] [stdout] test daemon_server::tests::attach_client_protocol_hello_roundtrip ... ok [INFO] [stdout] test daemon_server::tests::server_msg_output_round_trips ... ok [INFO] [stdout] test hangul::tests::compose_syllable_an ... ok [INFO] [stdout] test hangul::tests::compose_syllable_lone_precomposed_returns_itself ... ok [INFO] [stdout] test hangul::tests::compose_syllable_returns_none_for_ascii ... ok [INFO] [stdout] test hangul::tests::compose_syllable_lv_without_trail ... ok [INFO] [stdout] test daemon_server::tests::session_info_serializes ... ok [INFO] [stdout] test hangul::tests::compose_syllable_returns_none_for_empty ... ok [INFO] [stdout] test hangul::tests::compose_syllable_returns_none_for_lone_consonant_or_vowel ... ok [INFO] [stdout] test daemon_server::tests::default_socket_path_uses_xdg_runtime_dir ... ok [INFO] [stdout] test integrations::tests::github_source_round_trip_repos_through_trait ... ok [INFO] [stdout] test integrations::tests::issue_to_prompt_includes_number_title_and_trimmed_body ... ok [INFO] [stdout] test integrations::tests::issue_to_prompt_preserves_multiline_body_structure ... ok [INFO] [stdout] test integrations::tests::parse_issue_json_empty_array_yields_empty_vec ... ok [INFO] [stdout] test integrations::tests::parse_issue_json_handles_body_present_and_absent ... ok [INFO] [stdout] test integrations::tests::fetch_issue_errors_for_nonexistent_repo ... ok [INFO] [stdout] test integrations::tests::parse_issue_json_malformed_is_error ... ok [INFO] [stdout] test integrations::tests::parse_issue_json_null_body_is_none ... ok [INFO] [stdout] test hangul::tests::is_compat_jamo_true_for_jamo_false_for_ascii ... ok [INFO] [stdout] test hangul::tests::compose_syllable_returns_none_for_multi_syllable ... ok [INFO] [stdout] test integrations::tests::linear_source_offline_behaviour_without_and_with_token ... ok [INFO] [stdout] test integrations::tests::parse_pull_request_json_allows_missing_headrefname ... ok [INFO] [stdout] test integrations::tests::issue_to_prompt_omits_body_section_when_empty_or_missing ... ok [INFO] [stdout] test integrations::tests::parse_pull_request_json_empty_array_yields_empty_vec ... ok [INFO] [stdout] test app::tests::should_auto_exit_waits_for_idle_unzoomed_normal ... ok [INFO] [stdout] test integrations::tests::list_pull_requests_errors_for_nonexistent_repo ... ok [INFO] [stdout] test integrations::tests::github_source_list_open_errors_for_nonexistent_repo ... ok [INFO] [stdout] test integrations::tests::parse_pull_request_json_malformed_is_error ... ok [INFO] [stdout] test integrations::tests::reporef_display_format_matches_owner_slash_name ... ok [INFO] [stdout] test integrations::tests::reporef_parse_rejects_invalid_inputs ... ok [INFO] [stdout] test integrations::tests::parse_pull_request_json_maps_headrefname_to_branch ... ok [INFO] [stdout] test integrations::tests::reporef_parse_round_trips_through_display ... ok [INFO] [stdout] test app::tests::render_shows_new_content_and_retains_old ... ok [INFO] [stdout] test integrations::tests::pr_to_prompt_includes_number_title_and_pr_suffix ... ok [INFO] [stdout] test layout::tests::zero_panes_is_empty ... ok [INFO] [stdout] test mobile::tests::agent_snapshot_serializes_expected_fields ... ok [INFO] [stdout] test mobile::tests::check_auth_is_not_bypassed_by_substring_param_name ... ok [INFO] [stdout] test mobile::tests::check_auth_rejects_mismatched_token ... ok [INFO] [stdout] test integrations::tests::list_issues_errors_for_nonexistent_repo ... ok [INFO] [stdout] test mobile::tests::check_auth_matches_exact_token ... ok [INFO] [stdout] test mobile::tests::random_token_is_16_hex_chars_and_nonempty ... ok [INFO] [stdout] test mobile::tests::check_auth_rejects_absent_token ... ok [INFO] [stdout] test mobile::tests::random_token_is_likely_unique_across_calls ... ok [INFO] [stdout] test integrations::tests::run_gh_errors_for_bogus_invocation ... ok [INFO] [stdout] test layout::tests::three_panes_two_in_first_row_one_in_second ... ok [INFO] [stdout] test layout::tests::single_pane_covers_the_whole_area ... ok [INFO] [stdout] test app::tests::render_does_not_panic_when_terminal_shrinks_tiny ... ok [INFO] [stdout] test layout::tests::four_panes_form_a_two_by_two_grid ... ok [INFO] [stdout] test app::tests::spawn_one_failed_command_adds_failed_pane_and_keeps_vecs_aligned ... ok [INFO] [stdout] test orca_daemon::tests::daemon_response_error_deserializes ... ok [INFO] [stdout] test orca_daemon::tests::frame_encode_decode_roundtrip ... ok [INFO] [stdout] test orca_daemon::tests::daemon_request_serializes_with_correct_fields ... ok [INFO] [stdout] test mobile::tests::snapshot_json_round_trips ... ok [INFO] [stdout] test orca_daemon::tests::hello_message_serializes_correctly ... ok [INFO] [stdout] test orca_daemon::tests::daemon_response_ok_with_payload_deserializes ... ok [INFO] [stdout] test mobile::tests::snapshot_json_empty_is_brackets ... ok [INFO] [stdout] test orca_daemon::tests::daemon_connect_options_defaults ... ok [INFO] [stdout] test orca_daemon::tests::frame_bad_type_byte ... ok [INFO] [stdout] test orca_daemon::tests::ndjson_read_one_line ... ok [INFO] [stdout] test orca_daemon::tests::read_exact_eof_is_disconnected_not_io ... ok [INFO] [stdout] test orca_daemon::tests::ndjson_encode_includes_newline ... ok [INFO] [stdout] test orca_daemon::tests::hello_message_stream_serializes ... ok [INFO] [stdout] test orca_daemon::tests::frame_oversize_rejected ... ok [INFO] [stdout] test orca_daemon::tests::hello_response_rejection_deserializes ... ok [INFO] [stdout] test orca_daemon::tests::hello_response_ok_with_identity_deserializes ... ok [INFO] [stdout] test orca_daemon::tests::next_id_increments ... ok [INFO] [stdout] test orca_daemon::tests::ping_convenience_method_succeeds ... ok [INFO] [stdout] test orca_daemon::tests::read_exact_or_disconnect_connection_reset_is_disconnected ... ok [INFO] [stdout] test orca_daemon::tests::read_frame_eof_mid_payload_is_disconnected ... ok [INFO] [stdout] test orca_daemon::tests::list_sessions_returns_payload ... ok [INFO] [stdout] test orca_daemon::tests::read_stream_frame_on_socket_pair ... ok [INFO] [stdout] test orca_daemon::tests::read_stream_frame_on_eof_returns_disconnected ... ok [INFO] [stdout] test orca_daemon::tests::take_stream_returns_some_then_none ... ok [INFO] [stdout] test osc::tests::basic_extraction_bel ... ok [INFO] [stdout] test osc::tests::consecutive_esc_emits_first_then_starts_new ... ok [INFO] [stdout] test osc::tests::cross_chunk_split ... ok [INFO] [stdout] test osc::tests::csi_sequence_passes_through ... ok [INFO] [stdout] test osc::tests::interrupted_state_round_trips ... ok [INFO] [stdout] test osc::tests::full_payload_round_trips ... ok [INFO] [stdout] test osc::tests::invalid_utf8_payload_is_dropped ... ok [INFO] [stdout] test osc::tests::lone_esc_then_plain_byte_passes_through ... ok [INFO] [stdout] test osc::tests::malformed_json_is_dropped_no_panic ... ok [INFO] [stdout] test osc::tests::multiple_sequences_one_chunk ... ok [INFO] [stdout] test osc::tests::near_miss_osc_param_passes_through ... ok [INFO] [stdout] test osc::tests::no_esc_passes_through ... ok [INFO] [stdout] test osc::tests::non_9999_osc_passes_through ... ok [INFO] [stdout] test orca_daemon::tests::rpc_returns_protocol_error_on_generic_failure ... ok [INFO] [stdout] test osc::tests::osc_non_9999_empty_bel_passes_through ... ok [INFO] [stdout] test osc::tests::osc_non_9999_param_st_passes_through ... ok [INFO] [stdout] test osc::tests::partial_esc_at_chunk_end ... ok [INFO] [stdout] test osc::tests::payload_with_unknown_fields_still_parses ... ok [INFO] [stdout] test orca_daemon::tests::uuid_v4_simple_has_v4_marker_and_is_unique ... ok [INFO] [stdout] test osc::tests::scanner_default_works ... ok [INFO] [stdout] test osc::tests::non_9999_osc_st_terminator_passes_through ... ok [INFO] [stdout] test osc::tests::osc_9999_empty_bel_terminator_no_activity ... ok [INFO] [stdout] test osc::tests::osc_9999_empty_st_terminator_no_activity ... ok [INFO] [stdout] test orca_daemon::tests::rpc_skips_out_of_order_responses ... ok [INFO] [stdout] test osc::tests::stray_esc_in_9999_payload_drops_partial ... ok [INFO] [stdout] test orca_daemon::tests::rpc_round_trip_returns_payload ... ok [INFO] [stdout] test osc::tests::stray_esc_in_osc_param_preserves_bytes ... ok [INFO] [stdout] test pane::tests::clear_selection_empties ... ok [INFO] [stdout] test pane::tests::debug_impl_shows_key_fields ... ok [INFO] [stdout] test pane::tests::feed_with_osc9999_activity_sets_activity_field ... ok [INFO] [stdout] test pane::tests::map_style_combines_flags ... ok [INFO] [stdout] test pane::tests::pane_lifecycle_and_scroll ... ok [INFO] [stdout] test osc::tests::stray_esc_in_passthrough_osc_preserves_bytes ... ok [INFO] [stdout] test osc::tests::tool_alias_accepted ... ok [INFO] [stdout] test pane::tests::map_fg_map_bg_default_indexed_rgb ... ok [INFO] [stdout] test pane::tests::render_focused_vs_unfocused_border_color ... ok [INFO] [stdout] test pane::tests::render_does_not_panic_on_size_mismatch ... ok [INFO] [stdout] test pane::tests::render_paints_fed_text_into_buffer ... ok [INFO] [stdout] test pane::tests::scrollback_render_shifts_to_older_content ... ok [INFO] [stdout] test pane::tests::selected_text_extracts_single_row ... ok [INFO] [stdout] test perf_probe::_duration_used ... ignored, sanity: not a perf test, just keeps the Duration import used [INFO] [stdout] test pane::tests::selected_text_none_without_selection ... ok [INFO] [stdout] test osc::tests::st_terminator ... ok [INFO] [stdout] test perf_probe::perf_frame_scheduler_decision_cost ... ignored, performance probe — run with --ignored --nocapture [INFO] [stdout] test perf_probe::perf_n_pane_render ... ignored, performance probe — run with --ignored --nocapture [INFO] [stdout] test perf_probe::perf_terminal_emu_ingest_throughput ... ignored, performance probe — run with --ignored --nocapture [INFO] [stdout] test orca_daemon::tests::identity_and_endpoint_accessors ... ok [INFO] [stdout] test orca_daemon::tests::frame_zero_payload ... ok [INFO] [stdout] test orca_daemon::tests::ndjson_eof_returns_disconnected ... ok [INFO] [stdout] test orca_daemon::tests::rpc_returns_session_not_found_when_error_mentions_it ... ok [INFO] [stdout] test osc::tests::st_terminator_split_across_chunks ... ok [INFO] [stdout] test pty_session::tests::missing_command_errors ... ok [INFO] [stdout] test pane::tests::selection_highlight_reverses_cells_in_range ... ok [INFO] [stdout] test pane::tests::selected_text_normalizes_reversed_drag ... ok [INFO] [stdout] test orca_daemon::tests::daemon_error_display_is_human_readable ... ok [INFO] [stdout] test perf_probe::synth_ansi_builds_realistic_payload ... ok [INFO] [stdout] test query::tests::csi_p_final_without_dollar_no_response ... ok [INFO] [stdout] test query::tests::da1_query_split_across_chunks_still_answered ... ok [INFO] [stdout] test query::tests::da2_query_answered ... ok [INFO] [stdout] test query::tests::da1_query_answered ... ok [INFO] [stdout] test query::tests::dcs_with_stray_esc_then_st_still_answered ... ok [INFO] [stdout] test query::tests::decrqm_private_mode_answered_not_recognized ... ok [INFO] [stdout] test query::tests::dcs_terminfo_request_answered_not_found ... ok [INFO] [stdout] test query::tests::non_query_csi_with_high_final_byte_no_response ... ok [INFO] [stdout] test query::tests::multiple_queries_one_chunk_all_answered ... ok [INFO] [stdout] test query::tests::decrqm_non_private_mode_no_response ... ok [INFO] [stdout] test mobile::tests::serve_rejects_unauthorized_client ... ok [INFO] [stdout] test mobile::tests::serve_broadcasts_snapshots_to_authorized_client ... ok [INFO] [stdout] test query::tests::osc12_cursor_query_returns_theme_accent_color ... ok [INFO] [stdout] test query::tests::osc10_fg_query_returns_theme_fg_color ... ok [INFO] [stdout] test query::tests::osc11_bg_query_returns_theme_bg_color ... ok [INFO] [stdout] test query::tests::osc_query_with_stray_esc_no_response ... ok [INFO] [stdout] test query::tests::dcs_non_terminfo_request_no_response ... ok [INFO] [stdout] test pty_session::tests::spawning_nonexistent_binary_returns_error ... ok [INFO] [stdout] test query::tests::plain_text_and_non_query_escapes_produce_no_response ... ok [INFO] [stdout] test query::tests::query_responder_default_equals_new ... ok [INFO] [stdout] test query::tests::osc_color_unsupported_param_no_response ... ok [INFO] [stdout] test pty_session::tests::spawn_printf_and_capture_cells ... ok [INFO] [stdout] test query::tests::osc_color_st_terminator_also_handled ... ok [INFO] [stdout] test query::tests::query_split_across_chunks_is_still_answered ... ok [INFO] [stdout] test pty_session::tests::process_id_and_is_child_gone_reflect_state ... ok [INFO] [stdout] test pty_session::tests::spawn_with_cwd_runs_child_in_that_directory ... ok [INFO] [stdout] test query::tests::osc_color_set_command_is_not_a_query ... ok [INFO] [stdout] test query::tests::two_byte_escape_no_response ... ok [INFO] [stdout] test scheduler::tests::poll_timeout_when_idle_is_max_idle_poll ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_degenerate_area_never_panics ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_is_a_bordered_panel_box ... ok [INFO] [stdout] test scheduler::tests::is_idle_flips_after_idle_threshold ... ok [INFO] [stdout] test scheduler::tests::poll_timeout_clamps_near_boundary_to_one_ms ... ok [INFO] [stdout] test scheduler::tests::skipping_raises_frames_skipped_not_rendered ... ok [INFO] [stdout] test scheduler::tests::poll_timeout_when_active_is_remaining_to_next_frame ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_one_line_on_narrow ... ok [INFO] [stdout] test scheduler::tests::should_render_is_false_right_after_record_render ... ok [INFO] [stdout] test query::tests::rgb_of_all_named_colors_returns_sensible_values ... ok [INFO] [stdout] test pty_session::tests::resize_does_not_panic ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_truncates_long_names ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_pinned_section ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_two_line_on_wide ... ok [INFO] [stdout] test ssh::tests::backoff_for_custom_policy ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_shows_brand_and_entries ... ok [INFO] [stdout] test ssh::tests::backoff_for_attempt_1_is_base_2_is_double ... ok [INFO] [stdout] test ssh::tests::backoff_for_capped_at_max ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_zero_entries ... ok [INFO] [stdout] test ssh::tests::backoff_for_does_not_panic_on_zero ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_shows_bottom_tally ... ok [INFO] [stdout] test ssh::tests::command_vec_always_includes_batchmode_and_connecttimeout ... ok [INFO] [stdout] test ssh::tests::command_vec_full_shape_no_port_no_user_no_command ... ok [INFO] [stdout] test ssh::tests::exhausted_after_exceeding_max_attempts ... ok [INFO] [stdout] test ssh::tests::fresh_session_has_no_pending_retry ... ok [INFO] [stdout] test ssh::tests::command_vec_full_shape_with_port_and_command ... ok [INFO] [stdout] test ssh::tests::command_vec_remote_command_words_in_order_at_tail ... ok [INFO] [stdout] test sidebar::tests::render_sidebar_focused_highlight ... ok [INFO] [stdout] test scheduler::tests::should_render_is_true_one_frame_later ... ok [INFO] [stdout] test ssh::tests::command_vec_starts_with_ssh_and_has_tt ... ok [INFO] [stdout] test ssh::tests::next_retry_in_decreases_with_elapsed_time ... ok [INFO] [stdout] test ssh::tests::next_retry_in_clamps_to_zero_well_past_window ... ok [INFO] [stdout] test ssh::tests::command_vec_port_present_only_when_set ... ok [INFO] [stdout] test ssh::tests::next_retry_in_overflow_safe_on_many_failures_before_exhaustion ... ok [INFO] [stdout] test ssh::tests::next_retry_in_full_backoff_right_after_failure ... ok [INFO] [stdout] test ssh::tests::next_retry_in_zero_and_should_retry_now_when_window_elapsed ... ok [INFO] [stdout] test ssh::tests::parse_bare_host ... ok [INFO] [stdout] test ssh::tests::parse_empty_host_errors ... ok [INFO] [stdout] test ssh::tests::parse_empty_or_whitespace_errors ... ok [INFO] [stdout] test ssh::tests::parse_user_at_host ... ok [INFO] [stdout] test ssh::tests::should_retry_boundaries ... ok [INFO] [stdout] test ssh::tests::parse_user_at_host_colon_port ... ok [INFO] [stdout] test ssh::tests::success_mid_sequence_resets_backoff ... ok [INFO] [stdout] test sync::tests::batch_split_across_chunks ... ok [INFO] [stdout] test sync::tests::consecutive_esc_keeps_single_esc_buffered ... ok [INFO] [stdout] test sync::tests::dcs_sequence_passes_through_st ... ok [INFO] [stdout] test sync::tests::mid_batch_bytes_are_not_emitted ... ok [INFO] [stdout] test ssh::tests::command_vec_target_is_user_at_host_or_host ... ok [INFO] [stdout] test ssh::tests::display_formats ... ok [INFO] [stdout] test sync::tests::osc_passes_through ... ok [INFO] [stdout] test sync::tests::osc_st_termination_passes_through ... ok [INFO] [stdout] test sync::tests::osc_non_st_esc_treated_as_content ... ok [INFO] [stdout] test sync::tests::two_byte_escape_passes_through ... ok [INFO] [stdout] test ssh::tests::parse_empty_user_is_treated_as_no_user ... ok [INFO] [stdout] test ssh::tests::parse_host_colon_port_no_user ... ok [INFO] [stdout] test sync::tests::sync_batch_is_buffered_until_close_then_flushed_atomically ... ok [INFO] [stdout] test terminal_emu::tests::bold_and_underline_style_flags ... ok [INFO] [stdout] test sync::tests::nonsync_csi_passes_through ... ok [INFO] [stdout] test terminal_emu::tests::diag_alt_screen_visible ... ignored [INFO] [stdout] test terminal_emu::tests::diag_opencode_renders_in_emulator ... ignored [INFO] [stdout] test terminal_emu::tests::minimum_size_is_safe_for_wrapping_and_wide_chars ... ok [INFO] [stdout] test terminal_emu::tests::red_style_then_reset ... ok [INFO] [stdout] test ssh::tests::reconnect_default_values ... ok [INFO] [stdout] test sync::tests::csi_inside_sync_batch_buffered_until_close ... ok [INFO] [stdout] test sync::tests::dcs_inside_sync_batch_buffered_until_close ... ok [INFO] [stdout] test ssh::tests::record_failure_increments_and_success_resets ... ok [INFO] [stdout] test terminal_emu::tests::newline_and_cursor_positioning ... ok [INFO] [stdout] test terminal_emu::tests::resize_updates_size_without_panic ... ok [INFO] [stdout] test terminal_emu::tests::set_scroll_does_not_affect_subsequent_feed ... ok [INFO] [stdout] test ssh::tests::parse_trims_whitespace ... ok [INFO] [stdout] test sync::tests::plain_text_passes_through ... ok [INFO] [stdout] test terminal_emu::tests::degenerate_sizes_clamp_instead_of_panicking ... ok [INFO] [stdout] test terminal_emu::tests::set_scroll_clamps_beyond_available_history ... ok [INFO] [stdout] test terminal_emu::tests::set_scroll_shifts_the_view_into_history ... ok [INFO] [stdout] test toast::tests::constructors_set_correct_levels_and_ttls ... ok [INFO] [stdout] test toast::tests::error_toast_has_longer_ttl ... ok [INFO] [stdout] test toast::tests::fg_returns_distinct_theme_colors_per_level ... ok [INFO] [stdout] test toast::tests::push_drops_oldest_when_full ... ok [INFO] [stdout] test toast::tests::render_buf_empty_queue_is_noop ... ok [INFO] [stdout] test toast::tests::render_buf_renders_glyph_and_message ... ok [INFO] [stdout] test toast::tests::render_buf_truncates_message_to_area_width ... ok [INFO] [stdout] test toast::tests::render_buf_renders_multiple_toasts_on_separate_rows ... ok [INFO] [stdout] test terminal_emu::tests::empty_grid_is_all_defaults ... ok [INFO] [stdout] test toast::tests::render_buf_zero_height_area_is_noop ... ok [INFO] [stdout] test toast::tests::render_clamps_to_area_height ... ok [INFO] [stdout] test toast::tests::toast_expired_check ... ok [INFO] [stdout] test toast::tests::toast_queue_push_and_gc ... ok [INFO] [stdout] test toast::tests::render_via_frame_returns_expected_row_count ... ok [INFO] [stdout] test toast::tests::toast_levels_have_glyphs ... ok [INFO] [stdout] test toast::tests::toast_queue_drops_oldest_when_full ... ok [INFO] [stdout] test worktree::tests::open_errors_on_non_git_directory ... ok [INFO] [stdout] test layout::tests::split_count_and_bounds ... ok [INFO] [stdout] test pty_session::tests::kill_terminates_a_running_child ... ok [INFO] [stdout] test sync::tests::unclosed_huge_batch_flushes_for_safety ... ok [INFO] [stdout] test worktree::tests::create_for_fails_when_repo_metadata_is_gone ... ok [INFO] [stdout] test worktree::tests::prune_succeeds_on_clean_repo ... ok [INFO] [stdout] test worktree::tests::delete_branch_nonexistent_errors ... ok [INFO] [stdout] test worktree::tests::drain_into_disarms_drop_cleanup ... ok [INFO] [stdout] test worktree::tests::prune_fails_when_repo_metadata_is_gone ... ok [INFO] [stdout] test worktree::tests::short_id_is_six_hex_chars_and_varies ... ok [INFO] [stdout] test worktree::tests::slugify_basic ... ok [INFO] [stdout] test worktree::tests::slugify_empty_or_all_unsafe_falls_back ... ok [INFO] [stdout] test worktree::tests::slugify_no_leading_or_trailing_dashes ... ok [INFO] [stdout] test worktree::tests::remove_plain_directory_that_is_not_a_worktree_errors ... ok [INFO] [stdout] test worktree::tests::owned_worktrees_drop_logs_and_continues_when_cleanup_fails ... ok [INFO] [stdout] test worktree::tests::create_for_slugifies_special_characters_in_branch_and_path ... ok [INFO] [stdout] test worktree::tests::owned_worktrees_debug_formats_without_panicking ... ok [INFO] [stdout] test worktree::tests::create_for_produces_existing_worktree_on_expected_branch ... ok [INFO] [stdout] test worktree::tests::remove_when_already_gone_is_success ... ok [INFO] [stdout] test worktree::tests::owned_worktrees_drop_removes_every_worktree ... ok [INFO] [stdout] test worktree::tests::repo_root_resolves_true_toplevel_from_subdir ... ok [INFO] [stdout] test worktree::tests::list_shows_every_created_worktree ... ok [INFO] [stdout] test worktree::tests::owned_worktrees_manager_and_entries_accessors ... ok [INFO] [stdout] test worktree::tests::remove_unregisters_worktree_then_deletes_branch ... ok [INFO] [stdout] test pty_session::tests::try_wait_none_while_running_then_some_after_exit ... ok [INFO] [stdout] test orca_daemon::tests::read_ndjson_line_rejects_oversized_line ... ok [INFO] [stdout] test pty_session::tests::write_bytes_round_trip ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 430 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 2.59s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/orcatui-2dec298f197f10e9) [INFO] [stdout] [INFO] [stderr] Running unittests src/bin/inject.rs (/opt/rustwide/target/debug/deps/orcatui_inject-5dec4c3cf491f93c) [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test tests::parse_size_bad ... ok [INFO] [stdout] test tests::parse_resize_bad ... ok [INFO] [stdout] test tests::parse_size_ok ... ok [INFO] [stderr] Doc-tests orcatui [INFO] [stdout] test tests::parse_resize_ok ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/hangul.rs - hangul::compose_syllable (line 23) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.66s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f", kill_on_drop: false }` [INFO] [stdout] b85110fb8c97691e9f66b17214ddb852b69a3fba3cbbc5f42f37ea4b4fe3bc0f