[INFO] cloning repository https://github.com/oakoss/linesmith
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/oakoss/linesmith" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Foakoss%2Flinesmith", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Foakoss%2Flinesmith'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 864d73ebfd32ac8fd2f64163e1620d46586951b1
[INFO] testing oakoss/linesmith against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Foakoss%2Flinesmith" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/oakoss/linesmith
[INFO] finished tweaking git repo https://github.com/oakoss/linesmith
[INFO] tweaked toml for git repo https://github.com/oakoss/linesmith written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/oakoss/linesmith on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/oakoss/linesmith 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.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded terminal_size v0.4.4
[INFO] [stderr]   Downloaded supports-hyperlinks v3.2.0
[INFO] [stderr]   Downloaded supports-color v3.0.2
[INFO] [stderr]   Downloaded is_ci v1.2.0
[INFO] [stderr]   Downloaded assert-json-diff v2.0.2
[INFO] [stderr]   Downloaded gix-utils v0.3.2
[INFO] [stderr]   Downloaded gix-trace v0.1.19
[INFO] [stderr]   Downloaded gix-quote v0.7.1
[INFO] [stderr]   Downloaded gix-bitmap v0.3.1
[INFO] [stderr]   Downloaded gix-config-value v0.18.0
[INFO] [stderr]   Downloaded gix-shallow v0.12.0
[INFO] [stderr]   Downloaded gix-actor v0.41.0
[INFO] [stderr]   Downloaded gix-sec v0.14.0
[INFO] [stderr]   Downloaded gix-lock v23.0.0
[INFO] [stderr]   Downloaded strum v0.27.2
[INFO] [stderr]   Downloaded lru v0.16.4
[INFO] [stderr]   Downloaded ratatui-termwiz v0.1.0
[INFO] [stderr]   Downloaded gix-worktree-stream v0.32.0
[INFO] [stderr]   Downloaded gix-validate v0.11.1
[INFO] [stderr]   Downloaded gix-command v0.9.0
[INFO] [stderr]   Downloaded gix-glob v0.26.0
[INFO] [stderr]   Downloaded gix-ignore v0.21.0
[INFO] [stderr]   Downloaded gix-chunk v0.7.1
[INFO] [stderr]   Downloaded gix-traverse v0.57.0
[INFO] [stderr]   Downloaded gix-revwalk v0.31.0
[INFO] [stderr]   Downloaded gix-hashtable v0.15.0
[INFO] [stderr]   Downloaded gix-pathspec v0.18.0
[INFO] [stderr]   Downloaded gix-negotiate v0.31.0
[INFO] [stderr]   Downloaded strum_macros v0.27.2
[INFO] [stderr]   Downloaded gix-fs v0.21.1
[INFO] [stderr]   Downloaded gix-packetline v0.21.3
[INFO] [stderr]   Downloaded gix-worktree v0.52.0
[INFO] [stderr]   Downloaded gix-tempfile v23.0.0
[INFO] [stderr]   Downloaded gix-submodule v0.30.0
[INFO] [stderr]   Downloaded gix-archive v0.32.0
[INFO] [stderr]   Downloaded lexopt v0.3.2
[INFO] [stderr]   Downloaded ratatui-macros v0.7.0
[INFO] [stderr]   Downloaded ratatui-crossterm v0.1.0
[INFO] [stderr]   Downloaded gix-hash v0.25.0
[INFO] [stderr]   Downloaded gix-error v0.2.3
[INFO] [stderr]   Downloaded gix-commitgraph v0.37.0
[INFO] [stderr]   Downloaded gix-worktree-state v0.30.0
[INFO] [stderr]   Downloaded gix-url v0.36.0
[INFO] [stderr]   Downloaded gix-refspec v0.41.0
[INFO] [stderr]   Downloaded gix-revision v0.45.0
[INFO] [stderr]   Downloaded dialoguer v0.12.0
[INFO] [stderr]   Downloaded smartstring v1.0.1
[INFO] [stderr]   Downloaded gix-date v0.15.3
[INFO] [stderr]   Downloaded gix-attributes v0.33.0
[INFO] [stderr]   Downloaded gix-blame v0.13.0
[INFO] [stderr]   Downloaded thin-vec v0.2.18
[INFO] [stderr]   Downloaded mockito v1.7.2
[INFO] [stderr]   Downloaded gix-features v0.48.0
[INFO] [stderr]   Downloaded gix-discover v0.51.0
[INFO] [stderr]   Downloaded gix-filter v0.30.0
[INFO] [stderr]   Downloaded gix-imara-diff v0.2.1
[INFO] [stderr]   Downloaded gix-object v0.60.0
[INFO] [stderr]   Downloaded gix-path v0.12.0
[INFO] [stderr]   Downloaded gix-status v0.30.0
[INFO] [stderr]   Downloaded gix-dir v0.25.0
[INFO] [stderr]   Downloaded gix-odb v0.80.0
[INFO] [stderr]   Downloaded rhai_codegen v3.1.0
[INFO] [stderr]   Downloaded ratatui v0.30.0
[INFO] [stderr]   Downloaded similar v2.7.0
[INFO] [stderr]   Downloaded gix-index v0.51.0
[INFO] [stderr]   Downloaded gix-config v0.56.0
[INFO] [stderr]   Downloaded gix-diff v0.63.0
[INFO] [stderr]   Downloaded gix-protocol v0.61.0
[INFO] [stderr]   Downloaded gix-transport v0.57.0
[INFO] [stderr]   Downloaded gix-ref v0.63.0
[INFO] [stderr]   Downloaded gix-merge v0.16.0
[INFO] [stderr]   Downloaded compact_str v0.9.0
[INFO] [stderr]   Downloaded jiff-static v0.2.24
[INFO] [stderr]   Downloaded gix-pack v0.70.0
[INFO] [stderr]   Downloaded insta v1.47.2
[INFO] [stderr]   Downloaded ratatui-core v0.1.0
[INFO] [stderr]   Downloaded typenum v1.20.0
[INFO] [stderr]   Downloaded catppuccin v2.8.0
[INFO] [stderr]   Downloaded rhai v1.24.0
[INFO] [stderr]   Downloaded ratatui-widgets v0.3.0
[INFO] [stderr]   Downloaded gix v0.83.0
[INFO] [stderr]   Downloaded jiff v0.2.24
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6
[INFO] running `Command { std: "docker" "start" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6", 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" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6", 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" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling gix-trace v0.1.19
[INFO] [stderr]    Compiling tinyvec v1.11.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling zlib-rs v0.6.3
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling heapless v0.8.0
[INFO] [stderr]    Compiling hash32 v0.3.1
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling jiff v0.2.24
[INFO] [stderr]    Compiling gix-validate v0.11.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling gix-utils v0.3.2
[INFO] [stderr]    Compiling gix-path v0.12.0
[INFO] [stderr]    Compiling gix-error v0.2.3
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling faster-hex v0.10.0
[INFO] [stderr]    Compiling memmap2 v0.9.10
[INFO] [stderr]    Compiling prodash v31.0.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling gix-chunk v0.7.1
[INFO] [stderr]    Compiling nonempty v0.12.0
[INFO] [stderr]    Compiling gix-quote v0.7.1
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling unicode-bom v2.0.3
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling kstring v2.0.2
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling dashmap v6.2.1
[INFO] [stderr]    Compiling gix-sec v0.14.0
[INFO] [stderr]    Compiling sha1-checked v0.10.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling gix-config-value v0.18.0
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling gix-command v0.9.0
[INFO] [stderr]    Compiling gix-packetline v0.21.3
[INFO] [stderr]    Compiling gix-bitmap v0.3.1
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling gix-features v0.48.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling gix-hash v0.25.0
[INFO] [stderr]    Compiling gix-fs v0.21.1
[INFO] [stderr]    Compiling gix-date v0.15.3
[INFO] [stderr]    Compiling gix-hashtable v0.15.0
[INFO] [stderr]    Compiling gix-actor v0.41.0
[INFO] [stderr]    Compiling gix-tempfile v23.0.0
[INFO] [stderr]    Compiling gix-glob v0.26.0
[INFO] [stderr]    Compiling gix-object v0.60.0
[INFO] [stderr]    Compiling gix-lock v23.0.0
[INFO] [stderr]    Compiling gix-commitgraph v0.37.0
[INFO] [stderr]    Compiling gix-attributes v0.33.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling gix-ignore v0.21.0
[INFO] [stderr]    Compiling gix-pathspec v0.18.0
[INFO] [stderr]    Compiling gix-revwalk v0.31.0
[INFO] [stderr]    Compiling gix-ref v0.63.0
[INFO] [stderr]    Compiling gix-traverse v0.57.0
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling gix-index v0.51.0
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling compact_str v0.9.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling gix-url v0.36.0
[INFO] [stderr]    Compiling smartstring v1.0.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling gix-worktree v0.52.0
[INFO] [stderr]    Compiling lru v0.16.4
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling gix-filter v0.30.0
[INFO] [stderr]    Compiling uluru v3.1.0
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling ratatui-core v0.1.0
[INFO] [stderr]    Compiling const-random v0.1.18
[INFO] [stderr]    Compiling gix-discover v0.51.0
[INFO] [stderr]    Compiling gix-revision v0.45.0
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling gix-imara-diff v0.2.1
[INFO] [stderr]    Compiling clru v0.6.3
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling winnow v1.0.3
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling gix-diff v0.63.0
[INFO] [stderr]    Compiling gix-pack v0.70.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling catppuccin v2.8.0
[INFO] [stderr]    Compiling gix-refspec v0.41.0
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling gix-dir v0.25.0
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling gix-transport v0.57.0
[INFO] [stderr]    Compiling gix-config v0.56.0
[INFO] [stderr]    Compiling gix-shallow v0.12.0
[INFO] [stderr]    Compiling arc-swap v1.9.1
[INFO] [stderr]    Compiling line-clipping v0.3.7
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling rhai_codegen v3.1.0
[INFO] [stderr]    Compiling maybe-async v0.2.11
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling thin-vec v0.2.18
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling gix-protocol v0.61.0
[INFO] [stderr]    Compiling gix-submodule v0.30.0
[INFO] [stderr]    Compiling ureq-proto v0.6.0
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling gix-odb v0.80.0
[INFO] [stderr]    Compiling rhai v1.24.0
[INFO] [stderr]    Compiling ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling gix-status v0.30.0
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling webpki-roots v1.0.7
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling is_ci v1.2.0
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling supports-color v3.0.2
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling ratatui-macros v0.7.0
[INFO] [stderr]    Compiling gix v0.83.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling terminal_size v0.4.4
[INFO] [stderr]    Compiling secrecy v0.10.3
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling supports-hyperlinks v3.2.0
[INFO] [stderr]    Compiling ureq v3.3.0
[INFO] [stderr]    Compiling dialoguer v0.12.0
[INFO] [stderr]    Compiling ratatui v0.30.0
[INFO] [stderr]    Compiling lexopt v0.3.2
[INFO] [stderr]    Compiling toml_edit v0.23.10+spec-1.0.0
[INFO] [stderr]    Compiling linesmith-plugin v0.1.3 (/opt/rustwide/workdir/crates/linesmith-plugin)
[INFO] [stderr]    Compiling linesmith-core v0.2.0 (/opt/rustwide/workdir/crates/linesmith-core)
[INFO] [stderr]    Compiling linesmith v0.2.1 (/opt/rustwide/workdir/crates/linesmith)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 42s
[INFO] running `Command { std: "docker" "inspect" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6", 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" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ureq-proto v0.6.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling ureq v3.3.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling insta v1.47.2
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling colored v3.1.1
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling gix-validate v0.11.1
[INFO] [stderr]    Compiling gix-utils v0.3.2
[INFO] [stderr]    Compiling gix-error v0.2.3
[INFO] [stderr]    Compiling gix-path v0.12.0
[INFO] [stderr]    Compiling gix-date v0.15.3
[INFO] [stderr]    Compiling gix-chunk v0.7.1
[INFO] [stderr]    Compiling gix-quote v0.7.1
[INFO] [stderr]    Compiling gix-features v0.48.0
[INFO] [stderr]    Compiling gix-config-value v0.18.0
[INFO] [stderr]    Compiling gix-command v0.9.0
[INFO] [stderr]    Compiling gix-actor v0.41.0
[INFO] [stderr]    Compiling gix-bitmap v0.3.1
[INFO] [stderr]    Compiling gix-hash v0.25.0
[INFO] [stderr]    Compiling gix-fs v0.21.1
[INFO] [stderr]    Compiling gix-glob v0.26.0
[INFO] [stderr]    Compiling gix-packetline v0.21.3
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling gix-url v0.36.0
[INFO] [stderr]    Compiling gix-hashtable v0.15.0
[INFO] [stderr]    Compiling gix-tempfile v23.0.0
[INFO] [stderr]    Compiling gix-object v0.60.0
[INFO] [stderr]    Compiling gix-commitgraph v0.37.0
[INFO] [stderr]    Compiling rhai v1.24.0
[INFO] [stderr]    Compiling gix-attributes v0.33.0
[INFO] [stderr]    Compiling gix-ignore v0.21.0
[INFO] [stderr]    Compiling gix-imara-diff v0.2.1
[INFO] [stderr]    Compiling gix-lock v23.0.0
[INFO] [stderr]    Compiling gix-transport v0.57.0
[INFO] [stderr]    Compiling gix-pathspec v0.18.0
[INFO] [stderr]    Compiling gix-shallow v0.12.0
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling gix-revwalk v0.31.0
[INFO] [stderr]    Compiling gix-ref v0.63.0
[INFO] [stderr]    Compiling gix-filter v0.30.0
[INFO] [stderr]    Compiling gix-pack v0.70.0
[INFO] [stderr]    Compiling gix-traverse v0.57.0
[INFO] [stderr]    Compiling gix-revision v0.45.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling gix-index v0.51.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling gix-worktree v0.52.0
[INFO] [stderr]    Compiling gix-discover v0.51.0
[INFO] [stderr]    Compiling gix-dir v0.25.0
[INFO] [stderr]    Compiling gix-diff v0.63.0
[INFO] [stderr]    Compiling gix-config v0.56.0
[INFO] [stderr]    Compiling gix-refspec v0.41.0
[INFO] [stderr]    Compiling gix-odb v0.80.0
[INFO] [stderr]    Compiling gix-protocol v0.61.0
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling gix-status v0.30.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling gix-submodule v0.30.0
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling gix v0.83.0
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling mockito v1.7.2
[INFO] [stderr]    Compiling linesmith-plugin v0.1.3 (/opt/rustwide/workdir/crates/linesmith-plugin)
[INFO] [stderr]    Compiling linesmith-core v0.2.0 (/opt/rustwide/workdir/crates/linesmith-core)
[INFO] [stderr]    Compiling linesmith v0.2.1 (/opt/rustwide/workdir/crates/linesmith)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3m 43s
[INFO] running `Command { std: "docker" "inspect" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6", 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" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.23s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/linesmith-cfd978a443f974c1)
[INFO] [stdout] 
[INFO] [stdout] running 763 tests
[INFO] [stdout] test claude_settings::tests::detect_returns_not_present_when_file_missing ... ok
[INFO] [stdout] test claude_settings::tests::detect_returns_not_installed_when_no_status_line_key ... ok
[INFO] [stdout] test claude_settings::tests::detect_surfaces_invalid_json_as_io_invalid_data ... ok
[INFO] [stdout] test claude_settings::tests::detect_returns_installed_when_status_line_references_linesmith ... ok
[INFO] [stdout] test claude_settings::tests::detect_returns_other_when_status_line_points_elsewhere ... ok
[INFO] [stdout] test atomic::tests::creates_new_file_with_contents ... ok
[INFO] [stdout] test atomic::tests::replaces_existing_file_atomically ... ok
[INFO] [stdout] test atomic::tests::creates_missing_parent_directory ... ok
[INFO] [stdout] test atomic::tests::does_not_leave_temp_file_on_success ... ok
[INFO] [stdout] test claude_settings::tests::uninstall_returns_no_file_when_settings_absent ... ok
[INFO] [stdout] test cli::tests::check_config_composes_with_config_path ... ok
[INFO] [stdout] test claude_settings::tests::uninstall_returns_no_status_line_when_key_missing ... ok
[INFO] [stdout] test cli::tests::check_config_flag_sets_bool ... ok
[INFO] [stdout] test cli::tests::color_overrides_rejected_on_subcommands_without_color_output ... ok
[INFO] [stdout] test cli::tests::check_config_flag_rejected_outside_run ... ok
[INFO] [stdout] test claude_settings::tests::install_writes_linesmith_block_with_padding_zero ... ok
[INFO] [stdout] test claude_settings::tests::install_creates_file_when_absent ... ok
[INFO] [stdout] test cli::tests::config_short_flag_captures_path ... ok
[INFO] [stdout] test cli::tests::config_subcommand_parses_with_no_flags ... ok
[INFO] [stdout] test cli::tests::config_flag_captures_path ... ok
[INFO] [stdout] test cli::tests::config_subcommand_threads_color_flag_and_config_flag_together ... ok
[INFO] [stdout] test cli::tests::config_subcommand_threads_config_flag_into_action ... ok
[INFO] [stdout] test cli::tests::config_subcommand_threads_force_color_flag_into_action ... ok
[INFO] [stdout] test cli::tests::config_subcommand_threads_no_color_flag_into_action ... ok
[INFO] [stdout] test claude_settings::tests::install_backs_up_prior_settings_to_bak_sibling ... ok
[INFO] [stdout] test cli::tests::conflicting_color_flags_last_wins ... ok
[INFO] [stdout] test cli::tests::config_subcommand_with_extra_positional_errors ... ok
[INFO] [stdout] test cli::tests::config_without_value_returns_error ... ok
[INFO] [stdout] test cli::tests::doctor_combines_config_and_plain ... ok
[INFO] [stdout] test cli::tests::doctor_plain_before_subcommand_also_parses ... ok
[INFO] [stdout] test cli::tests::doctor_subcommand_parses_with_no_flags ... ok
[INFO] [stdout] test cli::tests::doctor_subcommand_parses_plain_flag ... ok
[INFO] [stdout] test cli::tests::doctor_with_extra_positional_errors ... ok
[INFO] [stdout] test cli::tests::doctor_threads_config_flag_into_action ... ok
[INFO] [stdout] test cli::tests::empty_config_value_is_rejected ... ok
[INFO] [stdout] test cli::tests::equals_style_config_value_parses ... ok
[INFO] [stdout] test cli::tests::empty_args_returns_run_with_defaults ... ok
[INFO] [stdout] test cli::tests::force_flag_rejected_outside_presets_apply ... ok
[INFO] [stdout] test cli::tests::help_short_and_long_return_help_action ... ok
[INFO] [stdout] test cli::tests::init_no_doctor_before_subcommand_also_parses ... ok
[INFO] [stdout] test cli::tests::init_no_doctor_flag_sets_field ... ok
[INFO] [stdout] test cli::tests::force_color_flag_sets_always_override ... ok
[INFO] [stdout] test cli::tests::init_rejects_force_flag ... ok
[INFO] [stdout] test cli::tests::init_subcommand_parses_with_no_config_override ... ok
[INFO] [stdout] test cli::tests::init_with_extra_positional_errors ... ok
[INFO] [stdout] test cli::tests::install_subcommand_threads_config_flag_into_action ... ok
[INFO] [stdout] test claude_settings::tests::install_preserves_unrelated_top_level_keys ... ok
[INFO] [stdout] test cli::tests::install_subcommand_parses_without_flags ... ok
[INFO] [stdout] test cli::tests::install_subcommand_with_extra_positional_errors ... ok
[INFO] [stdout] test cli::tests::init_threads_config_flag_into_action ... ok
[INFO] [stdout] test cli::tests::no_doctor_flag_rejected_outside_init ... ok
[INFO] [stdout] test cli::tests::plain_flag_rejected_outside_doctor ... ok
[INFO] [stdout] test cli::tests::presets_apply_force_before_subcommand_also_parses ... ok
[INFO] [stdout] test cli::tests::presets_apply_empty_string_name_still_parses_as_apply ... ok
[INFO] [stdout] test cli::tests::no_color_flag_sets_never_override ... ok
[INFO] [stdout] test cli::tests::presets_apply_threads_config_flag_into_action ... ok
[INFO] [stdout] test cli::tests::presets_apply_subcommand_parses_name ... ok
[INFO] [stdout] test claude_settings::tests::uninstall_removes_status_line_and_preserves_other_keys ... ok
[INFO] [stdout] test cli::tests::presets_apply_with_extra_positional_errors ... ok
[INFO] [stdout] test cli::tests::presets_apply_with_force_flag_sets_force ... ok
[INFO] [stdout] test cli::tests::themes_list_subcommand_parses ... ok
[INFO] [stdout] test cli::tests::presets_without_subcommand_errors ... ok
[INFO] [stdout] test cli::tests::presets_apply_without_name_errors ... ok
[INFO] [stdout] test cli::tests::themes_with_unknown_subcommand_errors ... ok
[INFO] [stdout] test cli::tests::presets_list_subcommand_parses ... ok
[INFO] [stdout] test cli::tests::themes_without_subcommand_errors ... ok
[INFO] [stdout] test cli::tests::presets_with_unknown_subcommand_errors ... ok
[INFO] [stdout] test cli::tests::uninstall_subcommand_with_extra_positional_errors ... ok
[INFO] [stdout] test cli::tests::uninstall_subcommand_parses_without_flags ... ok
[INFO] [stdout] test cli::tests::unknown_flag_returns_error ... ok
[INFO] [stdout] test cli::tests::unknown_top_level_subcommand_errors ... ok
[INFO] [stdout] test cli::tests::version_short_and_long_return_version_action ... ok
[INFO] [stdout] test doctor::tests::any_git_segment_enabled_returns_false_when_unloaded ... ok
[INFO] [stdout] test claude_settings::tests::install_then_uninstall_round_trips_to_no_status_line ... ok
[INFO] [stdout] test doctor::tests::ascii_glyphs_contain_no_unicode ... ok
[INFO] [stdout] test doctor::tests::binary_path_failure_preserves_io_error_in_label ... ok
[INFO] [stdout] test doctor::tests::binary_path_resolves_passes ... ok
[INFO] [stdout] test doctor::tests::any_git_segment_enabled_finds_id_in_inline_table_numbered_entry ... ok
[INFO] [stdout] test doctor::tests::any_git_segment_enabled_finds_id_in_numbered_line ... ok
[INFO] [stdout] test doctor::tests::any_git_segment_enabled_handles_malformed_numbered_line_tables ... ok
[INFO] [stdout] test doctor::tests::any_git_segment_enabled_ignores_plugin_namespace_collisions ... ok
[INFO] [stdout] test doctor::tests::any_git_segment_enabled_returns_false_for_no_git_config ... ok
[INFO] [stdout] test doctor::tests::any_git_segment_enabled_finds_id_in_main_line ... ok
[INFO] [stdout] test doctor::tests::cache_dir_passes_when_absent_with_creatable_hint ... ok
[INFO] [stdout] test doctor::tests::cache_dir_warns_when_absent_parent_read_only ... ok
[INFO] [stdout] test doctor::tests::cache_dir_warns_when_path_is_a_file_not_a_directory ... ok
[INFO] [stdout] test doctor::tests::cache_dir_warns_when_unreadable_with_io_message ... ok
[INFO] [stdout] test doctor::tests::cache_skips_all_three_when_unresolved ... ok
[INFO] [stdout] test doctor::tests::cache_usage_json_warns_on_future_timestamp ... ok
[INFO] [stdout] test doctor::tests::cache_lock_warns_when_stale ... ok
[INFO] [stdout] test doctor::tests::cache_usage_json_warns_on_stale_schema ... ok
[INFO] [stdout] test doctor::tests::cache_usage_json_warns_on_unreadable_distinct_from_stale ... ok
[INFO] [stdout] test doctor::tests::check_claude_json_too_large_renders_fail_with_corruption_hint ... ok
[INFO] [stdout] test doctor::tests::check_result_constructors_round_trip_id_and_severity ... ok
[INFO] [stdout] test doctor::tests::check_plugins_compile_fails_loud_on_unexpected_variants ... ok
[INFO] [stdout] test doctor::tests::classify_endpoint_response_maps_3xx_to_transport_error ... ok
[INFO] [stdout] test doctor::tests::classify_endpoint_response_maps_2xx_with_extra_keys_to_unexpected_shape ... ok
[INFO] [stdout] test doctor::tests::classify_endpoint_response_maps_401_to_bad_status ... ok
[INFO] [stdout] test doctor::tests::classify_endpoint_response_maps_io_error_to_transport_error ... ok
[INFO] [stdout] test doctor::tests::classify_endpoint_response_maps_5xx_to_transport_error ... ok
[INFO] [stdout] test doctor::tests::classify_endpoint_response_at_2s_boundary_classifies_as_slow ... ok
[INFO] [stdout] test doctor::tests::check_ids_follow_namespacing_convention ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_conservatively_skips_non_bool_prerelease ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_conservatively_skips_non_bool_draft ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_caps_remote_tag_at_64_chars ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_clamps_serde_error_to_one_line_under_200_chars ... ok
[INFO] [stdout] test doctor::tests::cache_category_with_healthy_snapshot_passes_all_three ... ok
[INFO] [stdout] test doctor::tests::cache_dir_check_never_produces_fail_severity_for_any_variant ... ok
[INFO] [stdout] test doctor::tests::cache_lock_active_passes ... ok
[INFO] [stdout] test doctor::tests::cache_lock_warns_on_unreadable ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_filters_library_package_tags ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_filters_foreign_and_non_semver_tags ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_filters_malformed_legacy_binary_prefix ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_handles_leading_zeros_as_equal ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_picks_binary_tag_after_heterogeneous_non_binary_entries ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_filters_knope_prefix_without_version_digits ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_handles_u32_overflow_in_remote_major ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_names_top_level_shape_in_not_array_diagnostic ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_picks_first_binary_tag_skipping_library_tags ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_returns_latest_when_first_binary_in_mixed_array_equals_local ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_no_binary_release_carries_full_scanned_count ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_returns_latest_when_local_is_newer ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_returns_latest_when_tag_matches_local ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_returns_newer_when_remote_is_higher ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_skips_array_entries_with_missing_tag_name ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_returns_no_binary_release_when_array_is_empty ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_returns_parse_error_when_body_is_not_array ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_returns_parse_error_on_invalid_json ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_strips_control_chars_from_remote_tag ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_skips_non_object_array_entries ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_returns_parse_error_when_local_version_invalid ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_strips_knope_binary_prefix ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_skips_entries_with_non_string_tag_name ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_inner_returns_transport_error_when_body_truncated ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_skips_prerelease_and_draft_entries ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_strips_release_plz_legacy_binary_prefix ... ok
[INFO] [stdout] test doctor::tests::claude_binary_fail_with_path_nonutf8_hint ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_strips_v_prefix_for_comparison ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_treats_prefixed_higher_version_as_newer ... ok
[INFO] [stdout] test doctor::tests::claude_binary_fail_with_path_unset_hint_when_path_env_unset ... ok
[INFO] [stdout] test doctor::tests::classify_update_response_walks_array_in_order_picking_first_match ... ok
[INFO] [stdout] test doctor::tests::claude_binary_warns_when_dir_exists_but_path_lookup_fails ... ok
[INFO] [stdout] test doctor::tests::claude_binary_warns_when_dir_not_a_directory ... ok
[INFO] [stdout] test doctor::tests::claude_binary_fails_when_neither_binary_nor_dir_present ... ok
[INFO] [stdout] test doctor::tests::claude_code_category_emits_four_checks_in_spec_order ... ok
[INFO] [stdout] test doctor::tests::claude_code_category_skips_filesystem_checks_when_home_unresolved ... ok
[INFO] [stdout] test doctor::tests::claude_code_category_with_healthy_snapshot_passes_every_check ... ok
[INFO] [stdout] test doctor::tests::claude_binary_warns_when_dir_permission_denied ... ok
[INFO] [stdout] test doctor::tests::claude_dir_missing_short_circuits_sessions_to_skip ... ok
[INFO] [stdout] test doctor::tests::claude_dir_warns_on_not_a_directory ... ok
[INFO] [stdout] test doctor::tests::claude_json_warn_when_oauth_account_missing ... ok
[INFO] [stdout] test doctor::tests::claude_dir_warns_on_other_io ... ok
[INFO] [stdout] test doctor::tests::claude_dir_warns_on_permission_denied ... ok
[INFO] [stdout] test doctor::tests::claude_json_fail_on_io_error ... ok
[INFO] [stdout] test doctor::tests::claude_json_fail_on_parse_error_carries_message ... ok
[INFO] [stdout] test doctor::tests::claude_json_fail_when_missing ... ok
[INFO] [stdout] test doctor::tests::claude_sessions_fail_when_directory_missing_but_dir_ok ... ok
[INFO] [stdout] test doctor::tests::config_category_with_default_loaded_config_passes_every_check ... ok
[INFO] [stdout] test doctor::tests::claude_sessions_skips_when_dir_not_a_directory ... ok
[INFO] [stdout] test doctor::tests::claude_sessions_skips_when_dir_permission_denied ... ok
[INFO] [stdout] test doctor::tests::claude_sessions_warn_on_io_error ... ok
[INFO] [stdout] test doctor::tests::claude_sessions_warn_on_not_a_directory ... ok
[INFO] [stdout] test doctor::tests::claude_sessions_warn_when_directory_empty ... ok
[INFO] [stdout] test doctor::tests::config_category_emits_five_checks_in_spec_order ... ok
[INFO] [stdout] test doctor::tests::config_discovered_fails_on_io_error ... ok
[INFO] [stdout] test doctor::tests::config_discovered_fails_for_explicit_missing ... ok
[INFO] [stdout] test doctor::tests::config_discovered_warns_for_implicit_missing ... ok
[INFO] [stdout] test doctor::tests::config_icons_mode_emits_nerdfont_opt_out_hint ... ok
[INFO] [stdout] test doctor::tests::config_plugin_dirs_fail_on_permission_denied ... ok
[INFO] [stdout] test doctor::tests::config_plugin_dirs_pass_when_all_ok ... ok
[INFO] [stdout] test doctor::tests::config_parse_error_short_circuits_downstream_checks_to_skip ... ok
[INFO] [stdout] test doctor::tests::config_plugin_dirs_pass_when_none_configured ... ok
[INFO] [stdout] test doctor::tests::config_runs_when_home_unset_but_explicit_path_loaded ... ok
[INFO] [stdout] test doctor::tests::config_plugin_dirs_warn_on_missing_or_not_directory ... ok
[INFO] [stdout] test doctor::tests::config_segments_pass_for_plugin_discovered_id ... ok
[INFO] [stdout] test doctor::tests::config_parse_error_fails_with_line_col ... ok
[INFO] [stdout] test doctor::tests::config_segments_pass_on_inline_table_entries_in_numbered_line ... ok
[INFO] [stdout] test doctor::tests::config_segments_pass_when_every_id_is_a_known_built_in ... ok
[INFO] [stdout] test doctor::tests::config_segments_warn_on_kindless_inline_table_in_numbered_line ... ok
[INFO] [stdout] test doctor::tests::config_segments_warn_on_line_zero_index ... ok
[INFO] [stdout] test doctor::tests::config_segments_warn_on_kindless_inline_table_in_single_line ... ok
[INFO] [stdout] test doctor::tests::config_segments_warn_on_malformed_numbered_line_table ... ok
[INFO] [stdout] test doctor::tests::config_unresolved_warns_and_skips_downstream ... ok
[INFO] [stdout] test doctor::tests::credentials_empty_token_renders_distinct_label ... ok
[INFO] [stdout] test doctor::tests::config_segments_warn_on_unknown_id_in_numbered_line_table ... ok
[INFO] [stdout] test doctor::tests::config_segments_warn_on_unknown_id_with_id_in_label ... ok
[INFO] [stdout] test doctor::tests::config_theme_pass_for_user_theme_in_registry ... ok
[INFO] [stdout] test doctor::tests::config_theme_pass_when_omitted_or_built_in ... ok
[INFO] [stdout] test doctor::tests::config_theme_warn_on_unknown_name ... ok
[INFO] [stdout] test doctor::tests::credentials_io_error_fails_resolvable_passes_source_attested ... ok
[INFO] [stdout] test doctor::tests::credentials_category_with_resolved_credentials_passes_all_four ... ok
[INFO] [stdout] test doctor::tests::credentials_missing_field_renders_distinct_label ... ok
[INFO] [stdout] test doctor::tests::credentials_no_credentials_fails_resolvable_and_source ... ok
[INFO] [stdout] test doctor::tests::credentials_parse_error_passes_source_fails_shape ... ok
[INFO] [stdout] test doctor::tests::credentials_scopes_fail_when_user_inference_absent ... ok
[INFO] [stdout] test doctor::tests::credentials_source_attested_label_redacts_token_bytes ... ok
[INFO] [stdout] test doctor::tests::credentials_subprocess_failed_fails_resolvable_and_source ... ok
[INFO] [stdout] test doctor::tests::credentials_unresolvable_skips_all_four ... ok
[INFO] [stdout] test doctor::tests::default_mode_emits_unicode_glyphs ... ok
[INFO] [stdout] test doctor::tests::default_mode_summary_separator_is_middle_dot ... ok
[INFO] [stdout] test doctor::tests::empty_report_renders_summary_and_exits_zero ... ok
[INFO] [stdout] test doctor::tests::endpoint_bad_status_fails_with_per_status_hint ... ok
[INFO] [stdout] test doctor::tests::endpoint_5xx_warns_keeps_exit_zero ... ok
[INFO] [stdout] test doctor::tests::endpoint_category_with_healthy_probe_passes_all_three ... ok
[INFO] [stdout] test doctor::tests::empty_category_renders_header_with_no_checks ... ok
[INFO] [stdout] test doctor::tests::endpoint_parse_error_fails_shape_check ... ok
[INFO] [stdout] test doctor::tests::endpoint_rate_limited_fails_on_abusive_retry_after ... ok
[INFO] [stdout] test doctor::tests::endpoint_rate_limited_warns_when_no_retry_after_header ... ok
[INFO] [stdout] test doctor::tests::endpoint_rate_limited_warns_with_reasonable_retry_after ... ok
[INFO] [stdout] test doctor::tests::endpoint_skips_when_credentials_failed ... ok
[INFO] [stdout] test doctor::tests::endpoint_skips_with_race_reason_when_credentials_vanished ... ok
[INFO] [stdout] test doctor::tests::endpoint_slow_response_warns_with_elapsed ... ok
[INFO] [stdout] test doctor::tests::endpoint_transport_error_warns_keeps_exit_zero ... ok
[INFO] [stdout] test doctor::tests::endpoint_unexpected_shape_warns_with_extra_keys ... ok
[INFO] [stdout] test doctor::tests::env_var_state_nonempty_filters_unset_empty_and_nonutf8 ... ok
[INFO] [stdout] test doctor::tests::exit_code_is_one_on_any_fail ... ok
[INFO] [stdout] test doctor::tests::exit_code_is_one_when_fail_mixed_with_other_severities ... ok
[INFO] [stdout] test doctor::tests::exit_code_is_zero_on_all_pass ... ok
[INFO] [stdout] test doctor::tests::exit_code_is_zero_on_warn_only ... ok
[INFO] [stdout] test doctor::tests::exit_code_is_zero_when_no_fail_in_mixed_report ... ok
[INFO] [stdout] test doctor::tests::exit_code_skip_does_not_fail ... ok
[INFO] [stdout] test doctor::tests::fail_check_renders_hint_indented_after_fail_line ... ok
[INFO] [stdout] test doctor::tests::find_claude_binary_returns_first_path_match ... ok
[INFO] [stdout] test doctor::tests::find_claude_binary_returns_none_when_path_unset ... ok
[INFO] [stdout] test doctor::tests::find_claude_binary_skips_non_executable_file ... ok
[INFO] [stdout] test doctor::tests::git_failed_on_corrupt_repo_renders_message ... ok
[INFO] [stdout] test doctor::tests::git_head_resolves_warns_on_lossy_otherref ... ok
[INFO] [stdout] test doctor::tests::git_not_in_repo_skips_all_three_when_no_git_segment_configured ... ok
[INFO] [stdout] test doctor::tests::git_not_in_repo_warns_when_git_segment_configured ... ok
[INFO] [stdout] test doctor::tests::git_repo_detected_passes_when_repo_present ... ok
[INFO] [stdout] test doctor::tests::git_repo_kind_label_includes_worktree_name ... ok
[INFO] [stdout] test doctor::tests::healthy_env_produces_only_pass_checks ... ok
[INFO] [stdout] test doctor::tests::home_empty_string_fails ... ok
[INFO] [stdout] test doctor::tests::home_non_utf8_fails_with_distinct_hint ... ok
[INFO] [stdout] test doctor::tests::git_head_resolves_renders_each_variant_distinctly ... ok
[INFO] [stdout] test doctor::tests::home_unset_fails_and_promotes_exit_code ... ok
[INFO] [stdout] test doctor::tests::label_and_hint_accessors_return_constructor_inputs ... ok
[INFO] [stdout] test doctor::tests::glyphs_within_a_mode_are_pairwise_distinct ... ok
[INFO] [stdout] test doctor::tests::plugins_compile_fails_with_path_and_message_in_hint ... ok
[INFO] [stdout] test doctor::tests::plain_mode_passes_user_supplied_unicode_through_verbatim ... ok
[INFO] [stdout] test doctor::tests::plain_mode_summary_separator_is_ascii ... ok
[INFO] [stdout] test doctor::tests::plugins_deps_valid_fails_on_unknown_dep ... ok
[INFO] [stdout] test doctor::tests::plugins_no_builtin_collisions_fails_when_plugin_id_shadows_builtin ... ok
[INFO] [stdout] test doctor::tests::plugins_category_with_no_sources_skips_all_four ... ok
[INFO] [stdout] test doctor::tests::plugins_category_with_zero_plugins_passes_vacuously ... ok
[INFO] [stdout] test doctor::tests::plugins_no_id_collisions_fails_when_two_plugins_share_id ... ok
[INFO] [stdout] test doctor::tests::plugins_deps_valid_fails_on_malformed_header ... ok
[INFO] [stdout] test doctor::tests::no_color_set_or_unset_both_pass ... ok
[INFO] [stdout] test doctor::tests::read_claude_json_distinguishes_missing_parse_error_and_no_oauth ... ok
[INFO] [stdout] test doctor::tests::read_claude_json_parse_error_contains_real_serde_format ... ok
[INFO] [stdout] test doctor::tests::releases_url_pins_repo_endpoint_and_page_size ... ok
[INFO] [stdout] test doctor::tests::render_includes_category_header ... ok
[INFO] [stdout] test doctor::tests::render_includes_summary_and_exit_lines ... ok
[INFO] [stdout] test doctor::tests::report_categories_run_in_spec_order ... ok
[INFO] [stdout] test doctor::tests::self_binary_integrity_handles_multibyte_sha_without_panicking ... ok
[INFO] [stdout] test doctor::tests::read_config_at_round_trips_a_real_temp_file ... ok
[INFO] [stdout] test doctor::tests::render_emits_blank_line_between_categories ... ok
[INFO] [stdout] test doctor::tests::self_binary_integrity_handles_short_sha_without_panicking_and_passes ... ok
[INFO] [stdout] test doctor::tests::self_binary_integrity_truncates_long_sha_to_seven_chars ... ok
[INFO] [stdout] test doctor::tests::self_binary_integrity_warns_on_empty_sha_same_as_missing ... ok
[INFO] [stdout] test doctor::tests::self_binary_integrity_passes_when_build_sha_present ... ok
[INFO] [stdout] test doctor::tests::self_update_available_pass_when_probe_is_latest ... ok
[INFO] [stdout] test doctor::tests::self_binary_integrity_warns_when_build_sha_missing ... ok
[INFO] [stdout] test doctor::tests::self_update_available_warns_distinctly_on_partial_page ... ok
[INFO] [stdout] test doctor::tests::self_binary_integrity_warns_on_whitespace_only_sha ... ok
[INFO] [stdout] test doctor::tests::self_update_available_warns_distinctly_when_releases_is_empty ... ok
[INFO] [stdout] test doctor::tests::plain_mode_emits_no_unicode ... ok
[INFO] [stdout] test doctor::tests::self_update_available_warns_on_transport_error ... ok
[INFO] [stdout] test doctor::tests::self_update_available_warns_on_parse_error ... ok
[INFO] [stdout] test doctor::tests::self_version_check_includes_crate_version ... ok
[INFO] [stdout] test doctor::tests::self_update_available_warns_when_newer_release_exists ... ok
[INFO] [stdout] test doctor::tests::self_update_available_warns_on_no_binary_release ... ok
[INFO] [stdout] test doctor::tests::snapshot_credentials_returns_unresolvable_when_no_path_source_non_macos ... ok
[INFO] [stdout] test doctor::tests::source_label_redacts_token_bytes_for_every_credential_source_variant ... ok
[INFO] [stdout] test doctor::tests::stat_cache_root_returns_absent_when_path_missing_under_writable_parent ... ok
[INFO] [stdout] test doctor::tests::stat_cache_root_returns_absent_parent_read_only_when_intermediate_is_a_file ... ok
[INFO] [stdout] test doctor::tests::stat_cache_root_returns_exists_for_a_real_directory ... ok
[INFO] [stdout] test doctor::tests::stat_claude_sessions_counts_files_only_not_subdirs_or_dotfiles ... ok
[INFO] [stdout] test doctor::tests::read_claude_json_returns_too_large_above_2mb_cap ... ok
[INFO] [stdout] test doctor::tests::stat_cache_root_returns_not_a_directory_when_path_is_a_file ... ok
[INFO] [stdout] test doctor::tests::snapshot_claude_home_classifies_real_filesystem_state ... ok
[INFO] [stdout] test doctor::tests::stat_claude_sessions_reports_empty_when_only_dotfiles ... ok
[INFO] [stdout] test doctor::tests::stat_plugin_dirs_distinguishes_ok_missing_and_not_a_directory ... ok
[INFO] [stdout] test doctor::tests::stat_claude_sessions_reports_empty_when_only_subdirs ... ok
[INFO] [stdout] test doctor::tests::snapshot_credentials_attempts_cascade_when_xdg_or_claude_dir_overrides_home ... ok
[INFO] [stdout] test doctor::tests::stat_claude_sessions_skips_dotfiles_but_counts_real_session_files ... ok
[INFO] [stdout] test doctor::tests::stat_usage_lock_legacy_non_json_falls_back_to_mtime_via_lockstore ... ok
[INFO] [stdout] test doctor::tests::stat_usage_lock_distinguishes_active_stale_and_absent ... ok
[INFO] [stdout] test doctor::tests::stat_usage_json_distinguishes_current_stale_and_missing ... ok
[INFO] [stdout] test doctor::tests::summary_counts_aggregate_across_categories ... ok
[INFO] [stdout] test doctor::tests::term_empty_warns ... ok
[INFO] [stdout] test doctor::tests::term_unset_warns ... ok
[INFO] [stdout] test doctor::tests::terminal_width_at_threshold_passes ... ok
[INFO] [stdout] test doctor::tests::term_dumb_warns_not_fails ... ok
[INFO] [stdout] test doctor::tests::stdout_not_a_tty_warns_not_fails ... ok
[INFO] [stdout] test doctor::tests::term_non_utf8_warns_with_distinct_hint ... ok
[INFO] [stdout] test doctor::tests::doctor_env_from_process_does_not_panic ... ok
[INFO] [stdout] test doctor::tests::terminal_width_zero_warns_with_distinct_hint ... ok
[INFO] [stdout] test doctor::tests::warn_and_skip_checks_render_their_hint ... ok
[INFO] [stdout] test driver::tests::catppuccin_mocha_renders_with_mocha_palette_under_truecolor ... ok
[INFO] [stdout] test doctor::tests::terminal_width_under_threshold_warns ... ok
[INFO] [stdout] test doctor::tests::terminal_width_unknown_warns ... ok
[INFO] [stdout] test driver::tests::broken_user_theme_file_warns_but_does_not_abort_startup ... ok
[INFO] [stdout] test driver::tests::check_config_accepts_user_theme_name ... ok
[INFO] [stdout] test driver::tests::check_config_with_malformed_toml_exits_one_and_reports_invalid ... ok
[INFO] [stdout] test driver::tests::check_config_catches_unknown_segment_override_key ... ok
[INFO] [stdout] test driver::tests::check_config_surfaces_validation_warnings ... ok
[INFO] [stdout] test driver::tests::check_config_catches_unknown_theme_name ... ok
[INFO] [stdout] test driver::tests::check_config_with_missing_explicit_path_warns_but_exits_zero ... ok
[INFO] [stdout] test driver::tests::check_config_with_no_resolvable_path_exits_one ... ok
[INFO] [stdout] test driver::tests::check_config_counts_warnings_across_all_three_scopes ... ok
[INFO] [stdout] test driver::tests::check_config_surfaces_multi_line_validation_warnings ... ok
[INFO] [stdout] test driver::tests::check_config_with_valid_file_exits_zero_and_reports_ok ... ok
[INFO] [stdout] test driver::tests::check_config_catches_unknown_top_level_key ... ok
[INFO] [stdout] test driver::tests::claude_padding_shrinks_render_budget_and_drops_segment ... ok
[INFO] [stdout] test driver::tests::color_policy_cli_always_wins_over_no_color_env ... ok
[INFO] [stdout] test driver::tests::color_policy_config_always_forces_color ... ok
[INFO] [stdout] test driver::tests::color_policy_config_never_strips_color ... ok
[INFO] [stdout] test driver::tests::color_policy_config_auto_falls_through_to_terminal_detection ... ok
[INFO] [stdout] test driver::tests::claude_padding_exceeds_width_clamps_to_zero_and_drops_everything ... ok
[INFO] [stdout] test driver::tests::color_policy_force_color_env_zero_is_treated_as_absent ... ok
[INFO] [stdout] test driver::tests::color_policy_no_color_env_wins_over_config_always ... ok
[INFO] [stdout] test driver::tests::color_policy_no_color_env_wins_over_force_env ... ok
[INFO] [stdout] test driver::tests::cli_env_routes_home_through_to_config_resolution ... ok
[INFO] [stdout] test driver::tests::cli_env_xdg_takes_precedence_over_home_in_resolution ... ok
[INFO] [stdout] test driver::tests::claude_padding_zero_matches_no_padding ... ok
[INFO] [stdout] test driver::tests::color_policy_test_capability_override_short_circuits_everything ... ok
[INFO] [stdout] test driver::tests::color_policy_cli_never_wins_over_force_env ... ok
[INFO] [stdout] test driver::tests::compose_init_body_default_theme_passes_body_through ... ok
[INFO] [stdout] test driver::tests::compose_init_body_falls_back_when_preset_has_no_tables ... ok
[INFO] [stdout] test driver::tests::compose_init_body_inserts_theme_before_first_table ... ok
[INFO] [stdout] test driver::tests::compose_init_body_escapes_quotes_and_backslashes_in_theme_name ... ok
[INFO] [stdout] test driver::tests::doctor_action_with_healthy_env_renders_and_exits_zero ... ok
[INFO] [stdout] test driver::tests::doctor_action_with_home_unset_exits_one ... ok
[INFO] [stdout] test driver::tests::doctor_default_output_includes_unicode_glyph ... ok
[INFO] [stdout] test driver::tests::default_config_renders_segments_with_nerdfont_glyphs ... ok
[INFO] [stdout] test driver::tests::doctor_config_override_to_missing_explicit_path_fails ... ok
[INFO] [stdout] test driver::tests::doctor_stdout_failure_logs_to_stderr_and_returns_report_exit_code ... ok
[INFO] [stdout] test driver::tests::default_theme_under_palette16_wraps_segments_with_sgr ... ok
[INFO] [stdout] test driver::tests::compose_init_body_handles_table_header_at_byte_zero ... ok
[INFO] [stdout] test driver::tests::doctor_plain_output_is_ascii_only ... ok
[INFO] [stdout] test driver::tests::doctor_unknown_flag_exits_two ... ok
[INFO] [stdout] test driver::tests::empty_config_value_exits_two ... ok
[INFO] [stdout] test driver::tests::force_color_detect_never_returns_none ... ok
[INFO] [stdout] test driver::tests::explicit_config_path_drives_render_not_just_check ... ok
[INFO] [stdout] test driver::tests::force_color_detect_reads_colorterm_from_cli_env_not_ambient_process ... ok
[INFO] [stdout] test driver::tests::help_flag_prints_help_to_stdout_and_exits_zero ... ok
[INFO] [stdout] test driver::tests::doctor_action_threads_cli_override_through_from_process ... ok
[INFO] [stdout] test driver::tests::doctor_subcommand_dispatches_via_cli_main ... ok
[INFO] [stdout] test driver::tests::init_default_theme_omits_theme_field_to_match_presets_apply ... ok
[INFO] [stdout] test driver::tests::init_does_not_warn_for_plain_ascii_config_path ... ok
[INFO] [stdout] test driver::tests::init_creates_valid_config_round_trips_parse ... ok
[INFO] [stdout] test driver::tests::icons_off_suppresses_default_segment_glyphs ... ok
[INFO] [stdout] test driver::tests::init_emits_claude_code_settings_snippet ... ok
[INFO] [stdout] test driver::tests::init_eof_on_overwrite_aborts_without_clobbering ... ok
[INFO] [stdout] test driver::tests::init_no_doctor_writes_config_without_running_doctor ... ok
[INFO] [stdout] test driver::tests::init_honors_explicit_config_flag_over_xdg_path ... ok
[INFO] [stdout] test driver::tests::init_overwrite_prompts_and_backs_up_existing_config ... ok
[INFO] [stdout] test driver::tests::init_snippet_escapes_quotes_and_backslashes_in_config_path ... ok
[INFO] [stdout] test driver::tests::init_snippet_preserves_env_resolved_config_path ... ok
[INFO] [stdout] test driver::tests::init_runs_doctor_inline_after_writing_config ... ok
[INFO] [stdout] test driver::tests::init_snippet_preserves_explicit_config_flag ... ok
[INFO] [stdout] test driver::tests::init_unknown_preset_in_choices_errors ... ok
[INFO] [stdout] test driver::tests::init_propagates_doctor_exit_code ... ok
[INFO] [stdout] test driver::tests::init_user_says_no_to_overwrite_does_not_clobber_backup ... ok
[INFO] [stdout] test driver::tests::init_snippet_uses_bare_command_for_implicit_xdg_path ... ok
[INFO] [stdout] test driver::tests::init_succeeds_when_both_config_and_backup_already_exist ... ok
[INFO] [stdout] test driver::tests::init_without_resolvable_path_errors ... ok
[INFO] [stdout] test driver::tests::init_warns_when_config_path_contains_spaces ... ok
[INFO] [stdout] test driver::tests::init_warns_when_config_path_contains_shell_metacharacters ... ok
[INFO] [stdout] test driver::tests::init_writes_schema_directive_at_top_of_config ... ok
[INFO] [stdout] test driver::tests::init_writes_to_resolved_xdg_path ... ok
[INFO] [stdout] test driver::tests::init_warns_about_env_resolved_path_with_spaces ... ok
[INFO] [stdout] test driver::tests::install_action_with_empty_home_exits_one ... ok
[INFO] [stdout] test driver::tests::install_action_refuses_non_utf8_config_path ... ok
[INFO] [stdout] test driver::tests::install_action_with_home_unset_exits_one ... ok
[INFO] [stdout] test driver::tests::json_command_value_quotes_paths_with_spaces ... ok
[INFO] [stdout] test driver::tests::malformed_json_renders_marker_and_routes_parse_error_to_injected_stderr ... ok
[INFO] [stdout] test driver::tests::meta_flags_skip_terminal_width_detection ... ok
[INFO] [stdout] test driver::tests::minimal_payload_round_trips_through_cli_main ... ok
[INFO] [stdout] test driver::tests::install_action_honors_linesmith_config_env_var ... ok
[INFO] [stdout] test driver::tests::install_action_creates_settings_when_absent ... ok
[INFO] [stdout] test driver::tests::install_action_treats_empty_linesmith_config_env_as_unset ... ok
[INFO] [stdout] test driver::tests::install_action_threads_config_flag_with_shell_quoting ... ok
[INFO] [stdout] test driver::tests::minimal_theme_under_palette16_emits_no_color ... ok
[INFO] [stdout] test driver::tests::multi_line_empty_segments_in_a_line_still_emits_trailing_newline ... ok
[INFO] [stdout] test driver::tests::needs_shell_quoting_flags_metacharacters_and_whitespace ... ok
[INFO] [stdout] test driver::tests::multi_line_config_renders_lines_in_parsed_integer_order ... ok
[INFO] [stdout] test driver::tests::multi_line_config_renders_one_writeln_per_line ... ok
[INFO] [stdout] test driver::tests::overwrite_policy_constructors_lock_the_bit_mapping ... ok
[INFO] [stdout] test driver::tests::no_color_capability_strips_theme_under_default ... ok
[INFO] [stdout] test driver::tests::no_color_flag_outranks_force_color_env_end_to_end ... ok
[INFO] [stdout] test driver::tests::multi_line_with_no_numbered_tables_falls_back_to_single_line_render ... ok
[INFO] [stdout] test driver::tests::parse_confirmation_accepts_y_yes_case_insensitive_and_trims_whitespace ... ok
[INFO] [stdout] test driver::tests::multi_line_parse_failure_emits_one_question_marker_not_per_line ... ok
[INFO] [stdout] test driver::tests::presets_apply_empty_name_fails_with_unknown_preset ... ok
[INFO] [stdout] test driver::tests::presets_apply_creates_missing_parent_dirs ... ok
[INFO] [stdout] test driver::tests::power_user_preset_renders_two_lines_end_to_end ... ok
[INFO] [stdout] test driver::tests::presets_apply_eof_without_force_aborts ... ok
[INFO] [stdout] test driver::tests::install_action_warns_when_replacing_third_party_status_line ... ok
[INFO] [stdout] test driver::tests::presets_apply_force_replaces_existing_backup ... ok
[INFO] [stdout] test driver::tests::presets_apply_prompt_rejects_on_n_and_leaves_config_untouched ... ok
[INFO] [stdout] test driver::tests::presets_apply_honors_explicit_config_flag_over_xdg_path ... ok
[INFO] [stdout] test driver::tests::presets_apply_force_skips_prompt_and_backs_up ... ok
[INFO] [stdout] test driver::tests::presets_apply_unknown_name_errors_and_lists_valid ... ok
[INFO] [stdout] test driver::tests::presets_apply_refuses_to_clobber_existing_backup_without_force ... ok
[INFO] [stdout] test driver::tests::presets_apply_without_resolvable_path_errors ... ok
[INFO] [stdout] test driver::tests::presets_apply_writes_schema_directive_at_top_of_config ... ok
[INFO] [stdout] test driver::tests::presets_apply_write_failure_reports_stderr_and_exits_one ... ok
[INFO] [stdout] test driver::tests::presets_list_ignores_force_flag_by_rejecting_it ... ok
[INFO] [stdout] test driver::tests::presets_apply_prompts_on_existing_config_and_accepts_y ... ok
[INFO] [stdout] test driver::tests::presets_list_prints_every_preset_name ... ok
[INFO] [stdout] test driver::tests::render_path_surfaces_unknown_key_warnings_on_stderr ... ok
[INFO] [stdout] test driver::tests::render_io_error_exits_one ... ok
[INFO] [stdout] test driver::tests::shell_quote_arg_escapes_embedded_single_quotes ... ok
[INFO] [stdout] test driver::tests::shell_quote_arg_passes_through_clean_paths ... ok
[INFO] [stdout] test driver::tests::shell_quote_arg_wraps_leading_dash_paths ... ok
[INFO] [stdout] test driver::tests::shell_quote_arg_wraps_paths_containing_newlines ... ok
[INFO] [stdout] test driver::tests::shell_quote_arg_wraps_paths_with_whitespace ... ok
[INFO] [stdout] test driver::tests::themes_list_includes_user_themes_with_source_path ... ok
[INFO] [stdout] test driver::tests::themes_list_prints_every_built_in_to_stdout ... ok
[INFO] [stdout] test driver::tests::themes_without_subcommand_exits_two ... ok
[INFO] [stdout] test driver::tests::unknown_flag_exits_two_and_prints_hint_to_stderr ... ok
[INFO] [stdout] test driver::tests::unknown_subcommand_exits_two ... ok
[INFO] [stdout] test driver::tests::segment_icon_overrides_render_through_cli_main ... ok
[INFO] [stdout] test driver::tests::install_then_uninstall_round_trip_leaves_unrelated_keys_intact ... ok
[INFO] [stdout] test driver::tests::uninstall_action_idempotent_when_no_file_or_no_status_line ... ok
[INFO] [stdout] test driver::tests::unknown_user_theme_name_falls_back_to_default_with_warning ... ok
[INFO] [stdout] test driver::tests::uninstall_action_refuses_to_remove_third_party_status_line ... ok
[INFO] [stdout] test driver::tests::unknown_key_warnings_emit_once_per_typo_on_render_path ... ok
[INFO] [stdout] test driver::tests::version_flag_prints_version_to_stdout_and_exits_zero ... ok
[INFO] [stdout] test driver::tests::warn_if_path_needs_user_edit_quiet_for_clean_paths ... ok
[INFO] [stdout] test driver::tests::presets_apply_writes_parsed_config_to_resolved_path ... ok
[INFO] [stdout] test driver::tests::warn_if_path_needs_user_edit_flags_leading_dash ... ok
[INFO] [stdout] test driver::tests::unknown_theme_falls_back_to_default_with_warning ... ok
[INFO] [stdout] test driver::tests::user_themes_dir_prefers_xdg_over_home ... ok
[INFO] [stdout] test tui::app::tests::apply_commit_save_sets_error_feedback_on_io_failure ... ok
[INFO] [stdout] test tui::app::tests::ctrl_c_sets_quit ... ok
[INFO] [stdout] test tui::app::tests::ctrl_c_uppercase_also_quits ... ok
[INFO] [stdout] test tui::app::tests::ctrl_c_with_unresolved_error_emits_lsm_warn_not_lsm_error ... ok
[INFO] [stdout] test tui::app::tests::clean_commit_clears_prior_error_banner ... ok
[INFO] [stdout] test tui::app::tests::apply_commit_save_sets_error_feedback_on_no_target ... ok
[INFO] [stdout] test driver::tests::user_theme_from_disk_renders_with_configured_palette ... ok
[INFO] [stdout] test tui::app::tests::add_verb_through_app_dispatch_opens_picker_and_inserts_on_enter ... ok
[INFO] [stdout] test tui::app::tests::enter_on_main_menu_navigates_to_placeholder ... ok
[INFO] [stdout] test tui::app::tests::esc_on_main_menu_quits ... ok
[INFO] [stdout] test tui::app::tests::esc_on_placeholder_returns_to_main_menu ... ok
[INFO] [stdout] test tui::app::tests::footer_hint_text_matches_screen_keybind_semantics ... ok
[INFO] [stdout] test tui::app::tests::apply_commit_save_sets_saved_feedback_on_success ... ok
[INFO] [stdout] test tui::app::tests::ctrl_s_after_failure_retries_and_lands_saved ... ok
[INFO] [stdout] test tui::app::tests::lowercase_q_sets_quit ... ok
[INFO] [stdout] test tui::app::tests::next_event_clears_saved_toast_but_not_error_banner ... ok
[INFO] [stdout] test tui::app::tests::implicit_default_commit_keeps_feedback_none ... ok
[INFO] [stdout] test tui::app::tests::non_quit_key_routes_to_screen_without_quitting ... ok
[INFO] [stdout] test tui::app::tests::ctrl_s_emits_deprecation_warn_and_force_flushes ... ok
[INFO] [stdout] test tui::app::tests::items_editor_swap_auto_saves_without_ctrl_s ... ok
[INFO] [stdout] test tui::app::tests::q_on_placeholder_quits ... ok
[INFO] [stdout] test tui::app::tests::items_editor_swap_through_app_dispatch_mutates_document_and_config ... ok
[INFO] [stdout] test tui::app::tests::quit_is_unconditional_under_instant_apply ... ok
[INFO] [stdout] test tui::app::tests::ctrl_s_suppresses_deprecation_warn_when_save_error_active ... ok
[INFO] [stdout] test tui::app::tests::no_target_dedup_emits_warn_only_on_first_emission ... ok
[INFO] [stdout] test tui::app::tests::ctrl_s_on_raw_value_editor_suppresses_save_and_warns ... ok
[INFO] [stdout] test tui::app::tests::resize_event_does_not_change_state ... ok
[INFO] [stdout] test tui::app::tests::resize_event_preserves_saved_toast ... ok
[INFO] [stdout] test tui::app::tests::quit_with_unresolved_error_emits_lsm_error_for_post_exit_trail ... ok
[INFO] [stdout] test tui::app::tests::save_error_hint_maps_known_kinds_and_falls_through_for_others ... ok
[INFO] [stdout] test tui::app::tests::q_keypress_on_raw_value_editor_inserts_text_does_not_quit ... ok
[INFO] [stdout] test tui::app::tests::raw_verb_preserves_literal_non_string_string_id ... ok
[INFO] [stdout] test tui::app::tests::raw_verb_on_non_string_entry_seeds_empty_buffer_through_dispatch ... ok
[INFO] [stdout] test tui::app::tests::save_returns_no_target_when_save_target_unset ... ok
[INFO] [stdout] test tui::app::tests::save_creates_missing_file_even_when_document_unchanged ... ok
[INFO] [stdout] test tui::app::tests::raw_verb_on_default_segment_seeds_with_runtime_default ... ok
[INFO] [stdout] test tui::app::tests::save_returns_error_when_path_unwritable ... ok
[INFO] [stdout] test tui::app::tests::save_returns_clean_when_no_edits_and_file_present ... ok
[INFO] [stdout] test tui::app::tests::unrelated_keys_do_not_quit ... ok
[INFO] [stdout] test tui::app::tests::screen_driven_quit_with_unresolved_error_also_logs ... ok
[INFO] [stdout] test tui::environment_warning::tests::always_policy_suppresses_ladder_but_keeps_terminal_specific ... ok
[INFO] [stdout] test tui::app::tests::theme_picker_cursor_diverges_from_committed_theme_on_navigation ... ok
[INFO] [stdout] test tui::environment_warning::tests::message_renders_remediation_imperative_for_each_variant ... ok
[INFO] [stdout] test tui::environment_warning::tests::never_policy_emits_no_warnings_at_all ... ok
[INFO] [stdout] test tui::environment_warning::tests::no_color_support_fires_when_capability_is_none_under_auto_policy ... ok
[INFO] [stdout] test tui::environment_warning::tests::limited_palette_fires_only_when_below_truecolor_under_auto ... ok
[INFO] [stdout] test tui::environment_warning::tests::prepend_env_warnings_is_noop_when_compute_returns_empty ... ok
[INFO] [stdout] test tui::environment_warning::tests::no_color_wins_over_palette_tier_under_auto_policy ... ok
[INFO] [stdout] test tui::environment_warning::tests::prepend_env_warnings_lands_env_warnings_at_index_zero ... ok
[INFO] [stdout] test tui::environment_warning::tests::three_way_additive_palette_vscode_tmux ... ok
[INFO] [stdout] test tui::environment_warning::tests::tmux_warning_only_fires_when_colors_render_at_reduced_tier ... ok
[INFO] [stdout] test tui::environment_warning::tests::truecolor_with_clean_env_emits_no_warnings ... ok
[INFO] [stdout] test tui::environment_warning::tests::vscode_check_is_case_insensitive ... ok
[INFO] [stdout] test tui::environment_warning::tests::vscode_warning_is_additive_with_palette_warning ... ok
[INFO] [stdout] test tui::app::tests::save_writes_dirty_document_atomically_and_clears_dirty_flag ... ok
[INFO] [stdout] test tui::install_screen::tests::esc_back_navigates_to_main_menu_without_acting ... ok
[INFO] [stdout] test tui::app::tests::save_recreates_file_deleted_externally ... ok
[INFO] [stdout] test tui::app::tests::save_preserves_comments_and_blank_lines_on_round_trip ... ok
[INFO] [stdout] test tui::app::tests::successful_commit_after_error_clears_error_banner ... ok
[INFO] [stdout] test tui::install_screen::tests::install_refuses_to_clobber_other_tool ... ok
[INFO] [stderr] linesmith [warn]: install: existing statusLine points to "ccstatusline"; remove it first via your editor of choice
[INFO] [stdout] test tui::install_screen::tests::install_verb_creates_settings_file_when_absent ... ok
[INFO] [stderr] linesmith [warn]: uninstall: statusLine points to "ccstatusline", not linesmith; refusing to remove
[INFO] [stdout] test tui::install_screen::tests::install_verb_updates_existing_linesmith_settings ... ok
[INFO] [stdout] test tui::install_screen::tests::uninstall_refuses_to_remove_other_tool ... ok
[INFO] [stdout] test tui::install_screen::tests::uninstall_verb_is_idempotent_when_no_file ... ok
[INFO] [stdout] test tui::install_screen::tests::uninstall_verb_is_idempotent_when_no_status_line ... ok
[INFO] [stdout] test tui::install_screen::tests::uninstall_verb_removes_status_line_and_re_detects ... ok
[INFO] [stdout] test tui::items_editor::tests::add_verb_navigates_to_type_picker_with_after_target ... ok
[INFO] [stdout] test tui::items_editor::tests::add_verb_works_on_empty_segment_array ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_insert_at_last_index_appends_and_advances_cursor ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_insert_emits_warning_on_failure ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_insert_into_empty_explicit_array_lands_at_index_zero ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_insert_lands_segment_at_target_and_advances_cursor ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_replace_accepts_empty_string_at_target ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_replace_emits_warning_on_failure ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_replace_swaps_value_at_index_and_advances_cursor ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_replace_with_separator_target_and_empty_value_sets_explicit_empty ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_replace_with_separator_target_preserves_default_state_via_space ... ok
[INFO] [stdout] test tui::items_editor::tests::apply_replace_with_separator_target_updates_character_field ... ok
[INFO] [stdout] test tui::items_editor::tests::classify_entry_distinguishes_separator_inline_table_from_segment ... ok
[INFO] [stdout] test tui::items_editor::tests::clear_verb_empties_segments_to_explicit_empty_array ... ok
[INFO] [stdout] test tui::items_editor::tests::clear_verb_on_already_empty_array_is_idempotent ... ok
[INFO] [stdout] test tui::items_editor::tests::clone_verb_at_last_index_inserts_at_end_and_advances_cursor ... ok
[INFO] [stdout] test tui::items_editor::tests::clone_verb_inserts_copy_after_cursor_and_advances_cursor ... ok
[INFO] [stdout] test tui::items_editor::tests::clone_verb_on_non_string_entry_clones_through_placeholder ... ok
[INFO] [stdout] test tui::items_editor::tests::delete_verb_against_silent_document_materializes_then_deletes ... ok
[INFO] [stdout] test tui::items_editor::tests::delete_verb_at_last_row_clamps_cursor_back_one ... ok
[INFO] [stdout] test tui::items_editor::tests::delete_verb_removes_cursor_segment_and_keeps_cursor_in_range ... ok
[INFO] [stdout] test tui::items_editor::tests::empty_document_falls_back_to_runtime_default_segments ... ok
[INFO] [stdout] test tui::items_editor::tests::esc_back_navigates_to_main_menu_carrying_prior_state ... ok
[INFO] [stderr] linesmith [warn]: items editor: merge toggle inert at index 1 (line=Single); merge applies to segment entries only
[INFO] [stderr] linesmith [warn]: items editor: merge toggle inert at index 0 (line=Single); merge applies to segment entries only
[INFO] [stdout] test tui::items_editor::tests::esc_with_modifier_does_not_back_navigate ... ok
[INFO] [stdout] test tui::items_editor::tests::explicitly_empty_segments_array_renders_zero_rows ... ok
[INFO] [stdout] test tui::items_editor::tests::first_swap_against_silent_document_materializes_defaults ... ok
[INFO] [stdout] test tui::items_editor::tests::insert_verb_navigates_to_type_picker_with_before_target ... ok
[INFO] [stdout] test tui::items_editor::tests::insert_verb_works_on_empty_segment_array ... ok
[INFO] [stdout] test tui::items_editor::tests::left_arrow_opens_picker_in_normal_mode ... ok
[INFO] [stdout] test tui::items_editor::tests::merge_verb_inert_on_kindless_inline_table_entry ... ok
[INFO] [stdout] test tui::items_editor::tests::merge_verb_inert_on_separator_entry ... ok
[INFO] [stdout] test tui::items_editor::tests::merge_verb_promotes_string_segment_to_inline_table_with_merge_flag ... ok
[INFO] [stdout] test tui::items_editor::tests::merge_verb_toggles_off_and_demotes_to_bare_string ... ok
[INFO] [stdout] test tui::items_editor::tests::merge_verb_warns_when_inert_on_separator_entry ... ok
[INFO] [stdout] test tui::items_editor::tests::missing_segments_key_falls_back_to_runtime_defaults ... ok
[INFO] [stdout] test tui::items_editor::tests::move_mode_up_at_top_does_not_mutate_document ... ok
[INFO] [stdout] test tui::items_editor::tests::move_swap_preserves_comments_and_blanks ... ok
[INFO] [stdout] test tui::items_editor::tests::move_swap_refreshes_config_to_match_document ... ok
[INFO] [stdout] test tui::items_editor::tests::move_swap_reorders_segments_and_acks_cursor ... ok
[INFO] [stdout] test tui::items_editor::tests::move_swap_with_non_string_entry_reorders_correct_array_position ... ok
[INFO] [stdout] test tui::items_editor::tests::move_swap_with_only_one_segment_is_noop ... ok
[INFO] [stdout] test tui::items_editor::tests::numbered_line_resolves_zero_padded_keys_to_same_index ... ok
[INFO] [stdout] test tui::items_editor::tests::picker_keybindings_in_move_mode_are_inert ... ok
[INFO] [stdout] test tui::items_editor::tests::raw_replace_preserves_inline_table_fields_on_segment_rename ... ok
[INFO] [stdout] test tui::items_editor::tests::raw_verb_inert_on_empty_array ... ok
[INFO] [stdout] test tui::items_editor::tests::raw_verb_on_separator_seeds_with_character_field ... ok
[INFO] [stdout] test tui::items_editor::tests::raw_verb_opens_editor_seeded_with_cursor_segment_label ... ok
[INFO] [stdout] test tui::items_editor::tests::replace_segment_preserves_multiple_inline_table_fields_on_rename ... ok
[INFO] [stdout] test tui::items_editor::tests::replace_segment_refuses_to_rename_separator_entry_under_kind_drift ... ok
[INFO] [stdout] test tui::items_editor::tests::right_arrow_opens_picker_in_normal_mode ... ok
[INFO] [stdout] test tui::items_editor::tests::segment_labels_marks_non_string_entries_with_placeholder ... ok
[INFO] [stdout] test tui::items_editor::tests::segments_array_resolves_numbered_line_path ... ok
[INFO] [stdout] test tui::install_screen::tests::snapshot_install_screen_not_installed ... ok
[INFO] [stdout] test tui::install_screen::tests::snapshot_install_screen_installed ... ok
[INFO] [stdout] test tui::install_screen::tests::snapshot_install_screen_not_present ... ok
[INFO] [stdout] test tui::install_screen::tests::snapshot_install_screen_other_tool ... ok
[INFO] [stdout] test tui::install_screen::tests::snapshot_install_screen_cursor_on_uninstall_row ... ok
[INFO] [stdout] test tui::install_screen::tests::snapshot_install_screen_other_tool_wide ... ok
[INFO] [stdout] test tui::items_editor::tests::snapshot_items_editor_default_fallback_when_no_line_table ... ok
[INFO] [stdout] test tui::items_editor::tests::space_inserts_separator_after_cursor_segment ... ok
[INFO] [stdout] test tui::items_editor::tests::space_in_move_mode_is_inert ... ok
[INFO] [stdout] test tui::items_editor::tests::snapshot_items_editor_move_mode ... ok
[INFO] [stdout] test tui::items_editor::tests::swap_on_numbered_line_with_missing_array_does_not_materialize ... ok
[INFO] [stdout] test tui::items_editor::tests::swap_segments_numbered_path_isolates_to_targeted_line ... ok
[INFO] [stdout] test tui::items_editor::tests::swap_segments_returns_false_for_numbered_with_missing_array ... ok
[INFO] [stdout] test tui::items_editor::tests::swap_segments_returns_false_for_out_of_range_index ... ok
[INFO] [stdout] test tui::items_editor::tests::toml_round_trip_preserves_inline_table_separator_entry ... ok
[INFO] [stdout] test tui::items_editor::tests::verb_letters_in_move_mode_are_inert ... ok
[INFO] [stdout] test tui::items_editor::tests::verb_helpers_on_numbered_with_present_array_mutate_only_targeted_line ... ok
[INFO] [stdout] test tui::items_editor::tests::space_on_empty_array_inserts_at_zero ... ok
[INFO] [stdout] test tui::line_picker::tests::add_empty_line_creates_line_one_when_document_is_empty ... ok
[INFO] [stdout] test tui::line_picker::tests::add_empty_line_rejects_zero_padded_duplicate ... ok
[INFO] [stdout] test tui::line_picker::tests::add_then_enter_round_trips_through_items_editor_for_new_line ... ok
[INFO] [stdout] test tui::line_picker::tests::add_empty_line_picks_next_index_above_existing_max ... ok
[INFO] [stdout] test tui::items_editor::tests::snapshot_items_editor_wide_width ... ok
[INFO] [stdout] test tui::line_picker::tests::add_then_delete_returns_to_empty ... ok
[INFO] [stdout] test tui::line_picker::tests::dedup_edit_round_trip_leaves_shadow_table_byte_identical ... ok
[INFO] [stdout] test tui::line_picker::tests::delete_line_removes_zero_padded_key ... ok
[INFO] [stdout] test tui::line_picker::tests::delete_verb_removes_highlighted_line ... ok
[INFO] [stdout] test tui::line_picker::tests::delete_on_empty_picker_is_inert ... ok
[INFO] [stdout] test tui::line_picker::tests::describe_line_counts_distinguishes_no_segments_from_empty ... ok
[INFO] [stdout] test tui::line_picker::tests::enter_carries_picker_state_so_esc_back_nav_returns_to_picker ... ok
[INFO] [stdout] test tui::line_picker::tests::enter_navigates_to_items_editor_with_correct_line_key ... ok
[INFO] [stdout] test tui::line_picker::tests::enter_on_empty_picker_is_inert ... ok
[INFO] [stdout] test tui::line_picker::tests::esc_back_navigates_to_main_menu ... ok
[INFO] [stdout] test tui::line_picker::tests::numbered_lines_dedups_keys_that_parse_to_same_index ... ok
[INFO] [stdout] test tui::line_picker::tests::next_line_index_handles_saturation ... ok
[INFO] [stdout] test tui::line_picker::tests::numbered_lines_sorts_ascending_and_skips_non_numeric ... ok
[INFO] [stdout] test tui::line_picker::tests::line_entry_counts_splits_segments_separators_and_other ... ok
[INFO] [stdout] test tui::items_editor::tests::snapshot_items_editor_narrow_width ... ok
[INFO] [stdout] test tui::list_screen::tests::arrows_on_empty_list_are_no_op ... ok
[INFO] [stdout] test tui::list_screen::tests::caller_ack_between_swaps_advances_to_next_neighbor ... ok
[INFO] [stdout] test tui::list_screen::tests::arrows_with_modifier_in_normal_mode_are_unhandled ... ok
[INFO] [stdout] test tui::list_screen::tests::cursor_is_clamped_when_list_shrinks_under_it ... ok
[INFO] [stdout] test tui::list_screen::tests::enter_in_move_mode_exits_move_mode ... ok
[INFO] [stdout] test tui::list_screen::tests::enter_on_empty_list_is_unhandled_regardless_of_move_mode_supported ... ok
[INFO] [stdout] test tui::list_screen::tests::enter_with_move_mode_supported_toggles_into_move_mode ... ok
[INFO] [stdout] test tui::list_screen::tests::down_advances_cursor ... ok
[INFO] [stdout] test tui::list_screen::tests::down_at_bottom_wraps_to_top ... ok
[INFO] [stdout] test tui::list_screen::tests::enter_with_stale_cursor_clamps_before_activate ... ok
[INFO] [stdout] test tui::list_screen::tests::enter_without_move_mode_returns_activate ... ok
[INFO] [stdout] test tui::list_screen::tests::default_state_is_cursor_zero_normal_mode ... ok
[INFO] [stdout] test tui::list_screen::tests::esc_in_move_mode_exits_move_mode ... ok
[INFO] [stdout] test tui::list_screen::tests::esc_in_normal_mode_is_unhandled_for_global_quit ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_arrows_with_modifier_are_unhandled ... ok
[INFO] [stdout] test tui::list_screen::tests::handle_key_clamps_cursor_and_drops_move_mode_trigger_in_one_call ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_down_requests_swap_without_moving_cursor ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_supported_flipping_off_drops_trigger_key ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_down_at_bottom_does_not_swap_or_wrap ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_down_with_stale_cursor_clamps_before_swap_check ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_up_at_top_does_not_swap_or_wrap ... ok
[INFO] [stdout] test tui::items_editor::tests::snapshot_items_editor_populated_segments ... ok
[INFO] [stdout] test tui::list_screen::tests::registered_verb_letter_emits_action ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_up_requests_swap_without_moving_cursor ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_verb_letter_is_unhandled ... ok
[INFO] [stdout] test tui::list_screen::tests::move_mode_with_one_row_is_consumed_no_swap ... ok
[INFO] [stdout] test tui::line_picker::tests::snapshot_line_picker_multiple_lines ... ok
[INFO] [stdout] test tui::list_screen::tests::render_clamps_stale_cursor_for_both_highlight_and_description ... ok
[INFO] [stdout] test tui::list_screen::tests::render_advertises_enter_move_mode_when_supported_but_not_active ... ok
[INFO] [stdout] test tui::list_screen::tests::render_in_move_mode_shows_move_mode_help_row ... ok
[INFO] [stdout] test tui::list_screen::tests::render_multi_verb_help_row_uses_middle_dot_separator ... ok
[INFO] [stdout] test tui::list_screen::tests::set_cursor_clamps_to_valid_range ... ok
[INFO] [stdout] test tui::list_screen::tests::up_at_top_wraps_to_bottom ... ok
[INFO] [stdout] test tui::list_screen::tests::uppercase_letter_in_verb_list_still_does_not_dispatch ... ok
[INFO] [stdout] test tui::list_screen::tests::verb_letter_on_empty_list_returns_unhandled ... ok
[INFO] [stdout] test tui::list_screen::tests::verb_letter_with_modifier_is_unhandled ... ok
[INFO] [stdout] test tui::list_screen::tests::render_long_label_truncates_without_panic ... ok
[INFO] [stdout] test tui::main_menu::tests::down_advances_cursor ... ok
[INFO] [stdout] test tui::main_menu::tests::edit_colors_routes_to_theme_picker_regardless_of_layout_mode ... ok
[INFO] [stdout] test tui::main_menu::tests::edit_colors_threads_config_theme_into_picker_initial_cursor ... ok
[INFO] [stdout] test tui::main_menu::tests::edit_lines_auto_promotes_to_line_picker_when_numbered_tables_present ... ok
[INFO] [stdout] test tui::main_menu::tests::edit_lines_does_not_auto_promote_when_segments_array_is_populated ... ok
[INFO] [stdout] test tui::main_menu::tests::edit_lines_on_multi_line_layout_routes_to_line_picker ... ok
[INFO] [stdout] test tui::main_menu::tests::enter_on_default_cursor_navigates_to_items_editor ... ok
[INFO] [stdout] test tui::main_menu::tests::enter_on_each_non_exit_row_routes_to_correct_screen ... ok
[INFO] [stdout] test tui::main_menu::tests::cursor_preserved_across_activate_esc_activate_round_trip ... ok
[INFO] [stdout] test tui::main_menu::tests::enter_on_exit_row_quits ... ok
[INFO] [stdout] test tui::main_menu::tests::enter_on_install_row_with_resolved_settings_path_opens_install_screen ... ok
[INFO] [stdout] test tui::main_menu::tests::esc_quits ... ok
[INFO] [stdout] test tui::main_menu::tests::esc_with_modifier_does_not_quit ... ok
[INFO] [stdout] test tui::main_menu::tests::menu_items_matches_expected_layout ... ok
[INFO] [stdout] test tui::main_menu::tests::placeholder_carries_main_menu_state_for_back_nav ... ok
[INFO] [stdout] test tui::list_screen::tests::unregistered_letter_is_unhandled ... ok
[INFO] [stdout] test tui::main_menu::tests::theme_picker_round_trips_main_menu_cursor_through_esc_back_nav ... ok
[INFO] [stdout] test tui::list_screen::tests::render_wide_grapheme_label_preserves_cell_layout ... ok
[INFO] [stdout] test tui::main_menu::tests::up_at_top_wraps_to_last ... ok
[INFO] [stdout] test tui::placeholder::tests::esc_returns_navigate_to_main_menu ... ok
[INFO] [stdout] test tui::placeholder::tests::esc_with_modifier_does_not_back_navigate ... ok
[INFO] [stdout] test tui::placeholder::tests::other_keys_stay_on_placeholder ... ok
[INFO] [stdout] test tui::list_screen::tests::render_with_empty_rows_does_not_panic ... ok
[INFO] [stdout] test tui::preview::tests::color_to_ratatui_covers_every_known_variant ... ok
[INFO] [stdout] test tui::preview::tests::format_age_steps_down_resolution_with_age ... ok
[INFO] [stdout] test tui::preview::tests::format_captured_drain_appends_age_suffix_above_threshold ... ok
[INFO] [stdout] test tui::preview::tests::format_captured_drain_appends_age_suffix_exactly_at_threshold ... ok
[INFO] [stdout] test tui::preview::tests::format_captured_drain_omits_age_suffix_below_threshold ... ok
[INFO] [stdout] test tui::preview::tests::ansi_to_ratatui_maps_every_variant_with_correct_brightness_swap ... ok
[INFO] [stdout] test tui::preview::tests::format_captured_drain_prepends_dropped_notice ... ok
[INFO] [stdout] test tui::preview::tests::no_color_capability_strips_fg_but_keeps_decorations ... ok
[INFO] [stdout] test tui::items_editor::tests::snapshot_items_editor_empty_segments ... ok
[INFO] [stdout] test tui::preview::tests::preview_context_falls_back_when_parse_rejects ... ok
[INFO] [stdout] test tui::preview::tests::preview_context_parses_without_panicking ... ok
[INFO] [stdout] test tui::preview::tests::render_lines_surfaces_unknown_segment_warning ... ok
[INFO] [stdout] test tui::list_screen::tests::render_smoke_paints_title_cursor_and_description ... ok
[INFO] [stdout] test tui::preview::tests::render_lines_for_two_line_config_returns_two_lines ... ok
[INFO] [stdout] test tui::main_menu::tests::snapshot_main_menu_default_cursor ... ok
[INFO] [stdout] test tui::preview::tests::render_lines_with_plugin_segment_does_not_crash ... ok
[INFO] [stdout] test tui::preview::tests::run_to_span_applies_decorations ... ok
[INFO] [stdout] test tui::preview::tests::run_to_span_fg_wins_over_role_when_both_set ... ok
[INFO] [stdout] test tui::main_menu::tests::snapshot_main_menu_cursor_on_install_row ... ok
[INFO] [stdout] test tui::placeholder::tests::snapshot_placeholder_renders_centered_panel ... ok
[INFO] [stdout] test tui::preview::tests::run_to_span_maps_fg_color_to_ratatui_rgb ... ok
[INFO] [stdout] test tui::preview::tests::run_to_span_resolves_role_through_theme_when_fg_unset ... ok
[INFO] [stdout] test tui::property_screen::tests::digit_is_unhandled_even_if_row_letter_collides_numerically ... ok
[INFO] [stdout] test tui::property_screen::tests::empty_rows_make_every_letter_unhandled ... ok
[INFO] [stdout] test tui::property_screen::tests::cjk_label_renders_without_panic_or_partial_grapheme ... ok
[INFO] [stdout] test tui::property_screen::tests::modified_letter_is_unhandled ... ok
[INFO] [stdout] test tui::property_screen::tests::navigation_and_function_keys_bubble_to_global ... ok
[INFO] [stdout] test tui::property_screen::tests::non_ascii_letter_is_unhandled ... ok
[INFO] [stdout] test tui::property_screen::tests::empty_rows_still_paints_title_chrome ... ok
[INFO] [stdout] test tui::property_screen::tests::note_paragraphs_render_as_bulleted_block ... ok
[INFO] [stdout] test tui::property_screen::tests::render_in_height_one_terminal_does_not_panic ... ok
[INFO] [stdout] test tui::property_screen::tests::long_label_does_not_panic_in_narrow_terminal ... ok
[INFO] [stdout] test tui::property_screen::tests::row_letter_dispatches_action ... ok
[INFO] [stdout] test tui::property_screen::tests::renders_all_four_row_variants_with_inline_hints ... ok
[INFO] [stdout] test tui::property_screen::tests::toggle_disabled_renders_x_glyph ... ok
[INFO] [stdout] test tui::property_screen::tests::render_in_height_zero_terminal_does_not_panic ... ok
[INFO] [stdout] test tui::property_screen::tests::uppercase_letter_does_not_dispatch_lowercase_action ... ok
[INFO] [stdout] test tui::property_screen::tests::unclaimed_lowercase_letter_is_unhandled ... ok
[INFO] [stdout] test tui::property_screen::tests::value_cycle_clear_letter_dispatches_alongside_cycle_letter ... ok
[INFO] [stdout] test tui::property_screen::tests::status_header_renders_when_present_and_absent_when_none ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::altgr_modified_chars_insert_as_text ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::arrows_move_cursor_within_bounds ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::backspace_at_zero_is_inert ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::backspace_deletes_char_before_cursor ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::backspace_in_middle_removes_char_left_of_cursor ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::backspace_on_multi_byte_char_does_not_panic ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::char_inserted_at_cursor_advances_cursor ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::ctrl_and_alt_modified_chars_are_inert ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::delete_removes_char_at_cursor ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::enter_commits_text_and_returns_to_items_editor ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::esc_cancels_and_leaves_document_untouched ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::home_and_end_jump_to_bounds ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::shift_char_is_treated_as_text_input ... ok
[INFO] [stdout] test tui::property_screen::tests::value_cycle_without_clear_omits_clear_hint ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::snapshot_raw_value_editor_empty_buffer ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::snapshot_raw_value_editor_with_seed_text ... ok
[INFO] [stdout] test tui::tests::classify_focus_and_paste_are_filtered ... ok
[INFO] [stdout] test tui::raw_value_editor::tests::unicode_char_inserts_correctly ... ok
[INFO] [stdout] test tui::tests::classify_release_key_is_filtered ... ok
[INFO] [stdout] test tui::tests::classify_press_key_routes_to_event_key ... ok
[INFO] [stdout] test tui::tests::classify_repeat_key_is_filtered ... ok
[INFO] [stdout] test tui::tests::classify_resize_routes_to_event_resize ... ok
[INFO] [stdout] test tui::preview::tests::render_lines_with_default_config_returns_one_line_no_warnings ... ok
[INFO] [stdout] test tui::preview::tests::render_lines_drains_captured_sink_into_warnings ... ok
[INFO] [stdout] test tui::tests::flush_captured_to_stderr_drains_with_boot_path_prefix ... ok
[INFO] [stdout] test doctor::tests::plugins_render_time_error_panics_in_debug_builds - should panic ... ok
[INFO] [stdout] test tui::tests::is_recoverable_io_error_only_for_interrupted ... ok
[INFO] [stdout] test tui::tests::load_config_malformed_toml_disables_save_with_warning ... ok
[INFO] [stdout] test tui::tests::load_config_missing_file_allows_save_to_path ... ok
[INFO] [stdout] test tui::tests::load_config_none_path_refuses_save ... ok
[INFO] [stdout] test tui::tests::load_config_unknown_keys_surface_as_warning ... ok
[INFO] [stdout] test tui::property_screen::tests::duplicate_row_letters_panic_in_debug - should panic ... ok
[INFO] [stdout] test tui::property_screen::tests::uppercase_row_letter_panics_in_debug - should panic ... ok
[INFO] [stdout] test tui::tests::load_config_unreadable_file_propagates_error ... FAILED
[INFO] [stdout] test tui::tests::load_config_valid_toml_carries_document_and_original_text ... ok
[INFO] [stdout] test tui::tests::retry_on_interrupt_propagates_non_interrupted_errors ... ok
[INFO] [stdout] test tui::tests::retry_on_interrupt_retries_past_eintr_and_returns_value ... ok
[INFO] [stdout] test tui::theme_picker::tests::cursor_falls_back_to_first_theme_when_current_unknown ... ok
[INFO] [stdout] test tui::theme_picker::tests::cursor_starts_on_currently_configured_theme ... ok
[INFO] [stdout] test tui::tests::retry_on_interrupt_returns_value_on_first_success ... ok
[INFO] [stdout] test tui::theme_picker::tests::enter_on_default_with_absent_theme_key_does_not_dirty_document ... ok
[INFO] [stdout] test tui::theme_picker::tests::esc_back_navigates_to_main_menu_without_committing ... ok
[INFO] [stdout] test tui::theme_picker::tests::enter_commits_cursor_theme_to_document_and_model ... ok
[INFO] [stdout] test tui::theme_picker::tests::set_theme_default_is_noop_when_document_omits_theme_key ... ok
[INFO] [stdout] test tui::theme_picker::tests::picker_iterates_full_registry_so_user_themes_surface_through_with_user_themes ... ok
[INFO] [stdout] test tui::theme_picker::tests::set_theme_default_writes_explicit_value_when_document_already_has_theme_key ... ok
[INFO] [stdout] test tui::theme_picker::tests::set_theme_lands_at_root_when_inserted_into_doc_with_existing_tables ... ok
[INFO] [stdout] test tui::theme_picker::tests::set_theme_refuses_to_clobber_non_scalar_theme_entry ... ok
[INFO] [stdout] test tui::theme_picker::tests::set_theme_replaces_existing_root_value_in_place_preserving_decor ... ok
[INFO] [stdout] test tui::theme_picker::tests::set_theme_same_name_on_existing_value_is_idempotent ... ok
[INFO] [stdout] test tui::theme_picker::tests::set_theme_preserves_trailing_inline_comment_on_existing_value ... ok
[INFO] [stdout] test tui::theme_picker::tests::snapshot_theme_picker_unknown_current_banner ... ok
[INFO] [stdout] test tui::theme_picker::tests::unknown_current_is_none_when_configured_theme_resolves ... ok
[INFO] [stdout] test tui::type_picker::tests::candidates_include_non_default_built_in_segments ... ok
[INFO] [stdout] test tui::type_picker::tests::chord_modifier_keys_are_inert ... ok
[INFO] [stdout] test tui::type_picker::tests::enter_inserts_after_cursor_and_returns_to_editor ... ok
[INFO] [stdout] test tui::theme_picker::tests::snapshot_theme_picker_default_selection ... ok
[INFO] [stdout] test tui::type_picker::tests::enter_inserts_before_cursor_at_index_zero ... ok
[INFO] [stdout] test tui::type_picker::tests::esc_returns_to_items_editor_without_mutating_document ... ok
[INFO] [stdout] test tui::type_picker::tests::left_wraps_from_first_to_last_candidate ... ok
[INFO] [stdout] test tui::type_picker::tests::navigate_advances_cursor_by_one_in_the_middle ... ok
[INFO] [stdout] test tui::type_picker::tests::esc_round_trips_prev_editor_cursor_through_mem_take ... ok
[INFO] [stdout] test tui::type_picker::tests::right_wraps_from_last_to_first_candidate ... ok
[INFO] [stdout] test tui::type_picker::tests::visible_window_keeps_cursor_in_view_at_each_position ... ok
[INFO] [stdout] test tui::type_picker::tests::snapshot_type_picker_after_first_segment ... ok
[INFO] [stdout] test tui::preview::tests::render_lines_with_sink_none_does_not_drain_global_sink ... ok
[INFO] [stdout] test tui::tests::draw_with_retry_bails_on_persistent_failure ... ok
[INFO] [stdout] test tui::tests::draw_with_retry_calls_draw_once_on_success ... ok
[INFO] [stdout] test tui::tests::draw_with_retry_retries_once_on_transient_failure ... ok
[INFO] [stdout] test tui::tests::flush_captured_to_stderr_surfaces_dropped_count_on_overflow ... ok
[INFO] [stdout] test tui::tests::retry_on_interrupt_emits_storm_breadcrumb_once_at_threshold ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tui::tests::load_config_unreadable_file_propagates_error stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tui::tests::load_config_unreadable_file_propagates_error' (5361) panicked at crates/linesmith/src/tui/mod.rs:893:9:
[INFO] [stdout] expected error, got Ok(LoadOutcome { config: Config { line: None, theme: None, layout: SingleLine, layout_options: None, segments: {}, plugin_dirs: [], preset: None, plugins: None, schema_url: None }, document: DocumentMut { root: Table(Table { decor: Decor { prefix: "default", suffix: "default" }, implicit: false, dotted: false, doc_position: Some(0), span: None, items: {} }), trailing: empty }, original_text: "", save_target: None, warning: Some("parse error in /tmp/.tmpqBGE5F/locked.toml: config parse: TOML parse error at line 1, column 11\n  |\n1 | irrelevant\n  |           ^\nkey with no value, expected `=`\n — opening with defaults (save disabled)") })
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55b71493a9a8 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55b71493a9a8 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55b71493a9a8 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55b71493a9a8 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55b71495701a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55b71495701a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x55b7149419e2 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x55b7149419e2 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x55b714913ce6 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55b714913ce6 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55b714930cd9 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55b71357219c - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x55b71357219c - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x55b714930f52 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x55b714930f52 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55b714913da2 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x55b7149089d9 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55b7149150dd - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55b71495788c - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55b7133bb5c1 - linesmith[649efc91ed959be5]::tui::tests::load_config_unreadable_file_propagates_error
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/linesmith/src/tui/mod.rs:893:9
[INFO] [stdout]   20:     0x55b7133a81e7 - linesmith[649efc91ed959be5]::tui::tests::load_config_unreadable_file_propagates_error::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/linesmith/src/tui/mod.rs:878:54
[INFO] [stdout]   21:     0x55b713367806 - <linesmith[649efc91ed959be5]::tui::tests::load_config_unreadable_file_propagates_error::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x55b71356527b - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x55b71356527b - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x55b713572af5 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x55b713572af5 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x55b713572af5 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x55b713572af5 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x55b713572af5 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x55b713572af5 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x55b713572af5 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x55b71356c404 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x55b71356c404 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x55b713575b72 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x55b713575b72 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x55b713575b72 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x55b713575b72 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x55b713575b72 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x55b713575b72 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x55b713575b72 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x55b71493970f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   41:     0x55b71493970f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7d1d6232faa4 - <unknown>
[INFO] [stdout]   43:     0x7d1d623bca64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tui::tests::load_config_unreadable_file_propagates_error
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 762 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.25s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p linesmith --lib`
[INFO] running `Command { std: "docker" "inspect" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6", kill_on_drop: false }`
[INFO] [stdout] 402063a6ceee07fac119557908bed694b05253437e95192e3648f6e783c2cef6
