[INFO] cloning repository https://github.com/IvanWng97/ascii-agents
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/IvanWng97/ascii-agents" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIvanWng97%2Fascii-agents", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIvanWng97%2Fascii-agents'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5e26cfb33cdb0b0f2c347b7526c48dad01103670
[INFO] testing IvanWng97/ascii-agents against master#cced03bfd61a304243a34504618ecec86c17063f for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIvanWng97%2Fascii-agents" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc1/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-4-tc1/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/IvanWng97/ascii-agents
[INFO] finished tweaking git repo https://github.com/IvanWng97/ascii-agents
[INFO] tweaked toml for git repo https://github.com/IvanWng97/ascii-agents written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/IvanWng97/ascii-agents on toolchain cced03bfd61a304243a34504618ecec86c17063f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/IvanWng97/ascii-agents 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" "+cced03bfd61a304243a34504618ecec86c17063f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded which v8.0.3
[INFO] [stderr]   Downloaded inotify v0.11.2
[INFO] [stderr]   Downloaded kqueue v1.2.0
[INFO] [stderr]   Downloaded kqueue-sys v1.1.2
[INFO] [stderr]   Downloaded filetime v0.2.29
[INFO] [stderr]   Downloaded inquire v0.9.4
[INFO] [stderr]   Downloaded gif v0.14.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0e08239fd187d2282523c8c742a2fc51b409f2ffc12f67849817c2f2d56edefd
[INFO] running `Command { std: "docker" "start" "-a" "0e08239fd187d2282523c8c742a2fc51b409f2ffc12f67849817c2f2d56edefd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0e08239fd187d2282523c8c742a2fc51b409f2ffc12f67849817c2f2d56edefd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e08239fd187d2282523c8c742a2fc51b409f2ffc12f67849817c2f2d56edefd", kill_on_drop: false }`
[INFO] [stdout] 0e08239fd187d2282523c8c742a2fc51b409f2ffc12f67849817c2f2d56edefd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5749bd9ae4d2e8c2b1eb8837e44d60dad65535cafe83d41ec233b6046be9d911
[INFO] running `Command { std: "docker" "start" "-a" "5749bd9ae4d2e8c2b1eb8837e44d60dad65535cafe83d41ec233b6046be9d911", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling critical-section v1.2.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling winnow v1.0.3
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling num-conv v0.2.2
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling lru v0.18.0
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling line-clipping v0.3.7
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling is-docker v0.2.0
[INFO] [stderr]    Compiling notify-types v2.1.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling palette v0.7.6
[INFO] [stderr]    Compiling by_address v1.2.1
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling is-wsl v0.4.0
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling inotify v0.11.2
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling notify v8.2.0
[INFO] [stderr]    Compiling pathdiff v0.2.3
[INFO] [stderr]    Compiling fast-srgb8 v1.0.0
[INFO] [stderr]    Compiling pixtuoid v0.7.0 (/opt/rustwide/workdir/crates/pixtuoid)
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling open v5.3.5
[INFO] [stderr]    Compiling which v8.0.3
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling toml_edit v0.25.12+spec-1.1.0
[INFO] [stderr]    Compiling pixtuoid-hook v0.7.0 (/opt/rustwide/workdir/crates/pixtuoid-hook)
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling palette_derive v0.7.6
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling inquire v0.9.4
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling ratatui-core v0.1.1
[INFO] [stderr]    Compiling ratatui-widgets v0.3.1
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.1
[INFO] [stderr]    Compiling ratatui-macros v0.7.1
[INFO] [stderr]    Compiling ratatui v0.30.1
[INFO] [stderr]    Compiling pixtuoid-core v0.7.0 (/opt/rustwide/workdir/crates/pixtuoid-core)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 50.60s
[INFO] running `Command { std: "docker" "inspect" "5749bd9ae4d2e8c2b1eb8837e44d60dad65535cafe83d41ec233b6046be9d911", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5749bd9ae4d2e8c2b1eb8837e44d60dad65535cafe83d41ec233b6046be9d911", kill_on_drop: false }`
[INFO] [stdout] 5749bd9ae4d2e8c2b1eb8837e44d60dad65535cafe83d41ec233b6046be9d911
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d49f4ce2040af1724e3d529961afe395d589c14705695853ee84ce9a6f077ee7
[INFO] running `Command { std: "docker" "start" "-a" "d49f4ce2040af1724e3d529961afe395d589c14705695853ee84ce9a6f077ee7", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling weezl v0.1.12
[INFO] [stderr]    Compiling pxfm v0.1.29
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling pixtuoid-hook v0.7.0 (/opt/rustwide/workdir/crates/pixtuoid-hook)
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling gif v0.14.2
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling moxcms v0.8.1
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling insta v1.47.2
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.1
[INFO] [stderr]    Compiling inquire v0.9.4
[INFO] [stderr]    Compiling ratatui v0.30.1
[INFO] [stderr]    Compiling pixtuoid-core v0.7.0 (/opt/rustwide/workdir/crates/pixtuoid-core)
[INFO] [stderr]    Compiling image v0.25.10
[INFO] [stderr]    Compiling pixtuoid v0.7.0 (/opt/rustwide/workdir/crates/pixtuoid)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 48.75s
[INFO] running `Command { std: "docker" "inspect" "d49f4ce2040af1724e3d529961afe395d589c14705695853ee84ce9a6f077ee7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d49f4ce2040af1724e3d529961afe395d589c14705695853ee84ce9a6f077ee7", kill_on_drop: false }`
[INFO] [stdout] d49f4ce2040af1724e3d529961afe395d589c14705695853ee84ce9a6f077ee7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e233331c7f91d1718934d93f4316bf9beda040f1b4602a015e224d19275a75b4
[INFO] running `Command { std: "docker" "start" "-a" "e233331c7f91d1718934d93f4316bf9beda040f1b4602a015e224d19275a75b4", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.44s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pixtuoid-ce3285d3d9bf5906)
[INFO] [stdout] 
[INFO] [stdout] running 694 tests
[INFO] [stdout] test cli::tests::cmd_or_default_preserves_explicit_subcommand ... ok
[INFO] [stdout] test cli::tests::log_level_typo_is_a_hard_parse_error ... ok
[INFO] [stdout] test cli::tests::empty_socket_is_a_hard_parse_error ... ok
[INFO] [stdout] test cli::tests::empty_hook_path_is_a_hard_parse_error ... ok
[INFO] [stdout] test cli::tests::max_desks_positive_parses ... ok
[INFO] [stdout] test cli::tests::target_name_as_str_covers_all_arms ... ok
[INFO] [stdout] test config::tests::config_path_xdg_home_and_relative_branches ... ok
[INFO] [stdout] test cli::tests::max_desks_zero_is_a_hard_parse_error ... ok
[INFO] [stdout] test config::tests::expand_tilde_only_expands_leading_current_user_home ... ok
[INFO] [stdout] test config::tests::load_missing_collects_no_warning ... ok
[INFO] [stdout] test cli::tests::log_level_valid_values_map_to_the_same_filter_tokens_as_before ... ok
[INFO] [stdout] test config::tests::load_missing_returns_defaults ... ok
[INFO] [stdout] test config::tests::pack_dir_cli_wins_over_config ... ok
[INFO] [stdout] test config::tests::full_config_flow_cli_overrides_file ... ok
[INFO] [stdout] test config::tests::max_desks_neither_set ... ok
[INFO] [stdout] test config::tests::max_desks_no_config_file ... ok
[INFO] [stdout] test config::tests::load_ignores_unknown_keys ... ok
[INFO] [stdout] test config::tests::max_desks_config_set_no_cli ... ok
[INFO] [stdout] test config::tests::full_config_flow_file_drives_theme ... ok
[INFO] [stdout] test config::tests::load_malformed_collects_reset_warning ... ok
[INFO] [stdout] test config::tests::pets_all_unknown_returns_empty ... ok
[INFO] [stdout] test config::tests::max_desks_zero_in_config_is_ignored_with_warning ... ok
[INFO] [stdout] test config::tests::pack_dir_config_expands_tilde ... ok
[INFO] [stdout] test config::tests::pack_dir_config_used_when_no_cli ... ok
[INFO] [stdout] test config::tests::pets_empty_vec_returns_none ... ok
[INFO] [stdout] test config::tests::load_partial_toml ... ok
[INFO] [stdout] test config::tests::load_malformed_returns_defaults ... ok
[INFO] [stdout] test config::tests::pack_dir_loaded_from_toml ... ok
[INFO] [stdout] test config::tests::pack_dir_neither_returns_none ... ok
[INFO] [stdout] test config::tests::pets_entry_absent_name_falls_back_to_default ... ok
[INFO] [stdout] test config::tests::pets_entry_custom_name_attached ... ok
[INFO] [stdout] test config::tests::pets_entry_name_trimmed_empty_falls_back ... ok
[INFO] [stdout] test config::tests::pets_section_is_last_in_serialized_toml ... ok
[INFO] [stdout] test config::tests::pets_unknown_kind_warns_and_skips ... ok
[INFO] [stdout] test config::tests::resolve_cli_wins_over_config ... ok
[INFO] [stdout] test config::tests::resolve_config_wins_over_default ... ok
[INFO] [stdout] test config::tests::pets_full_toml_resolves_names ... ok
[INFO] [stdout] test config::tests::resolve_invalid_cli_theme_errors_even_with_valid_config ... ok
[INFO] [stdout] test config::tests::pets_missing_kind_is_non_fatal ... ok
[INFO] [stdout] test config::tests::resolve_invalid_cli_theme_hard_errors ... ok
[INFO] [stdout] test config::tests::resolve_all_none_uses_default ... ok
[INFO] [stdout] test config::tests::pets_empty_vec_serializes_as_inline_empty_array ... ok
[INFO] [stdout] test config::tests::pets_loaded_from_toml ... ok
[INFO] [stdout] test config::tests::resolve_invalid_config_theme_falls_back_to_default ... ok
[INFO] [stdout] test config::tests::resolve_pets_collects_unknown_kind_warnings ... ok
[INFO] [stdout] test config::tests::resolve_theme_collects_unknown_config_theme_warning ... ok
[INFO] [stdout] test config::tests::resolve_valid_cli_wins_even_when_config_theme_invalid ... ok
[INFO] [stdout] test config::tests::save_leaves_the_lock_file_in_place ... ok
[INFO] [stdout] test config::tests::load_unreadable_path_returns_defaults ... ok
[INFO] [stdout] test config::tests::save_then_load_roundtrips_and_leaves_no_tmp_sidecar ... ok
[INFO] [stdout] test config::tests::save_preserves_comments_and_unknown_keys_byte_for_byte ... ok
[INFO] [stdout] test config::tests::save_version_refuses_to_overwrite_a_malformed_config ... ok
[INFO] [stdout] test config::tests::save_on_a_missing_config_creates_it_without_a_backup ... ok
[INFO] [stdout] test config::tests::pets_absent_returns_all_with_default_names ... ok
[INFO] [stdout] test config::tests::save_then_load_roundtrip ... ok
[INFO] [stdout] test config::tests::update_config_refuses_a_type_invalid_config ... ok
[INFO] [stdout] test config::tests::save_preserves_pets ... ok
[INFO] [stdout] test install::claude::tests::every_registered_cc_event_decodes ... ok
[INFO] [stdout] test config::tests::save_version_preserves_theme ... ok
[INFO] [stdout] test config::tests::max_desks_cli_overrides_config ... ok
[INFO] [stdout] test config::tests::save_version_persists ... ok
[INFO] [stdout] test config::tests::update_config_refuses_to_overwrite_a_malformed_config ... ok
[INFO] [stdout] test config::tests::save_version_inserts_new_key_before_pets_section ... ok
[INFO] [stdout] test config::tests::save_preserves_max_desks ... ok
[INFO] [stdout] test install::claude::tests::hook_command_auto_resolved_stays_bare_on_unix ... ok
[INFO] [stdout] test install::claude::tests::hook_command_explicit_path_is_embedded_on_unix ... ok
[INFO] [stdout] test config::tests::save_backs_up_an_existing_config_once ... ok
[INFO] [stdout] test install::claude::tests::install_coerces_non_array_event_to_array ... ok
[INFO] [stdout] test config::tests::update_config_still_accepts_unknown_keys ... ok
[INFO] [stdout] test install::claude::tests::install_coerces_non_object_hooks_to_object ... ok
[INFO] [stdout] test install::claude::tests::install_creates_entries_for_all_events ... ok
[INFO] [stdout] test install::claude::tests::install_is_idempotent ... ok
[INFO] [stdout] test install::claude::tests::install_preserves_unrelated_entries ... ok
[INFO] [stdout] test install::claude::tests::install_strips_legacy_ascii_agents_entries ... ok
[INFO] [stdout] test install::claude::tests::merge_uninstall_no_pixtuoid_hooks_reports_unchanged ... ok
[INFO] [stdout] test install::claude::tests::merge_install_on_empty_string_produces_valid_populated_config ... ok
[INFO] [stdout] test install::claude::tests::merge_install_idempotent_reports_unchanged ... ok
[INFO] [stdout] test install::claude::tests::reinstall_adds_newly_registered_events_to_an_older_install ... ok
[INFO] [stdout] test install::claude::tests::default_config_path_honors_claude_config_dir ... ok
[INFO] [stdout] test install::claude::tests::uninstall_non_array_hook_value_does_not_panic ... ok
[INFO] [stdout] test install::claude::tests::merge_install_rejects_valid_json_that_is_not_an_object ... ok
[INFO] [stdout] test install::claude::tests::uninstall_non_object_doc_returns_unchanged ... ok
[INFO] [stdout] test install::claude::tests::uninstall_removes_sentinel_entries_only ... ok
[INFO] [stdout] test install::claude::tests::uninstall_strips_legacy_keeps_user_entries ... ok
[INFO] [stdout] test install::claude::tests::unix_entry_stays_bare_shell_form ... ok
[INFO] [stdout] test install::claude::tests::windows_entry_is_exec_form_with_absolute_path ... ok
[INFO] [stdout] test install::claude::tests::merge_uninstall_on_empty_string_is_noop ... ok
[INFO] [stdout] test install::claude::tests::uninstall_drops_empty_hooks_map ... ok
[INFO] [stdout] test install::claude::tests::uninstall_strips_legacy_ascii_agents_entries ... ok
[INFO] [stdout] test install::claude::tests::merge_install_rejects_invalid_json ... ok
[INFO] [stdout] test install::codex::tests::every_registered_codex_event_decodes ... ok
[INFO] [stdout] test install::codex::tests::default_config_path_honors_codex_home_env ... ok
[INFO] [stdout] test install::codex::tests::hook_command_errors_on_non_utf8_path ... ok
[INFO] [stdout] test install::codex::tests::hook_command_prefixes_source_for_valid_path ... ok
[INFO] [stdout] test install::codex::tests::hook_command_quotes_path_with_spaces ... ok
[INFO] [stdout] test install::codex::tests::install_coerces_non_array_event_to_array ... ok
[INFO] [stdout] test cli::tests::cmd_or_default_returns_run_when_no_subcommand ... ok
[INFO] [stdout] test install::codex::tests::install_coerces_non_table_hooks_to_table ... ok
[INFO] [stdout] test install::codex::tests::install_creates_groups_for_all_events_with_sentinel ... ok
[INFO] [stdout] test install::codex::tests::install_does_not_write_features_hooks ... ok
[INFO] [stdout] test install::codex::tests::install_writes_no_matcher ... ok
[INFO] [stdout] test install::codex::tests::install_same_command_reports_unchanged ... ok
[INFO] [stdout] test install::codex::tests::install_is_idempotent_across_different_paths ... ok
[INFO] [stdout] test install::codex::tests::uninstall_doc_without_hooks_returns_unchanged ... ok
[INFO] [stdout] test install::codex::tests::uninstall_legacy_basename_fallback ... ok
[INFO] [stdout] test install::codex::tests::uninstall_no_pixtuoid_hooks_reports_unchanged ... ok
[INFO] [stdout] test install::codex::tests::uninstall_keeps_user_handler_in_mixed_group ... ok
[INFO] [stdout] test install::codex::tests::uninstall_non_table_doc_returns_unchanged ... ok
[INFO] [stdout] test install::hook_cmd::tests::valid_source_keeps_the_env_prefix_form_byte_for_byte ... ok
[INFO] [stdout] test install::hook_cmd::tests::rejects_a_shell_unsafe_source_name ... ok
[INFO] [stdout] test install::hook_cmd::unix::tests::quotes_path_with_spaces ... ok
[INFO] [stdout] test install::hook_cmd::windows::tests::windows_command_is_bare_for_a_clean_path ... ok
[INFO] [stdout] test install::hook_cmd::windows::tests::windows_command_uses_8dot3_short_form_when_path_has_a_space ... ok
[INFO] [stdout] test install::hook_cmd::windows::tests::windows_command_treats_cmd_first_token_delimiters_as_unsafe ... ok
[INFO] [stdout] test install::hook_cmd::windows::tests::windows_command_rejects_when_8dot3_is_unavailable ... ok
[INFO] [stdout] test install::hook_cmd::windows::tests::windows_command_rejects_a_cmd_unsafe_source ... ok
[INFO] [stdout] test install::hook_cmd::unix::tests::escapes_embedded_single_quote ... ok
[INFO] [stdout] test install::io::tests::checked_home_join_errors_without_home ... ok
[INFO] [stdout] test install::hook_cmd::unix::tests::quotes_plain_path ... ok
[INFO] [stdout] test install::io::tests::checked_home_join_joins_a_resolved_home ... ok
[INFO] [stdout] test install::io::tests::backup_and_lock_and_tmp_names_use_string_append ... ok
[INFO] [stdout] test install::io::tests::lock_config_excludes_a_second_locker_until_dropped ... ok
[INFO] [stdout] test install::io::tests::resolve_symlink_follows_chain ... ok
[INFO] [stdout] test install::io::tests::resolve_symlink_cycle_terminates_after_budget ... ok
[INFO] [stdout] test install::io::tests::default_hook_binary_sibling_appends_exe_suffix ... ok
[INFO] [stdout] test install::io::tests::read_config_empty_file_returns_empty_string ... ok
[INFO] [stdout] test install::io::tests::config_lock_read_and_backup_pin_the_lock_time_resolution ... ok
[INFO] [stdout] test install::io::tests::user_home_userprofile_wins_on_windows_home_wins_on_unix ... ok
[INFO] [stdout] test install::codex::tests::uninstall_removes_empty_groups_and_events ... ok
[INFO] [stdout] test install::io::tests::user_home_is_none_when_no_home_vars ... ok
[INFO] [stdout] test install::io::tests::read_config_missing_returns_empty_string ... ok
[INFO] [stdout] test install::io::tests::resolve_symlink_dangling_returns_target ... ok
[INFO] [stdout] test install::io::tests::read_config_returns_raw_content ... ok
[INFO] [stdout] test install::io::tests::resolve_symlink_nonexistent_returns_as_is ... ok
[INFO] [stdout] test install::io::tests::lock_config_resolves_symlinks_to_the_real_target ... ok
[INFO] [stdout] test install::io::tests::resolve_symlink_follows_single_hop ... ok
[INFO] [stdout] test install::io::tests::rename_with_retry_moves_file ... ok
[INFO] [stdout] test install::io::tests::resolve_symlink_regular_file_returns_as_is ... ok
[INFO] [stdout] test install::io::tests::resolve_symlink_relative_target ... ok
[INFO] [stdout] test install::reasonix::tests::every_registered_reasonix_event_decodes ... ok
[INFO] [stdout] test install::reasonix::tests::hook_command_errors_on_non_utf8_path ... ok
[INFO] [stdout] test install::reasonix::tests::hook_command_stamps_source_and_quotes ... ok
[INFO] [stdout] test install::reasonix::tests::install_creates_flat_entries_for_all_events ... ok
[INFO] [stdout] test install::reasonix::tests::install_preserves_user_entries ... ok
[INFO] [stdout] test install::reasonix::tests::merge_install_rejects_invalid_json ... ok
[INFO] [stdout] test install::reasonix::tests::install_coerces_non_object_hooks_and_non_array_events ... ok
[INFO] [stdout] test install::target::tests::by_name_resolves_claude_and_rejects_unknown ... ok
[INFO] [stdout] test install::target::tests::is_present_false_when_default_path_unresolvable ... ok
[INFO] [stdout] test install::target::tests::config_present_checks_file_existence ... ok
[INFO] [stdout] test install::io::tests::write_config_atomic_creates_new_files_private ... ok
[INFO] [stdout] test install::io::tests::write_atomic_under_a_held_guard_does_not_self_deadlock ... ok
[INFO] [stdout] test install::io::tests::write_config_atomic_preserves_target_mode ... ok
[INFO] [stdout] test install::io::tests::write_config_atomic_through_symlink_preserves_link ... ok
[INFO] [stdout] test install::tests::all_with_both_present_returns_both ... ok
[INFO] [stdout] test install::reasonix::tests::merge_install_rejects_valid_json_that_is_not_an_object ... ok
[INFO] [stdout] test install::reasonix::tests::uninstall_removes_only_managed_entries_and_empty_maps ... ok
[INFO] [stdout] test install::tests::confirm_answer_parses_default_yes ... ok
[INFO] [stdout] test install::reasonix::tests::install_is_idempotent_and_replaces_across_paths ... ok
[INFO] [stdout] test install::tests::empty_env_override_counts_as_unset_at_the_live_read ... ok
[INFO] [stdout] test install::reasonix::tests::merge_uninstall_no_pixtuoid_hooks_reports_unchanged ... ok
[INFO] [stdout] test install::tests::explicit_target_claude_ignores_detection ... ok
[INFO] [stdout] test install::tests::confirm_read_eof_and_error_cancel_but_entered_line_decides ... ok
[INFO] [stdout] test install::tests::has_hooks_empty_config_is_false ... ok
[INFO] [stdout] test install::reasonix::tests::uninstall_all_managed_drops_hooks_map ... ok
[INFO] [stdout] test install::tests::has_hooks_unreadable_config_is_true ... ok
[INFO] [stdout] test install::reasonix::tests::merge_install_idempotent_reports_unchanged ... ok
[INFO] [stdout] test install::tests::explicit_target_codex_resolves_to_codex ... ok
[INFO] [stdout] test install::tests::no_target_non_tty_single_claude_installs_claude ... ok
[INFO] [stdout] test install::tests::explicit_all_with_config_is_conflict ... ok
[INFO] [stdout] test install::tests::no_target_nothing_present_is_nothing_detected ... ok
[INFO] [stdout] test install::tests::resolve_hook_binary_absolutizes_a_relative_explicit_path ... ok
[INFO] [stdout] test install::tests::all_with_nothing_present_is_nothing_detected ... ok
[INFO] [stdout] test install::tests::is_drive_relative_only_matches_prefix_without_root ... ok
[INFO] [stdout] test install::tests::needs_confirm_only_multi_target_interactive_no_yes ... ok
[INFO] [stdout] test install::tests::no_target_non_tty_multiple_present_is_conflict ... ok
[INFO] [stdout] test install::tests::no_target_tty_returns_detected ... ok
[INFO] [stdout] test install::tests::interactive_pick_only_on_bare_tty ... ok
[INFO] [stdout] test install::io::tests::backup_once_idempotent_and_remove ... ok
[INFO] [stdout] test install::tests::resolve_hook_binary_claude_falls_back_to_bare_name_when_unresolvable ... ok
[INFO] [stdout] test install::tests::resolve_hook_binary_codex_errors_when_unresolvable ... ok
[INFO] [stdout] test install::tests::resolve_hook_binary_env_override_routes_through_the_explicit_arm ... ok
[INFO] [stdout] test install::tests::resolve_hook_binary_no_overrides_uses_locate ... ok
[INFO] [stdout] test install::tests::resolve_plan_conflict_is_err ... ok
[INFO] [stdout] test install::tests::resolve_plan_nothing_detected_is_ok_empty ... ok
[INFO] [stdout] test install::tests::resolve_plan_targets_passes_through ... ok
[INFO] [stdout] test install::tests::run_each_all_ok_returns_ok ... ok
[INFO] [stdout] test install::tests::run_interactive_single_candidate_runs_op_once ... ok
[INFO] [stdout] test install::tests::target_name_enum_and_registry_cover_each_other ... ok
[INFO] [stdout] test runtime::tests::boot_capacities_falls_back_to_default_on_tiny_terminal ... ok
[INFO] [stdout] test install::tests::run_each_reports_failed_count_and_bails ... ok
[INFO] [stdout] test runtime::driver::tests::headless_loop_shuts_down_on_a_delivered_signal ... ok
[INFO] [stdout] test install::tests::resolve_hook_binary_explicit_path_wins ... ok
[INFO] [stdout] test runtime::driver::tests::headless_loop_keeps_serving_after_a_failed_signal_registration ... ok
[INFO] [stdout] test install::tests::run_interactive_zero_candidates_prints_and_skips_op ... ok
[INFO] [stdout] test install::tests::resolve_hook_binary_cli_flag_outranks_env_override ... ok
[INFO] [stdout] test runtime::tests::capacity_for_small_terminal ... ok
[INFO] [stdout] test runtime::tests::capacity_for_normal_terminal ... ok
[INFO] [stdout] test runtime::tests::capacity_for_zero_rows_returns_zero ... ok
[INFO] [stdout] test runtime::tests::capacity_for_tiny_terminal_returns_zero ... ok
[INFO] [stdout] test runtime::tests::summarize_reports_each_activity_state ... ok
[INFO] [stdout] test install::tests::run_uninstall_fake2_changed_writes_and_removes_backup ... ok
[INFO] [stdout] test tui::anim::tests::ease_in_out_cubic_endpoints ... ok
[INFO] [stdout] test install::tests::run_install_fails_fast_while_the_config_lock_is_held ... ok
[INFO] [stdout] test tui::anim::tests::all_curves_are_monotone_non_decreasing ... ok
[INFO] [stdout] test runtime::tests::summarize_strips_terminal_escapes_from_untrusted_fields ... ok
[INFO] [stdout] test tui::anim::tests::ease_in_quad_endpoints ... ok
[INFO] [stdout] test tui::anim::tests::eased_progress_at_start_is_zero ... ok
[INFO] [stdout] test tui::anim::tests::eased_progress_now_before_start_clamps_to_zero ... ok
[INFO] [stdout] test tui::anim::tests::ease_out_cubic_endpoints ... ok
[INFO] [stdout] test tui::anim::tests::eased_progress_zero_duration_is_complete ... ok
[INFO] [stdout] test tui::anim::tests::eased_progress_applies_curve ... ok
[INFO] [stdout] test tui::anim::tests::eased_progress_at_end_is_one ... ok
[INFO] [stdout] test tui::anim::tests::eased_progress_past_end_clamps_to_one ... ok
[INFO] [stdout] test tui::chitchat::tests::lounge_couch_seats_share_one_venue ... ok
[INFO] [stdout] test tui::anim::tests::linear_endpoints ... ok
[INFO] [stdout] test tui::anim::tests::out_of_range_inputs_clamp ... ok
[INFO] [stdout] test tui::chitchat::tests::distinct_waypoints_do_not_merge ... ok
[INFO] [stdout] test tui::chitchat::tests::meeting_slots_in_same_room_form_one_conversation ... ok
[INFO] [stdout] test runtime::tests::capacity_matches_renderer_formula ... ok
[INFO] [stdout] test tui::chitchat::tests::no_bubble_after_four_turns ... ok
[INFO] [stdout] test tui::chitchat::tests::empty_participants_yields_no_bubble ... ok
[INFO] [stdout] test tui::chitchat::tests::participant_join_extends_rotation ... ok
[INFO] [stdout] test tui::chitchat::tests::round_robin_cycles_all_participants ... ok
[INFO] [stdout] test tui::chitchat::tests::round_robin_three_participants_wraps ... ok
[INFO] [stdout] test tui::chitchat::tests::supports_chitchat_kinds ... ok
[INFO] [stdout] test tui::chitchat::tests::single_visitor_starts_no_conversation ... ok
[INFO] [stdout] test tui::chitchat::tests::test_not_expired_before_total_ms ... ok
[INFO] [stdout] test tui::chitchat::tests::update_and_collect_expires_old ... ok
[INFO] [stdout] test tui::chitchat::tests::two_meeting_rooms_host_separate_conversations ... ok
[INFO] [stdout] test tui::chitchat::tests::test_expires_after_total_ms ... ok
[INFO] [stdout] test tui::chitchat::tests::round_robin_two_participants_alternates ... ok
[INFO] [stdout] test tui::dashboard::tests::build_dashboard_rows_empty_scene_is_empty ... ok
[INFO] [stdout] test tui::dashboard::tests::build_rows_carries_waiting_and_active_state ... ok
[INFO] [stdout] test tui::dashboard::tests::clamp_scroll_edge_cases ... ok
[INFO] [stdout] test tui::dashboard::tests::reanchor_keeps_visible_else_first ... ok
[INFO] [stdout] test tui::dashboard::tests::orphan_whose_parent_is_absent_is_treated_as_root ... ok
[INFO] [stdout] test tui::dashboard::tests::clamp_scroll_keeps_selection_in_view ... ok
[INFO] [stdout] test tui::dashboard::tests::root_at_threshold_stays_expanded ... ok
[INFO] [stdout] test tui::dashboard::tests::fold_all_then_unfold_all_flip_every_root ... ok
[INFO] [stdout] test tui::dashboard::tests::move_selection_steps_and_clamps_and_reanchors ... ok
[INFO] [stdout] test tui::dashboard::tests::resolve_floor_finds_selected_agents_floor ... ok
[INFO] [stdout] test tui::dashboard::tests::root_over_threshold_auto_collapses_and_hides_its_subtree ... ok
[INFO] [stdout] test tui::dashboard::tests::rows_are_tree_ordered_roots_by_desk_index_children_following_parent ... ok
[INFO] [stdout] test install::tests::run_uninstall_fake_unchanged_is_noop ... ok
[INFO] [stdout] test tui::dispatch_tests::dashboard_modal_passes_quit_chord_but_swallows_other_keys ... ok
[INFO] [stdout] test tui::dashboard::tests::unfold_all_overrides_auto_collapse_and_sticks ... ok
[INFO] [stdout] test install::tests::run_install_fake_target_is_up_to_date_noop ... ok
[INFO] [stdout] test install::tests::has_hooks_changed_vs_unchanged_arms ... ok
[INFO] [stdout] test tui::dispatch_tests::dashboard_tier_maps_nav_fold_jump_close ... ok
[INFO] [stdout] test tui::dispatch_tests::help_overlay_has_priority_and_dismisses ... ok
[INFO] [stdout] test tui::dispatch_tests::floor_nav_guards ... ok
[INFO] [stdout] test tui::dispatch_tests::only_press_events_dispatch ... ok
[INFO] [stdout] test tui::dispatch_tests::normal_quit_pause_picker_help ... ok
[INFO] [stdout] test install::tests::run_install_claude_writes_sentinel_and_backs_up ... ok
[INFO] [stdout] test tui::dispatch_tests::tab_toggles_dashboard_from_normal_scene ... ok
[INFO] [stdout] test tui::dispatch_tests::theme_picker_preview_commit_cancel_and_clamps ... ok
[INFO] [stdout] test tui::dispatch_tests::version_popup_enter_dismisses_esc_quits ... ok
[INFO] [stdout] test tui::dispatch_tests::tab_swallowed_while_other_overlays_open ... ok
[INFO] [stdout] test tui::floor::tests::build_floor_scene_filters_and_remaps ... ok
[INFO] [stdout] test tui::floor::tests::build_floor_scene_skips_agent_below_grown_offset ... ok
[INFO] [stdout] test tui::floor::tests::door_anim_excludes_arrived_entry_profiles ... ok
[INFO] [stdout] test tui::floor::tests::floor_ctx_default_equals_new ... ok
[INFO] [stdout] test runtime::tests::seed_can_produce_distinct_capacities ... ok
[INFO] [stdout] test tui::floor::tests::floor_local_desk_remaps_to_floor_range ... ok
[INFO] [stdout] test tui::floor::tests::floor_of_maps_desk_to_floor ... ok
[INFO] [stdout] test install::tests::run_uninstall_fails_fast_while_the_config_lock_is_held ... ok
[INFO] [stdout] test tui::floor::tests::light_backward_clock_jump_does_not_move_level ... ok
[INFO] [stdout] test tui::floor::tests::light_large_dt_does_not_overshoot_or_nan ... ok
[INFO] [stdout] test tui::floor::tests::light_resets_empty_since_when_repopulated ... ok
[INFO] [stdout] test tui::floor::tests::light_converges_to_min_when_empty_long_enough ... ok
[INFO] [stdout] test tui::floor::tests::light_snap_to_empty_forces_min_level ... ok
[INFO] [stdout] test tui::floor::tests::light_holds_during_debounce_window ... ok
[INFO] [stdout] test tui::floor::tests::light_rises_back_when_repopulated ... ok
[INFO] [stdout] test tui::floor::tests::light_steady_state_populated ... ok
[INFO] [stdout] test tui::floor::tests::light_eases_toward_min_after_debounce ... ok
[INFO] [stdout] test tui::floor::tests::lighting_state_default_equals_new ... ok
[INFO] [stdout] test tui::floor::tests::num_floors_empty ... ok
[INFO] [stdout] test install::tests::run_uninstall_absent_config_creates_no_dirs_or_lock ... ok
[INFO] [stdout] test tui::frame_cache::tests::new_cache_is_empty_then_populated_after_get_or_make ... ok
[INFO] [stdout] test tui::floor::tests::num_floors_variable_capacities ... ok
[INFO] [stdout] test tui::floor::tests::transition_t_clamps_past_duration ... ok
[INFO] [stdout] test tui::floor::tests::num_floors_exact_fit ... ok
[INFO] [stdout] test tui::floor::tests::num_floors_with_overflow ... ok
[INFO] [stdout] test tui::hit_test::tests::cat_hit_test_inside_sit_sprite ... ok
[INFO] [stdout] test tui::hit_test::tests::cat_hit_test_outside_returns_false ... ok
[INFO] [stdout] test tui::floor::tests::transition_t_progresses ... ok
[INFO] [stdout] test tui::hit_test::tests::cat_hit_test_sleep_smaller_box ... ok
[INFO] [stdout] test tui::embedded_pack::tests::load_sprite_pack_from_custom_dir_merges_with_embedded ... ok
[INFO] [stdout] test tui::embedded_pack::tests::load_sprite_pack_from_missing_custom_dir_errors ... ok
[INFO] [stdout] test tui::hit_test::tests::furniture_hit_test_finds_elevator ... ok
[INFO] [stdout] test tui::hit_test::tests::furniture_hit_test_finds_desk ... ok
[INFO] [stdout] test tui::hit_test::tests::furniture_hit_test_bulletin_board_via_synthetic_wall_decor ... ok
[INFO] [stdout] test tui::hit_test::tests::from_tui_misses_empty_space ... ok
[INFO] [stdout] test runtime::tests::explicit_cap_clamps_to_layout_capacity_not_above ... ok
[INFO] [stdout] test tui::hit_test::tests::from_tui_skips_agent_with_out_of_range_desk ... ok
[INFO] [stdout] test tui::floor::tests::build_floor_scene_remap_is_local_global_coincident ... ok
[INFO] [stdout] test tui::hit_test::tests::from_tui_oob_desk_at_capacity_boundary_does_not_wrap_to_desk_zero ... ok
[INFO] [stdout] test tui::hit_test::tests::from_tui_hits_agent_at_its_desk_anchor ... ok
[INFO] [stdout] test tui::hit_test::tests::coffee_machine_hit_test_returns_true_for_machine_area ... ok
[INFO] [stdout] test tui::hit_test::tests::coffee_machine_hit_test_returns_false_for_origin ... ok
[INFO] [stdout] test runtime::tests::boot_capacities_uses_each_floor_seed ... ok
[INFO] [stdout] test tui::hit_test::tests::furniture_hit_test_respects_floor_seed ... ok
[INFO] [stdout] test tui::motion::tests::far_waypoint_full_cycle_is_longer ... ok
[INFO] [stdout] test tui::motion::tests::motion_state_new_default_fields ... ok
[INFO] [stdout] test tui::motion::tests::at_waypoint_transitions_to_walking_back_after_dwell ... ok
[INFO] [stdout] test tui::motion::tests::fresh_idle_inits_to_seated_phase ... ok
[INFO] [stdout] test tui::motion::tests::long_dwell_never_trips_stale_resume_on_screen ... ok
[INFO] [stdout] test tui::motion::tests::at_waypoint_resnapshots_back_profile_when_missing ... ok
[INFO] [stdout] test tui::motion::tests::bootstrap_fast_forwards_cycle_n ... ok
[INFO] [stdout] test tui::motion::tests::path_len_diagonal_segment ... ok
[INFO] [stdout] test tui::motion::tests::path_len_empty_is_zero ... ok
[INFO] [stdout] test tui::motion::tests::path_len_multi_segment_sums ... ok
[INFO] [stdout] test tui::motion::tests::path_len_orthogonal_segment ... ok
[INFO] [stdout] test tui::motion::tests::path_len_single_point_is_zero ... ok
[INFO] [stdout] test tui::motion::tests::non_trip_cycle_stays_seated ... ok
[INFO] [stdout] test tui::embedded_pack::tests::embedded_pack_all_palette_keys_are_distinct_rgbs ... ok
[INFO] [stdout] test tui::motion::tests::pick_wander_dest_falls_back_to_aimless_when_boxed_in ... ok
[INFO] [stdout] test tui::hit_test::tests::furniture_hit_test_ficus_via_synthetic_plant ... ok
[INFO] [stdout] test tui::motion::tests::dwell_time_independent_of_path_length ... ok
[INFO] [stdout] test tui::motion::tests::stale_resume_resyncs_without_replay ... ok
[INFO] [stdout] test tui::motion::tests::seated_transitions_to_walking_out_on_trip_cycle ... ok
[INFO] [stdout] test tui::motion::tests::walking_back_arrival_increments_cycle_n_and_resets_to_seated ... ok
[INFO] [stdout] test tui::motion::tests::walking_back_missing_profile_recovers_without_panic ... ok
[INFO] [stdout] test tui::pathfind::tests::cell_in_zone_false_when_none ... ok
[INFO] [stdout] test tui::pathfind::tests::cell_in_zone_false_when_outside ... ok
[INFO] [stdout] test tui::pathfind::tests::cell_in_zone_true_when_inside ... ok
[INFO] [stdout] test tui::pathfind::tests::degenerate_grid_returns_fallbacks ... ok
[INFO] [stdout] test tui::pathfind::tests::cell_walkable_on_open_mask ... ok
[INFO] [stdout] test tui::pathfind::tests::astar_is_empty_then_invalidate_clears_cache ... ok
[INFO] [stdout] test tui::hit_test::tests::furniture_hit_test_finds_meeting_table ... ok
[INFO] [stdout] test tui::motion::tests::walking_out_transitions_to_at_waypoint_on_arrival ... ok
[INFO] [stdout] test tui::pathfind::tests::find_path_none_when_two_regions_split_by_a_full_wall ... ok
[INFO] [stdout] test tui::pathfind::tests::cell_center_is_midpoint_of_cell ... ok
[INFO] [stdout] test tui::motion::tests::idempotent_same_now_does_not_mutate_state ... ok
[INFO] [stdout] test tui::pathfind::tests::heuristic_diagonal_uses_octile ... ok
[INFO] [stdout] test tui::pathfind::tests::heuristic_straight_horizontal ... ok
[INFO] [stdout] test tui::pathfind::tests::heuristic_zero_for_same_cell ... ok
[INFO] [stdout] test tui::pathfind::tests::find_path_returns_none_when_target_completely_surrounded ... ok
[INFO] [stdout] test tui::pathfind::tests::path_clear_under_blocked_returns_false ... ok
[INFO] [stdout] test tui::hit_test::tests::furniture_hit_test_returns_none_for_empty_space ... ok
[INFO] [stdout] test tui::motion::tests::wander_dest_for_pantry_is_the_home_desk_stand_point ... ok
[INFO] [stdout] test tui::embedded_pack::tests::load_sprite_pack_resolves_then_falls_back_via_xdg ... ok
[INFO] [stdout] test tui::motion::tests::arrival_pause_holds_walking_out_phase ... ok
[INFO] [stdout] test tui::pathfind::tests::cell_of_maps_pixel_to_cell ... ok
[INFO] [stdout] test tui::motion::tests::walking_out_missing_profile_recovers_without_panic ... ok
[INFO] [stdout] test tui::pathfind::tests::routes_around_meeting_room_wall ... ok
[INFO] [stdout] test tui::pathfind::tests::router_caches_until_overlay_changes ... ok
[INFO] [stdout] test tui::pathfind::tests::cell_walkable_false_when_blocked_by_overlay ... ok
[INFO] [stdout] test tui::embedded_pack::tests::embedded_pack_recolor_keys_are_distinct_rgbs ... ok
[INFO] [stdout] test tui::pathfind::tests::path_clear_under_empty_overlay_always_true ... ok
[INFO] [stdout] test tui::pathfind::tests::path_clear_under_misses_obstacle_returns_true ... ok
[INFO] [stdout] test tui::pathfind::tests::router_default_set_preferred_zone_is_a_noop ... ok
[INFO] [stdout] test tui::pathfind::tests::simplify_collapses_collinear ... ok
[INFO] [stdout] test tui::pet::tests::anim_names_match_kind ... ok
[INFO] [stdout] test tui::pet::tests::defaulted_uses_default_name ... ok
[INFO] [stdout] test tui::pet::tests::dog_anim_methods ... ok
[INFO] [stdout] test tui::pet::tests::dog_does_not_sleep_near_idle ... ok
[INFO] [stdout] test tui::pathfind::tests::routes_around_dynamic_obstacle ... ok
[INFO] [stdout] test tui::pathfind::tests::router_falls_back_to_straight_line_when_path_is_none ... ok
[INFO] [stdout] test tui::pet::tests::default_name_all_nonempty ... ok
[INFO] [stdout] test tui::pathfind::tests::snap_to_walkable_skips_out_of_bounds_corner_neighbours ... ok
[INFO] [stdout] test tui::pet::tests::every_pet_kind_is_reachable_from_config ... ok
[INFO] [stdout] test tui::pet::tests::hitbox_sleep_shorter_than_sit ... ok
[INFO] [stdout] test tui::pet::tests::from_config_name_unknown_returns_none ... ok
[INFO] [stdout] test tui::pet::tests::hitbox_unknown_anim_returns_default ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::ceiling_halo_near_edge_does_not_panic ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::ceiling_halo_painted_on_dark_theme ... ok
[INFO] [stdout] test tui::pet::tests::select_pet_two_pets_alternates_by_seed ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::dust_motes_alpha_fades_at_edges ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::ceiling_halo_skipped_on_light_theme ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::dust_mote_positions_deterministic_per_seed ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::dust_motes_drift_over_time ... ok
[INFO] [stdout] test tui::pet::tests::select_pet_single_always_returns_it ... ok
[INFO] [stdout] test tui::pet::tests::hitbox_walk_larger_than_sit ... ok
[INFO] [stdout] test tui::pet::tests::select_pet_empty_returns_none ... ok
[INFO] [stdout] test tui::pixel_painter::background::lighting::tests::ellipse_blend_degenerate_is_a_noop ... ok
[INFO] [stdout] test tui::pixel_painter::background::lighting::tests::ellipse_blend_paints_when_valid ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::fog_floor_tint_is_brighter_than_overcast ... ok
[INFO] [stdout] test tui::pathfind::tests::snap_to_walkable_returns_cell_when_already_walkable ... ok
[INFO] [stdout] test tui::pixel_painter::background::lighting::tests::neon_panel_off_edge_does_not_panic ... ok
[INFO] [stdout] test tui::pet::tests::default_name_cat_and_dog ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::lightning_flash_storm_only_and_mid_strike_only ... ok
[INFO] [stdout] test tui::pathfind::tests::straight_line_when_unobstructed ... ok
[INFO] [stdout] test tui::pathfind::tests::vertical_wall_is_impassable_except_through_the_door ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::short_buffer_clamps_spill_and_window_without_panic ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::dust_motes_clamp_to_a_tiny_buffer ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::weather_floor_tint_clear_is_near_neutral ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::weather_floor_tint_differs_by_variant ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::lightning_envelope_is_a_two_pulse_then_dark ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::skyline_haze_obscures_fog_and_storm_only_when_expected ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::atmo_haze_and_snow_keep_a_faint_beam ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::lightning_strikes_are_jittered_not_metronomic ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::atmo_storm_dimmer_than_overcast ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::atmo_thick_cloud_kills_the_beam ... ok
[INFO] [stdout] test tui::pathfind::tests::snap_to_walkable_finds_nearby_cell_when_blocked ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::daylight_floor_overlay_brightens_at_positive_strength ... ok
[INFO] [stdout] test tui::pixel_painter::background::tests::storm_window_bolt_brightens_glass_during_the_flash ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::sun_spot_zero_wall_band_returns_early ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::sun_spot_zero_intensity_at_hour_edge_leaves_buffer_untouched ... ok
[INFO] [stdout] test tui::pixel_painter::ambient::tests::sun_spot_scales_with_beam_strength ... ok
[INFO] [stdout] test tui::pathfind::tests::snap_point_to_walkable_returns_walkable_cell ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::smog_dims_diffusely ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::night_sky_brightness_varies_by_weather ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::fog_is_a_luminous_whiteout_not_dark_mist ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::daylight_floor_overlay_is_noop_at_zero_strength ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::sun_on_wall_east_at_morning ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::atmo_clear_beams_hard ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::atmo_storm_brighter_than_rain_by_design ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::time_of_day_look_night_darkness_tracks_weather ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::sun_on_wall_west_at_evening ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::sun_on_wall_overhead_at_noon ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::sun_on_wall_none_at_midnight ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::weather_name_round_trips_for_every_variant ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::weather_override_forces_a_fixed_variant_then_restores ... ok
[INFO] [stdout] test tui::pixel_painter::background::time_of_day::tests::weather_state_emits_every_variant_within_a_week ... ok
[INFO] [stdout] test tui::pixel_painter::debug_overlay::tests::paint_routes_draws_frozen_paths_and_skips_the_rest ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_midpoint_on_straight_segment ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_octile_weights_diagonal ... ok
[INFO] [stdout] test tui::pixel_painter::debug_overlay::tests::first_reachable_on_side_breaks_on_negative_coords ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_single_point_returns_it ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_t_at_or_past_one_returns_last ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_empty_returns_fallback ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_arc_length_hits_corner_of_l ... ok
[INFO] [stdout] test tui::pixel_painter::debug_overlay::tests::overlay_marks_seat_approach_sides_distinct_from_the_seat_cell ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_t_zero_returns_first ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_target_on_zero_length_segment_uses_local_t_zero ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::sample_polyline_zero_length_leading_segment_no_div_by_zero ... ok
[INFO] [stdout] test tui::pixel_painter::effects::tests::sleep_z_dims_as_it_rises_then_rests ... ok
[INFO] [stdout] test tui::pixel_painter::tests::agent_palette_overrides_only_bhs_keys ... ok
[INFO] [stdout] test tui::pixel_painter::tests::back_view_meeting_sofa_sorts_over_its_sitter ... ok
[INFO] [stdout] test tui::pixel_painter::tests::agent_palette_glow_tint_shifts_skin_toward_given_color ... ok
[INFO] [stdout] test tui::pixel_painter::tests::agent_palette_is_deterministic_per_id ... ok
[INFO] [stdout] test tui::pixel_painter::tests::back_view_seats_sort_over_their_sitter ... ok
[INFO] [stdout] test tui::pixel_painter::tests::center_pin_south_offset_lands_on_the_sprite_south_row ... ok
[INFO] [stdout] test tui::pixel_painter::tests::character_anchor_y_below_desk_when_seated_at_it ... ok
[INFO] [stdout] test tui::pixel_painter::tests::character_anchor_y_exceeds_desk_when_south_of_it ... ok
[INFO] [stdout] test tui::pixel_painter::tests::desk_occupant_always_sorts_behind_its_desk ... ok
[INFO] [stdout] test tui::pixel_painter::tests::desk_settle_z_key_matches_the_seated_arm ... ok
[INFO] [stdout] test tui::pixel_painter::tests::desk_walk_anchor_settles_exactly_on_the_seat ... ok
[INFO] [stdout] test tui::pixel_painter::tests::desk_z_key_is_footprint_front_plus_overhang ... ok
[INFO] [stdout] test tui::pixel_painter::tests::door_frame_after_opening_ramp_is_fully_open ... ok
[INFO] [stdout] test tui::pixel_painter::tests::door_frame_closed_when_no_agents ... ok
[INFO] [stdout] test tui::pixel_painter::tests::door_frame_closing_then_closed_at_end_of_entry ... ok
[INFO] [stdout] test tui::pixel_painter::tests::door_frame_exit_window_uses_4500ms_total ... ok
[INFO] [stdout] test tui::pixel_painter::tests::door_frame_expired_entry_contributes_nothing ... ok
[INFO] [stdout] test tui::pixel_painter::tests::door_frame_just_spawned_is_half_open ... ok
[INFO] [stdout] test tui::pixel_painter::tests::door_frame_uses_physics_window_when_nonzero ... ok
[INFO] [stdout] test tui::pixel_painter::tests::drawables_sort_ascending_by_anchor_y ... ok
[INFO] [stdout] test tui::pixel_painter::tests::drawables_sort_is_stable_on_ties ... ok
[INFO] [stdout] test tui::pixel_painter::tests::every_pod_occludes_via_overhang ... ok
[INFO] [stdout] test tui::pixel_painter::tests::floor_lamp_south_offset_is_the_base_row ... ok
[INFO] [stdout] test tui::pixel_painter::tests::door_frame_takes_max_across_agents ... ok
[INFO] [stdout] test tui::pixel_painter::tests::furniture_corner_clip_does_not_panic ... ok
[INFO] [stdout] test tui::pixel_painter::debug_overlay::tests::overlay_marks_desk_approach_distinct_from_the_chair ... ok
[INFO] [stdout] test tui::pixel_painter::tests::furniture_room_decor_too_small_bounds_are_noops ... ok
[INFO] [stdout] test tui::pixel_painter::tests::glass_wall_h_back_cap_composites_over_a_character_behind_it ... ok
[INFO] [stdout] test tui::pixel_painter::tests::glass_wall_h_clamps_below_buffer_bottom ... ok
[INFO] [stdout] test tui::pixel_painter::tests::glass_wall_v_clamps_past_right_edge ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::desk_cubicle_with_cabinet_blits_cabinet_and_trash_bin ... ok
[INFO] [stdout] test tui::pixel_painter::tests::furniture_room_decor_large_bounds_paint ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::pet_drawable_missing_anim_is_a_noop ... ok
[INFO] [stdout] test tui::pixel_painter::tests::recolor_frame_handles_palette_with_no_overrides ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::meeting_sofa_mirrored_flips_vertically ... ok
[INFO] [stdout] test tui::pixel_painter::tests::recolor_frame_substitutes_bhs_pixels ... ok
[INFO] [stdout] test tui::pixel_painter::tests::seated_foot_cell_settles_exactly_on_the_render_anchor ... ok
[INFO] [stdout] test tui::pixel_painter::tests::pet_hearts_skip_dead_and_faded_hearts ... ok
[INFO] [stdout] test tui::pixel_painter::tests::seat_sprite_maps_facing_to_sprite_and_flip ... ok
[INFO] [stdout] test tui::pixel_painter::tests::stitch_vertical_wall_connects_each_joint ... ok
[INFO] [stdout] test tui::pixel_painter::tests::tool_glow_tint_maps_delegation_search_and_unknown_tokens ... ok
[INFO] [stdout] test tui::pixel_painter::tests::sunset_strength_varies_across_day ... ok
[INFO] [stdout] test tui::pixel_painter::tests::tool_glow_tint_maps_known_tools ... ok
[INFO] [stdout] test tui::pixel_painter::tests::vertical_wall_top_raise_agrees_between_renderer_and_mask ... ok
[INFO] [stdout] test tui::pixel_painter::tests::waypoint_depth_baseline_is_center_pinned_sprite_south ... ok
[INFO] [stdout] test tui::pixel_painter::tests::waypoint_rank_offset_x_decollision_table ... ok
[INFO] [stdout] test tui::pixel_painter::tests::weather_state_covers_all_variants ... ok
[INFO] [stdout] test tui::pixel_painter::tests::weather_gallery_manifest_matches_the_weather_enum ... ok
[INFO] [stdout] test tui::pixel_painter::tests::paint_character_at_missing_anim_is_a_noop ... ok
[INFO] [stdout] test tui::pixel_painter::tests::weather_state_deterministic ... ok
[INFO] [stdout] test tui::pixel_painter::tests::settle_seat_view_recognizes_the_home_desk ... ok
[INFO] [stdout] test tui::pose::tests::delegates_to_derive_for_oob_desk ... ok
[INFO] [stdout] test tui::pixel_painter::tests::seat_view_of_obstacle_kinds_is_upright_unflipped ... ok
[INFO] [stdout] test tui::pose::tests::desk_approach_cell_is_never_inside_the_blocked_desk ... ok
[INFO] [stdout] test tui::pixel_painter::tests::settle_view_matches_the_seated_view_for_every_seat ... ok
[INFO] [stdout] test tui::pose::tests::desk_entry_routes_around_the_desk_then_settles_onto_the_chair ... ok
[INFO] [stdout] test tui::pixel_painter::tests::weather_state_changes_across_cycles ... ok
[INFO] [stdout] test tui::pose::tests::entry_duration_scales_with_path_longer_desk_takes_longer ... ok
[INFO] [stdout] test tui::pose::tests::exit_from_desk_rises_off_the_chair_via_the_approach_cell ... ok
[INFO] [stdout] test tui::pose::tests::exit_profile_snapshotted_once_not_on_subsequent_calls ... ok
[INFO] [stdout] test tui::pose::tests::exit_with_no_door_does_not_vanish ... ok
[INFO] [stdout] test tui::pose::tests::entry_walk_coordinates_are_continuous ... ok
[INFO] [stdout] test tui::pixel_painter::tests::pet_z_anchor_tracks_the_selected_anim_sprite_height ... ok
[INFO] [stdout] test tui::pose::tests::floor_offscreen_then_resume_does_not_replay ... ok
[INFO] [stdout] test tui::pose::tests::frozen_leg_anchor_continuous_across_router_shape_change ... ok
[INFO] [stdout] test tui::pose::tests::at_waypoint_pose_records_position_to_history ... ok
[INFO] [stdout] test tui::pixel_painter::tests::sit_arc_z_key_is_stable_and_on_the_right_side_of_its_furniture ... ok
[INFO] [stdout] test tui::pose::tests::five_same_created_at_agents_have_distinct_entry_durations ... ok
[INFO] [stdout] test tui::pose::tests::multi_segment_path_maps_t_to_segment_via_octile_distance ... ok
[INFO] [stdout] test tui::pose::tests::exit_far_completes_before_grace_window_no_vanish ... ok
[INFO] [stdout] test tui::pose::tests::pose_history_recent_expires ... ok
[INFO] [stdout] test tui::pose::tests::exit_uses_commute_speed_faster_than_wander ... ok
[INFO] [stdout] test tui::pose::tests::pose_history_record_and_recent ... ok
[INFO] [stdout] test tui::pose::tests::nearer_desk_arrives_before_farther_desk ... ok
[INFO] [stdout] test tui::pose::tests::route_walking_pose_coincident_path_returns_input_pose ... ok
[INFO] [stdout] test tui::pose::tests::no_door_exiting_walking_pose_routes_via_settle_none ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_cornered_leg_freezes_path_no_reroute ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_long_distance_renders_past_window_by_physics ... ok
[INFO] [stdout] test tui::pose::tests::exit_walk_coordinates_are_continuous ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_origin_is_frozen_across_frames ... ok
[INFO] [stdout] test tui::pose::tests::route_walking_pose_straight_leg_records_lerp_and_clears_walk_path ... ok
[INFO] [stdout] test tui::pose::tests::route_walking_pose_records_at_waypoint_and_aimless_history ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::pet_rest_picks_sleep_anim_when_all_idle ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_profile_length_measures_the_routed_polyline ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_derive_is_idempotent_within_a_frame ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::pet_no_route_falls_back_to_straight_lerp ... ok
[INFO] [stdout] test tui::pose::tests::multiple_agents_share_overlay_without_teleport ... ok
[INFO] [stdout] test tui::pose::tests::exit_while_wandering_does_not_teleport_to_desk ... ok
[INFO] [stdout] test tui::pixel_painter::drawable::tests::pet_drawable_sleep_anim_paints_sleep_z ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_routes_via_the_approach_cell_then_settles_onto_the_chair ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_rearms_on_new_state_transition ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_skipped_without_recent_history ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_skipped_when_prev_within_min_distance ... ok
[INFO] [stdout] test tui::pose::tests::walk_leg_freezes_path_against_midleg_reroute ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_skipped_after_900ms_window ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_profile_stored_in_motion_state ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_walks_from_history_when_state_just_flipped ... ok
[INFO] [stdout] test tui::pose::tests::snap_back_progress_is_physics_eased_not_linear ... ok
[INFO] [stdout] test tui::renderer::tests::clip_widget_rect_fully_inside ... ok
[INFO] [stdout] test tui::renderer::tests::clip_widget_rect_partially_overflows_right ... ok
[INFO] [stdout] test tui::renderer::tests::clip_widget_rect_fully_outside_right ... ok
[INFO] [stdout] test tui::pose::tests::wander_derive_is_idempotent_within_a_frame ... ok
[INFO] [stdout] test tui::theme::tests::all_themes_resolve_by_name ... ok
[INFO] [stdout] test tui::theme::tests::dark_themes_marked_dark ... ok
[INFO] [stdout] test tui::theme::tests::source_badges_legible_for_every_theme ... ok
[INFO] [stdout] test tui::theme::tests::light_themes_marked_light ... ok
[INFO] [stdout] test tui::pose::tests::wander_interrupted_by_active_does_not_teleport ... ok
[INFO] [stdout] test tui::theme::tests::unknown_theme_returns_none ... ok
[INFO] [stdout] test tui::theme::tests::appliance_palette_is_legible_for_every_theme ... ok
[INFO] [stdout] test tui::theme::tests::theme_gallery_manifest_matches_all_themes ... ok
[INFO] [stdout] test tui::pose::tests::wander_coffee_run_coordinates_continuous_under_churn ... ok
[INFO] [stdout] test tui::renderer::tests::clip_widget_rect_zero_size_returns_none ... ok
[INFO] [stdout] test tui::tui_renderer::harness::already_expired_active_pet_clears_on_render ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_badge_text_present_for_cc_and_cx ... ok
[INFO] [stdout] test tui::tui_renderer::harness::agent_label_painted_above_character ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_closed_paints_no_popup ... ok
[INFO] [stdout] test tui::tui_renderer::harness::colliding_labels_with_multibyte_session_ids_do_not_panic ... ok
[INFO] [stdout] test tui::pose::tests::wander_legs_approach_the_desk_via_an_allowed_side_not_through_the_front ... ok
[INFO] [stdout] test tui::tui_renderer::harness::coffee_state_evicted_when_agent_leaves_scene ... ok
[INFO] [stdout] test tui::tui_renderer::harness::coffee_machine_hit_test_resolves_on_pantry ... ok
[INFO] [stdout] test tui::tui_renderer::harness::agent_tooltip_flips_up_near_bottom_edge ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_empty_scene_shows_placeholder ... ok
[INFO] [stdout] test tui::tui_renderer::harness::coffee_machine_tooltip_on_hover ... ok
[INFO] [stdout] test tui::tui_renderer::harness::debug_walkable_getter_reflects_setter ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_overflow_cue_absent_when_all_visible ... ok
[INFO] [stdout] test tui::pose::tests::wander_continuous_across_layouts_and_agents ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_scrolls_to_keep_a_deep_selection_visible ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_overflow_cue_appears_below_when_more_than_viewport ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_collapsed_big_tree_shows_badge_and_hides_children ... ok
[INFO] [stdout] test tui::tui_renderer::harness::exiting_agent_label_uses_exiting_color ... ok
[INFO] [stdout] test tui::tui_renderer::harness::floor_buffers_grow_on_overflow ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_popup_renders_labels_states_and_live_tool ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_renders_waiting_reason_and_active_without_detail ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_overflow_cue_keeps_a_bottom_navigated_selection_visible ... ok
[INFO] [stdout] test tui::tui_renderer::harness::footer_shows_floor_indicator_on_multi_floor ... ok
[INFO] [stdout] test tui::tui_renderer::harness::dashboard_overflow_no_blank_line_when_selection_is_last_row ... ok
[INFO] [stdout] test tui::tui_renderer::harness::furniture_hit_test_resolves_against_rendered_layout ... ok
[INFO] [stdout] test tui::tui_renderer::harness::floor_transition_completes_and_lands ... ok
[INFO] [stdout] test tui::tui_renderer::harness::footer_shows_agent_count ... ok
[INFO] [stdout] test tui::tui_renderer::harness::help_overlay_renders_shortcuts ... ok
[INFO] [stdout] test tui::tui_renderer::harness::floor_transition_clears_stale_pet_position ... ok
[INFO] [stdout] test tui::tui_renderer::harness::layout_compute_none_bails_to_footer_only ... ok
[INFO] [stdout] test tui::tui_renderer::harness::furniture_tooltip_on_hover_over_empty_desk ... ok
[INFO] [stdout] test tui::tui_renderer::harness::help_overlay_renders_during_floor_transition ... ok
[INFO] [stdout] test tui::tui_renderer::harness::meeting_glass_partition_connects_at_window_and_corner ... ok
[INFO] [stdout] test tui::tui_renderer::harness::navigate_floor_clears_pinned_agent ... ok
[INFO] [stdout] test tui::tui_renderer::harness::no_layout_frame_zeroes_the_popup_hit_box ... ok
[INFO] [stdout] test tui::tui_renderer::harness::footer_shows_source_death_warning ... ok
[INFO] [stdout] test tui::tui_renderer::harness::navigation_blocked_during_active_transition ... ok
[INFO] [stdout] test tui::tui_renderer::harness::furniture_tooltip_flips_below_near_top_edge ... ok
[INFO] [stdout] test tui::tui_renderer::harness::no_pet_when_pets_disabled ... ok
[INFO] [stdout] test tui::tui_renderer::harness::injected_coffee_changes_desk_render ... ok
[INFO] [stdout] test tui::tui_renderer::harness::hovering_an_agent_marks_its_label ... ok
[INFO] [stdout] test tui::tui_renderer::harness::furniture_hit_test_covers_every_kind_on_real_layouts ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_hit_test_resolves_at_pet_position ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_leg_boundary_no_pop ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_present_when_enabled ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_tooltip_falls_back_to_default_name_when_not_configured ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_tooltip_on_hover ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_position_varies_over_its_cycle ... ok
[INFO] [stdout] test tui::tui_renderer::harness::current_floor_clamps_when_floor_count_drops ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_tooltip_shows_custom_name ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_tooltip_shows_cooldown_reaction_for_cat_and_dog ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_walk_is_frame_stable ... ok
[INFO] [stdout] test tui::tui_renderer::harness::petting_freezes_pet_position ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pinned_active_agent_tooltip_shows_state_and_detail ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pinned_agent_renders_stats_tooltip ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pinned_then_removed_agent_is_a_safe_noop ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_tooltip_shows_sleeping_when_all_idle ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pinned_waiting_agent_tooltip_shows_reason ... ok
[INFO] [stdout] test tui::tui_renderer::harness::theme_picker_renders_theme_names ... ok
[INFO] [stdout] test tui::tui_renderer::harness::theme_picker_renders_during_floor_transition ... ok
[INFO] [stdout] test tui::tui_renderer::harness::source_death_warning_survives_floor_transition ... ok
[INFO] [stdout] test tui::tui_renderer::harness::too_small_terminal_returns_no_layout_no_panic ... ok
[INFO] [stdout] test tui::tui_renderer::harness::theme_switch_recolors_floor ... ok
[INFO] [stdout] test tui::tui_renderer::harness::transition_cancelled_when_target_floor_disappears ... ok
[INFO] [stdout] test tui::tui_renderer::harness::tool_glow_tint_differs_by_tool ... ok
[INFO] [stdout] test tui::tui_renderer::harness::version_popup_dismissal_reaches_zero ... ok
[INFO] [stdout] test tui::tui_renderer::harness::version_popup_entrance_reaches_full_scale ... ok
[INFO] [stdout] test tui::tui_renderer::harness::version_popup_interrupt_continues_from_edge ... ok
[INFO] [stdout] test tui::tui_renderer::harness::transition_on_too_small_terminal_clears_interaction_state ... ok
[INFO] [stdout] test tui::tui_renderer::harness::version_popup_active_during_floor_transition ... ok
[INFO] [stdout] test tui::tui_renderer::harness::version_popup_paints_when_open ... ok
[INFO] [stdout] test tui::widgets::dashboard::tests::dashboard_line_badge_uses_source_color_and_is_never_reversed ... ok
[INFO] [stdout] test tui::widgets::dashboard::tests::dashboard_line_name_tinted_by_state ... ok
[INFO] [stdout] test tui::widgets::dashboard::tests::dashboard_line_selected_reverses_name_and_state_not_badge ... ok
[INFO] [stdout] test tui::widgets::dashboard::tests::dashboard_line_unknown_source_falls_back_without_panic ... ok
[INFO] [stdout] test tui::widgets::dashboard::tests::every_registry_source_has_a_non_fallback_badge_color ... ok
[INFO] [stdout] test tui::widgets::help::tests::help_overlay_renders_without_panic_across_sizes ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::elevator_indicator_centers_by_display_columns_not_bytes ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::pulse_border_color_breathes_within_bounds ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::status_segments_pads_to_full_column_width_with_multibyte_glyphs ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::status_segments_skips_empty_leading_token ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::theme_picker_narrow_terminal_does_not_panic ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::theme_swatch_distinguishes_themes ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::url_rect_centering_matches_painter_at_partial_scale ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::url_rect_does_not_extend_past_clipped_popup_right_edge ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::url_rect_fits_inside_normal_popup ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::url_rect_none_below_seventy_percent_scale ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::url_rect_none_when_envelope_too_small ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::url_rect_returns_none_when_url_row_falls_outside_clipped_popup ... ok
[INFO] [stdout] test tui::widgets::hud::hud_tests::version_popup_skips_render_when_fully_dismissed ... ok
[INFO] [stdout] test tui::widgets::tests::count_str_empty_floor_still_shows_total ... ok
[INFO] [stdout] test tui::widgets::tests::count_str_multi_floor_shows_n_slash_total ... ok
[INFO] [stdout] test tui::widgets::tests::count_str_multi_floor_shows_slash_even_when_total_equals_n ... ok
[INFO] [stdout] test tui::widgets::tests::count_str_narrow_tier_uses_bare_n ... ok
[INFO] [stdout] test tui::widgets::tests::count_str_single_floor_shows_bare_n ... ok
[INFO] [stdout] test tui::tui_renderer::harness::walkable_debug_toggle_tints_blocked_pixels_and_is_reversible ... ok
[INFO] [stdout] test tui::pathfind::tests::every_wander_waypoint_is_routable_on_the_coarse_grid ... ok
[INFO] [stdout] test tui::tui_renderer::harness::evict_missing_drops_history_and_motion_on_every_floor ... ok
[INFO] [stdout] test tui::widgets::tests::footer_caps_tools_at_four ... ok
[INFO] [stdout] test tui::widgets::tests::footer_full_width_mixed_states ... ok
[INFO] [stdout] test tui::widgets::tests::footer_minimal_width ... ok
[INFO] [stdout] test tui::widgets::tests::footer_quit_only_below_threshold ... ok
[INFO] [stdout] test tui::widgets::tests::footer_source_warning_replaces_stats_and_keeps_quit ... ok
[INFO] [stdout] test tui::widgets::tests::footer_source_warning_survives_every_width ... ok
[INFO] [stdout] test tui::widgets::tests::footer_medium_width_compact ... ok
[INFO] [stdout] test tui::widgets::tests::footer_with_floor_info ... ok
[INFO] [stdout] test tui::widgets::tests::status_spans_color_code_state_segments ... ok
[INFO] [stdout] test tui::widgets::tests::status_spans_text_matches_summary_across_tiers ... ok
[INFO] [stdout] test tui::widgets::tests::ticker_default_is_empty ... ok
[INFO] [stdout] test tui::widgets::tests::ticker_includes_waiting_reason ... ok
[INFO] [stdout] test tui::widgets::tests::source_warning_message_formats_by_death_count ... ok
[INFO] [stdout] test tui::widgets::tests::truncate_label_falls_back_to_plain_truncate_when_no_separator ... ok
[INFO] [stdout] test tui::widgets::tests::ticker_trims_buffer_past_max ... ok
[INFO] [stdout] test tui::widgets::tests::footer_zero_agents ... ok
[INFO] [stdout] test tui::widgets::tests::truncate_label_preserves_disambig_suffix ... ok
[INFO] [stdout] test tui::widgets::tooltip::tests::ag_full_path_ids_get_distinct_suffixes ... ok
[INFO] [stdout] test tui::widgets::tooltip::tests::multibyte_ids_are_safe_and_deterministic ... ok
[INFO] [stdout] test tui::widgets::tooltip::tests::rx_cwd_ids_with_colliding_basenames_get_distinct_suffixes ... ok
[INFO] [stdout] test tui::widgets::tests::truncate_label_passes_short_labels_through ... ok
[INFO] [stdout] test tui::widgets::tooltip::tests::uuid_ids_get_distinct_suffixes ... ok
[INFO] [stdout] test version::tests::bad_input_safe ... ok
[INFO] [stdout] test version::tests::boot_decision_first_run_persists_silently ... ok
[INFO] [stdout] test version::tests::boot_decision_downgrade_no_action ... ok
[INFO] [stdout] test version::tests::boot_decision_same_version_no_action ... ok
[INFO] [stdout] test version::tests::boot_decision_overwrites_corrupted_last_seen ... ok
[INFO] [stdout] test version::tests::boot_decision_upgrade_shows_popup_and_persists ... ok
[INFO] [stdout] test version::tests::current_version_has_release_notes ... ok
[INFO] [stdout] test version::tests::is_valid_version_accepts_well_formed ... ok
[INFO] [stdout] test tui::widgets::tests::truncate_label_plain_take_when_suffix_exceeds_budget ... ok
[INFO] [stdout] test version::tests::is_valid_version_rejects_corrupted ... ok
[INFO] [stdout] test version::tests::major_bump_detected ... ok
[INFO] [stdout] test version::tests::minor_bump_detected ... ok
[INFO] [stdout] test version::tests::newer_version_detected ... ok
[INFO] [stdout] test version::tests::patch_bump_detected ... ok
[INFO] [stdout] test version::tests::older_not_newer ... ok
[INFO] [stdout] test version::tests::path_dep_version_tracks_crate_version ... ok
[INFO] [stdout] test version::tests::prerelease_newer_than_older_release ... ok
[INFO] [stdout] test version::tests::release_newer_than_prerelease_of_same_version ... ok
[INFO] [stdout] test version::tests::release_notes_known_version ... ok
[INFO] [stdout] test version::tests::release_notes_unknown_version ... ok
[INFO] [stdout] test version::tests::same_version_not_newer ... ok
[INFO] [stdout] test tui::widgets::tests::footer_single_idle_agent ... ok
[INFO] [stdout] test tui::tui_renderer::harness::per_floor_layout_seeds_differ ... ok
[INFO] [stdout] test tui::pathfind::tests::reachset_never_claims_an_unroutable_cell ... ok
[INFO] [stdout] test tui::tui_renderer::harness::departed_agent_motion_is_evicted_on_a_non_current_floor ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_rest_pos_is_walkable ... ok
[INFO] [stdout] test tui::tui_renderer::harness::coffee_persists_through_floor_transition ... ok
[INFO] [stdout] test tui::tui_renderer::harness::weather_variants_render_without_panic_and_vary ... ok
[INFO] [stdout] test tui::pathfind::tests::path_cache_is_bounded_and_still_routes_after_the_clear ... ok
[INFO] [stdout] test tui::pathfind::tests::every_approach_point_is_routable_from_its_home_desk ... ok
[INFO] [stdout] test tui::tui_renderer::harness::pet_walk_never_clips_through_furniture ... ok
[INFO] [stdout] test tui::tui_renderer::harness::offscreen_floor_freezes_and_resyncs_on_return ... ok
[INFO] [stdout] test tui::tui_renderer::harness::occupied_floor_stays_lit ... ok
[INFO] [stdout] test tui::tui_renderer::harness::meeting_room_fills_and_hosts_group_chitchat ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 694 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 14.75s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/pixtuoid-97c3205c9a7c36d9)
[INFO] [stderr]      Running tests/frame_cache.rs (/opt/rustwide/target/debug/deps/frame_cache-095dfde0f8dd2131)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test tests::build_issue_url_starts_with_github ... ok
[INFO] [stdout] test tests::empty_rust_log_falls_back_to_requested_level ... ok
[INFO] [stdout] test tests::percent_encode_special_chars ... ok
[INFO] [stdout] test tests::truncate_ascii ... ok
[INFO] [stdout] test tests::truncate_beyond_length ... ok
[INFO] [stdout] test tests::rotate_if_large_rotates_once_past_the_cap ... ok
[INFO] [stdout] test tests::truncate_multibyte_boundary ... ok
[INFO] [stdout] test tests::percent_encode_ascii ... ok
[INFO] [stdout] test tests::nonempty_treats_empty_and_whitespace_as_unset ... ok
[INFO] [stdout] test tests::build_issue_url_truncates_long_backtrace ... ok
[INFO] [stdout] test tests::rotate_if_large_appends_old_to_dotted_custom_paths ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test get_or_make_caches_by_full_key ... ok
[INFO] [stdout] test evict_missing_drops_entries_for_absent_agents ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/golden_image.rs (/opt/rustwide/target/debug/deps/golden_image-65e59e9903a7375c)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test golden_empty_office_is_deterministic ... ok
[INFO] [stdout] test golden_cyberpunk_vs_normal_differ ... ok
[INFO] [stdout] test golden_populated_vs_empty_differ ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/install.rs (/opt/rustwide/target/debug/deps/install-f74c0b40a02a3502)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] warning: --hook-path /fake/pixtuoid-hook does not exist yet; the hook will fail until it does
[INFO] [stdout] warning: --hook-path /fake/path does not exist yet; the hook will fail until it does
[INFO] [stdout] warning: --hook-path /fake/path does not exist yet; the hook will fail until it does
[INFO] [stdout] [codex] no pixtuoid hooks found in /tmp/.tmp9eep6a/config.toml — nothing to remove
[INFO] [stdout] ok: installed pixtuoid hooks into /tmp/.tmp3Ndcm3/config.toml (Codex)
[INFO] [stdout] backup: /tmp/.tmp3Ndcm3/config.toml.pixtuoid.bak (removed automatically on uninstall-hooks)
[INFO] [stdout] note: comments and formatting in config.toml are not preserved (restore from the backup if needed).
[INFO] [stdout] → start a new Codex session for this to take effect.
[INFO] [stdout] ok: installed pixtuoid hooks into /tmp/.tmpt1g5GB/settings.json (Claude Code)
[INFO] [stdout] → start a new Claude Code session for this to take effect.
[INFO] [stderr] error: invalid value 'bogus' for '--target <TARGET>'
[INFO] [stderr]   [possible values: claude, codex, reasonix, all]
[INFO] [stderr] 
[INFO] [stderr] For more information, try '--help'.
[INFO] [stdout] ok: installed pixtuoid hooks into /tmp/.tmp86s4dY/settings.json (Claude Code)
[INFO] [stdout] → start a new Claude Code session for this to take effect.
[INFO] [stdout] [claude] no pixtuoid hooks found in /tmp/.tmpLfEBwZ/settings.json — nothing to remove
[INFO] [stdout] warning: --hook-path /fake/pixtuoid-hook does not exist yet; the hook will fail until it does
[INFO] [stdout] test install_unknown_target_errors ... ok
[INFO] [stdout] test uninstall_noop_preserves_file_and_backup ... ok
[INFO] [stdout] test install_with_config_and_target_flags ... ok
[INFO] [stdout] ok: installed pixtuoid hooks into /tmp/.tmpTsxddr/settings.json (Reasonix)
[INFO] [stdout] backup: /tmp/.tmpTsxddr/settings.json.pixtuoid.bak (removed automatically on uninstall-hooks)
[INFO] [stdout] → start a new Reasonix session for this to take effect.
[INFO] [stdout] test uninstall_missing_file_creates_nothing ... ok
[INFO] [stdout] ok: removed pixtuoid hooks from /tmp/.tmpt1g5GB/settings.json (Claude Code)
[INFO] [stdout] → start a new Claude Code session for this to take effect.
[INFO] [stdout] test install_then_uninstall_round_trip ... ok
[INFO] [stdout] ok: removed pixtuoid hooks from /tmp/.tmpTsxddr/settings.json (Reasonix)
[INFO] [stdout] removed backup: /tmp/.tmpTsxddr/settings.json.pixtuoid.bak
[INFO] [stdout] → start a new Reasonix session for this to take effect.
[INFO] [stdout] test install_reasonix_writes_flat_json_with_sentinel_and_backup ... ok
[INFO] [stdout] ok: removed pixtuoid hooks from /tmp/.tmp3Ndcm3/config.toml (Codex)
[INFO] [stdout] removed backup: /tmp/.tmp3Ndcm3/config.toml.pixtuoid.bak
[INFO] [stdout] → start a new Codex session for this to take effect.
[INFO] [stderr]      Running tests/layout_golden.rs (/opt/rustwide/target/debug/deps/layout_golden-9830ac829f4bfb94)
[INFO] [stdout] test install_codex_writes_toml_with_sentinel_and_backup ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test floor_variant_hash_gives_unique_layouts_per_floor ... ok
[INFO] [stdout] test layout_dense_seed6_desks ... ok
[INFO] [stdout] test layout_standard_96x72_meeting ... ok
[INFO] [stdout] test layout_open_plan_seed2_room_walls ... ok
[INFO] [stdout] test layout_standard_192x160_room_walls ... ok
[INFO] [stdout] test layout_dense_seed6_meeting ... ok
[INFO] [stdout] test layout_open_plan_seed2_desks ... ok
[INFO] [stdout] test layout_open_plan_seed2_meeting ... ok
[INFO] [stdout] test layout_dense_seed6_room_walls ... ok
[INFO] [stdout] test layout_standard_96x72_waypoints ... ok
[INFO] [stdout] test layout_dense_seed6_waypoints ... ok
[INFO] [stdout] test layout_standard_96x72_desks ... ok
[INFO] [stdout] test layout_standard_96x72_zones ... ok
[INFO] [stdout] test layout_standard_96x72_room_walls ... ok
[INFO] [stdout] test layout_open_plan_seed2_waypoints ... ok
[INFO] [stdout] test layout_standard_192x160_desks ... ok
[INFO] [stdout] test layout_standard_192x160_waypoints ... ok
[INFO] [stdout] test layout_standard_192x160_meeting ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/pack_cli.rs (/opt/rustwide/target/debug/deps/pack_cli-0c35f4f87daf5e75)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test init_pack_with_file_at_dest_errors_not_a_directory ... ok
[INFO] [stdout] test init_pack_writes_skeleton_into_fresh_dir ... ok
[INFO] [stdout] test init_pack_force_rewrites_populated_dir ... ok
[INFO] [stdout] test validate_pack_with_errors_bails ... ok
[INFO] [stdout] test validate_pack_skeleton_is_ok_and_warns_on_optionals ... ok
[INFO] [stdout] test init_pack_into_populated_dir_without_force_errors ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/pixel_regression.rs (/opt/rustwide/target/debug/deps/pixel_regression-ca8743bf0617069e)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test theme_affects_render ... ok
[INFO] [stdout] test weather_cycle_affects_render ... ok
[INFO] [stdout] test floor_seed_affects_render ... ok
[INFO] [stdout] test all_themes_render_distinctly ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/snapshot_regression.rs (/opt/rustwide/target/debug/deps/snapshot_regression-aab0830adedd029c)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test render_produces_distinct_wall_band_and_floor_regions ... ok
[INFO] [stdout] test render_changes_when_time_advances_by_hours ... ok
[INFO] [stdout] test render_is_deterministic_for_same_now ... ok
[INFO] [stdout] test render_changes_when_an_agent_state_changes ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/tui_renderer.rs (/opt/rustwide/target/debug/deps/tui_renderer-ff0171fc40a07aec)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test version_popup_animation_starts_small_then_grows ... ok
[INFO] [stdout] test dismiss_mid_entrance_does_not_snap_to_full ... ok
[INFO] [stdout] test set_version_popup_records_timestamp_on_edge ... ok
[INFO] [stdout] test help_open_toggles_via_setter ... ok
[INFO] [stdout] test tui_renderer_render_paints_a_full_frame ... ok
[INFO] [stdout] test cancel_transition_lands_on_destination_floor ... ok
[INFO] [stdout] test tui_renderer_transition_paints_pets_and_coffee ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/walkable_golden.rs (/opt/rustwide/target/debug/deps/walkable_golden-246c9073637c0058)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test walkable_mask_standard_96x70 ... ok
[INFO] [stdout] test walkable_mask_open_plan_96x70 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/widget_cells.rs (/opt/rustwide/target/debug/deps/widget_cells-b8df74f80c6ab8c7)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test chitchat_bubble_text_appears_in_buffer ... ok
[INFO] [stdout] test elevator_indicator_visible ... ok
[INFO] [stdout] test footer_contains_quit_hint ... ok
[INFO] [stdout] test branding_visible_in_wall_display ... ok
[INFO] [stdout] test footer_shows_agent_count ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests examples/snapshot.rs (/opt/rustwide/target/debug/examples/snapshot-ba3d48716d2a4e1a)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test tests::centered_crop_shrinks_to_a_small_terminal ... ok
[INFO] [stdout] test tests::centered_crop_centers_in_the_open ... ok
[INFO] [stdout] test tests::due_navigations_fires_each_exactly_once_in_schedule_order ... ok
[INFO] [stdout] test tests::due_navigations_late_schedule_still_fires_within_capture ... ok
[INFO] [stdout] test tests::parse_navigations_happy_and_fractional ... ok
[INFO] [stdout] test tests::parse_navigations_truncates_fractional_ms ... ok
[INFO] [stdout] test tests::parse_navigations_rejects_bad_input ... ok
[INFO] [stdout] test tests::dashboard_flag_parses_and_conflicts_with_anim ... ok
[INFO] [stdout] test tests::crop_rect_without_flags_is_none ... ok
[INFO] [stdout] test tests::crop_flags_conflict_with_gif_and_anim ... ok
[INFO] [stdout] test tests::crop_rect_fails_loudly_on_typos_and_unknown_agents ... ok
[INFO] [stdout] test tests::crop_rect_centers_on_the_pantry_waypoint ... ok
[INFO] [stdout] test tests::centered_crop_clamps_at_origin_and_far_edge ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pixtuoid_core-4e7768f902274dfe)
[INFO] [stdout] 
[INFO] [stdout] running 361 tests
[INFO] [stdout] test id::tests::from_parts_has_domain_separator ... ok
[INFO] [stdout] test id::tests::from_parts_distinguishes_source_and_opaque ... ok
[INFO] [stdout] test id::tests::agent_id_is_deterministic_per_path ... ok
[INFO] [stdout] test id::tests::from_transcript_path_routes_through_from_parts ... ok
[INFO] [stdout] test layout::approach::tests::occupies_pos_is_exactly_the_seat_kinds ... ok
[INFO] [stdout] test layout::approach::tests::approachable_obstacle_resolves_half_extents ... ok
[INFO] [stdout] test layout::approach::tests::def_footprint_matches_obstacle_footprint ... ok
[INFO] [stdout] test layout::approach::tests::approach_point_seat_never_approaches_from_the_back_even_when_walled_in ... ok
[INFO] [stdout] test id::tests::agent_id_differs_per_path ... ok
[INFO] [stdout] test layout::approach::tests::overhanging_obstacle_stand_clearance_uses_visual_not_footprint ... ok
[INFO] [stdout] test id::tests::agent_id_displays_as_hex ... ok
[INFO] [stdout] test layout::approach::tests::pod_and_waypoint_twins_resolve_to_one_furniture_row ... ok
[INFO] [stdout] test layout::approach::tests::pantry_stand_follows_origin_side ... ok
[INFO] [stdout] test layout::approach::tests::seat_kinds_pass_through_pos ... ok
[INFO] [stdout] test layout::approach::tests::approach_point_for_obstacle_matches_stand_point_when_reachable ... ok
[INFO] [stdout] test layout::approach::tests::picks_only_open_side_when_walled ... ok
[INFO] [stdout] test layout::approach::tests::stand_point_breaks_on_negative_coords_near_the_origin_corner ... ok
[INFO] [stdout] test layout::decor::tests::desk_is_a_furniture_def_with_desk_geometry ... ok
[INFO] [stdout] test layout::decor::tests::furniture_def_invariants_hold_for_every_row ... ok
[INFO] [stdout] test layout::approach::tests::pantry_stand_is_walkable_and_off_center ... ok
[INFO] [stdout] test layout::decor::tests::desk_excludes_its_south_front ... ok
[INFO] [stdout] test layout::decor::tests::rotation_is_a_bijection_on_sides ... ok
[INFO] [stdout] test layout::approach::tests::waypoint_kind_all_is_unique_and_complete ... ok
[INFO] [stdout] test layout::mask::tests::flat_box_footprint_is_centered_not_south_anchored ... ok
[INFO] [stdout] test layout::decor::tests::role_enum_sprite_names_resolve_in_the_animation_registry ... ok
[INFO] [stdout] test layout::decor::tests::seat_facing_north_rotates_to_exclude_the_south_back ... ok
[INFO] [stdout] test layout::mask::tests::wall_decor_whiteboard_footprint_centers_under_the_wider_sprite ... ok
[INFO] [stdout] test layout::decor::tests::seat_facing_south_allows_front_and_sides_not_back ... ok
[INFO] [stdout] test layout::placement::tests::center_origin_is_pos_minus_half ... ok
[INFO] [stdout] test layout::decor::tests::all_allows_every_side_for_any_facing ... ok
[INFO] [stdout] test layout::placement::tests::center_matches_legacy_center_pin_offset ... ok
[INFO] [stdout] test layout::mask::tests::overhang_footprint_south_anchored_leaves_the_overhang_walkable ... ok
[INFO] [stdout] test layout::approach::tests::real_pantry_stand_responds_to_desk_side ... ok
[INFO] [stdout] test layout::placement::tests::topleft_origin_is_pos ... ok
[INFO] [stdout] test layout::approach::tests::approach_point_seat_never_approaches_through_the_back ... ok
[INFO] [stdout] test layout::reach::tests::blocked_seed_snaps_into_the_component ... ok
[INFO] [stdout] test layout::reach::tests::open_field_reaches_everywhere ... ok
[INFO] [stdout] test layout::placement::tests::z_sort_row_is_the_sprite_south_row_for_every_anchor ... ok
[INFO] [stdout] test layout::reach::tests::corner_seed_ring_scan_handles_negative_coords ... ok
[INFO] [stdout] test layout::reach::tests::sub_cell_mask_yields_empty_reachset ... ok
[INFO] [stdout] test layout::reach::tests::seed_in_fully_blocked_pocket_snaps_to_nothing ... ok
[INFO] [stdout] test layout::reach::tests::walled_pocket_is_unreachable_but_main_is_reachable ... ok
[INFO] [stdout] test layout::reach::tests::reaches_is_false_out_of_bounds ... ok
[INFO] [stdout] test layout::tests::every_role_enum_variant_maps_to_a_furniture_row ... ok
[INFO] [stdout] test layout::tests::compute_places_bookshelf_on_wall_and_whiteboard_in_walkway ... ok
[INFO] [stdout] test layout::tests::compute_truncates_home_desks_when_more_agents_than_fit ... ok
[INFO] [stdout] test layout::tests::compute_zones_are_ordered_top_to_bottom_and_nonoverlapping ... ok
[INFO] [stdout] test layout::tests::compute_places_plants_in_lounge_and_walkway ... ok
[INFO] [stdout] test layout::tests::compute_returns_none_at_exact_boundary ... ok
[INFO] [stdout] test layout::tests::compute_places_all_waypoint_kinds ... ok
[INFO] [stdout] test layout::tests::compute_returns_none_when_buf_too_small ... ok
[INFO] [stdout] test layout::tests::compute_places_one_home_desk_per_agent ... ok
[INFO] [stdout] test layout::tests::home_desk_typed_accessor_matches_raw_vec ... ok
[INFO] [stdout] test layout::tests::sofas_seat_three_people ... ok
[INFO] [stdout] test layout::tests::narrow_width_desks_stay_inside_the_band_with_anchors_on_buffer ... ok
[INFO] [stdout] test layout::tests::every_home_desk_has_a_reachable_north_approach ... ok
[INFO] [stdout] test layout::tests::whiteboard_blocks_only_its_wheel_base_not_the_elevated_panel ... ok
[INFO] [stdout] test physics::tests::arrived_false_before_duration ... ok
[INFO] [stdout] test physics::tests::arrived_false_during_pause ... ok
[INFO] [stdout] test physics::tests::arrived_true_after_pause ... ok
[INFO] [stdout] test physics::tests::commute_faster_than_wander ... ok
[INFO] [stdout] test physics::tests::commute_intents_faster_than_wander_intents ... ok
[INFO] [stdout] test physics::tests::cruise_plateau_has_constant_delta ... ok
[INFO] [stdout] test physics::tests::exit_uses_commute_speed ... ok
[INFO] [stdout] test physics::tests::pause_ms_in_range ... ok
[INFO] [stdout] test physics::tests::pause_ms_independent_of_speed_mult ... ok
[INFO] [stdout] test physics::tests::progress_at_duration_is_1000 ... ok
[INFO] [stdout] test physics::tests::progress_at_half_duration_trapezoidal ... ok
[INFO] [stdout] test layout::approach::tests::real_layout_stand_points_are_walkable ... ok
[INFO] [stdout] test physics::tests::progress_at_zero_is_zero ... ok
[INFO] [stdout] test physics::tests::progress_at_half_duration_triangular_is_near_500 ... ok
[INFO] [stdout] test physics::tests::progress_in_triangular_decel_arm ... ok
[INFO] [stdout] test physics::tests::progress_is_monotone ... ok
[INFO] [stdout] test physics::tests::progress_saturates_at_1000 ... ok
[INFO] [stdout] test physics::tests::speed_mult_in_range ... ok
[INFO] [stdout] test physics::tests::speed_mult_is_deterministic ... ok
[INFO] [stdout] test physics::tests::speed_mult_varies_across_agents ... ok
[INFO] [stdout] test physics::tests::trapezoidal_duration_formula ... ok
[INFO] [stdout] test physics::tests::triangular_duration_formula ... ok
[INFO] [stdout] test physics::tests::wander_out_and_back_use_same_speed ... ok
[INFO] [stdout] test physics::tests::zero_length_no_panic ... ok
[INFO] [stdout] test platform::tests::codex_home_falls_back_to_dot_codex_when_env_unset_empty_or_missing_dir ... ok
[INFO] [stdout] test platform::tests::codex_home_uses_env_when_it_points_at_an_existing_dir ... ok
[INFO] [stdout] test platform::tests::unix_home_stays_authoritative_and_empty_home_is_unset ... ok
[INFO] [stdout] test physics::tests::progress_holds_1000_during_pause_window ... ok
[INFO] [stdout] test platform::tests::user_config_dir_macos_is_application_support ... ok
[INFO] [stdout] test platform::tests::user_config_dir_windows_prefers_appdata_then_roaming_fallback ... ok
[INFO] [stdout] test platform::tests::user_config_dir_linux_prefers_xdg_then_dot_config ... ok
[INFO] [stdout] test platform::tests::user_home_opt_is_the_shared_precedence_without_a_host_fallback ... ok
[INFO] [stdout] test platform::tests::windows_falls_back_to_home_then_tempdir ... ok
[INFO] [stdout] test platform::tests::windows_prefers_userprofile_over_home ... ok
[INFO] [stdout] test pose::tests::active_state_is_seated_typing_with_cycling_frame ... ok
[INFO] [stdout] test pose::tests::aimless_fallback_on_a_fully_blocked_mask_returns_the_desk_anchor ... ok
[INFO] [stdout] test pose::tests::aimless_fallback_scans_the_midline_for_a_walkable_cell ... ok
[INFO] [stdout] test pose::tests::cycle_after_a_suppressed_release_walks_out_from_its_beginning ... ok
[INFO] [stdout] test pose::tests::cycle_ms_for_varies_across_agents ... ok
[INFO] [stdout] test pose::tests::derive_returns_none_when_desk_index_out_of_range ... ok
[INFO] [stdout] test layout::tests::walkable_mask_connected_across_floor_seeds ... ok
[INFO] [stdout] test pose::tests::dwell_ms_varies_across_agents_and_is_deterministic ... ok
[INFO] [stdout] test pose::tests::entry_animation_overrides_normal_pose_for_first_4s ... ok
[INFO] [stdout] test pose::tests::entry_walk_does_not_carry_coffee ... ok
[INFO] [stdout] test pose::tests::derive_state_only_skips_entry_override ... ok
[INFO] [stdout] test pose::tests::dwell_ms_is_within_per_kind_range ... ok
[INFO] [stdout] test pose::tests::exit_override_returns_none_past_window ... ok
[INFO] [stdout] test pose::tests::freshly_spawned_idle_skips_thinking ... ok
[INFO] [stdout] test pose::tests::exit_override_walks_desk_to_door_within_window ... ok
[INFO] [stdout] test pose::tests::idle_cycle_loops_after_one_cycle ... ok
[INFO] [stdout] test layout::approach::tests::seat_approach_is_never_behind_the_backrest_on_real_layouts ... ok
[INFO] [stdout] test pose::tests::idle_past_thinking_window_returns_idle_pose ... ok
[INFO] [stdout] test pose::tests::idle_phase_1_is_walking_out ... ok
[INFO] [stdout] test pose::tests::entry_window_fall_through_uses_state_driven_pose ... ok
[INFO] [stdout] test pose::tests::idle_phase_0_is_seated_idle ... ok
[INFO] [stdout] test pose::tests::idle_phase_2_is_at_waypoint ... ok
[INFO] [stdout] test layout::tests::freestanding_decor_does_not_overlap_room_walls ... ok
[INFO] [stdout] test layout::tests::walkable_mask_is_fully_connected_across_buffer_sizes ... ok
[INFO] [stdout] test pose::tests::idle_phase_3_is_walking_back ... ok
[INFO] [stdout] test layout::tests::meeting_table_is_centered_between_its_two_sofas ... ok
[INFO] [stdout] test pose::tests::idle_pose_holds_at_waypoint_for_the_whole_dwell_window ... ok
[INFO] [stdout] test pose::tests::takes_trip_fires_roughly_42_percent_of_cycles ... ok
[INFO] [stdout] test pose::tests::seated_dwell_and_est_cycle_are_consistent ... ok
[INFO] [stdout] test pose::tests::thinking_gate_release_is_continuous_with_seated_thinking ... ok
[INFO] [stdout] test pose::tests::waiting_state_is_standing_at_desk ... ok
[INFO] [stdout] test pose::tests::walk_back_from_pantry_carries_coffee ... ok
[INFO] [stdout] test pose::tests::walk_back_from_non_pantry_no_coffee ... ok
[INFO] [stdout] test pose::tests::walk_out_intact_when_gate_releases_during_the_seated_phase ... ok
[INFO] [stdout] test pose::tests::waypoint_index_is_zero_when_no_waypoints ... ok
[INFO] [stdout] test source::antigravity::tests::ag_session_ended_is_always_false ... ok
[INFO] [stdout] test source::antigravity::tests::brain_root_is_the_cli_brain_under_dot_gemini ... ok
[INFO] [stdout] test source::antigravity::tests::label_is_ag_basename_or_bare_prefix ... ok
[INFO] [stdout] test source::antigravity::tests::negative_step_index_is_skipped_not_minted ... ok
[INFO] [stdout] test pose::tests::personality_varies_across_agents ... ok
[INFO] [stdout] test layout::approach::tests::dwell_range_is_nonzero ... ok
[INFO] [stdout] test pose::tests::idle_within_thinking_window_returns_seated_thinking ... ok
[INFO] [stdout] test pose::tests::pantry_walk_destination_is_walkable ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::duplicate_winner_rule_is_symmetric_and_total ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::empty_readable_dir_is_some_empty ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::keeps_entry_whose_pid_is_alive_and_binds_its_pid ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::fifo_named_json_does_not_hang_the_probe ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::drops_entry_whose_pid_is_dead ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::entry_without_started_at_keeps_pid_alive_only_behavior ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::malformed_and_incomplete_entries_are_ignored ... ok
[INFO] [stdout] test pose::tests::waypoint_choice_changes_across_cycles_for_same_agent ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::non_json_and_corrupt_values_are_silent_skips_not_drift ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::missing_dir_is_probe_failure_none ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::oversized_junk_json_entry_is_ignored ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::parse_registry_entry_extracts_started_at_and_tolerates_absence ... ok
[INFO] [stdout] test layout::tests::narrow_width_pod_decor_stays_inside_the_band_and_off_band_slots_are_skipped ... ok
[INFO] [stdout] test pose::tests::non_trip_cycle_is_seated_idle_throughout ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::registry_shape_pin_parses_the_current_live_format ... ok
[INFO] [stdout] test source::claude_code::cc_id_tests::cc_id_from_path_empty_for_no_stem ... ok
[INFO] [stdout] test source::claude_code::cc_id_tests::cc_id_from_path_root_is_filename_uuid ... ok
[INFO] [stdout] test source::claude_code::tests::decode_cc_line_keys_agent_id_on_cc_id_from_path ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::renamed_or_mistyped_required_key_is_shape_drift ... ok
[INFO] [stdout] test source::claude_code::cc_id_tests::cc_id_from_path_subagent_is_agent_stem ... ok
[INFO] [stdout] test source::claude_code::tests::default_paths_projects_root_honors_claude_config_dir ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::sessions_dir_derives_only_from_the_standard_layout ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::shape_drifted_entry_yields_no_vouch ... ok
[INFO] [stdout] test source::claude_code::cc_id_tests::cc_id_from_path_is_stable_across_path_separators ... ok
[INFO] [stdout] test source::claude_code::tests::default_socket_path_env_precedence_and_default_paths ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::duplicate_session_id_binds_a_stable_pid_regardless_of_scan_order ... ok
[INFO] [stdout] test source::claude_code::tests::label_falls_back_to_project_dir_when_cwd_empty ... ok
[INFO] [stdout] test source::claude_code::tests::label_uses_project_dir_when_cwd_has_no_basename ... ok
[INFO] [stdout] test source::claude_code::tests::quoted_exit_wrapper_in_user_content_never_ends_the_session ... ok
[INFO] [stdout] test source::claude_code::tests::string_content_turns_emit_no_tool_events ... ok
[INFO] [stdout] test source::claude_code::tests::label_final_fallback_to_cc_when_no_project_dir ... ok
[INFO] [stdout] test source::claude_code::tests::subagent_stop_with_stemless_path_falls_back_to_prefixed_id ... ok
[INFO] [stdout] test source::claude_code::tests::label_prefers_cwd_basename_when_present ... ok
[INFO] [stdout] test source::claude_code::tests::label_uses_project_dir_when_cwd_is_root ... ok
[INFO] [stdout] test source::claude_code::tests::label_does_not_false_positive_on_subagents_in_project_name ... ok
[INFO] [stdout] test source::codex::tests::codex_session_ended_is_always_false ... ok
[INFO] [stdout] test source::claude_code::tests::non_subagent_events_fall_through_to_shared_arms ... ok
[INFO] [stdout] test source::claude_code::tests::label_falls_back_to_project_dir_for_windows_slug ... ok
[INFO] [stdout] test source::claude_code::tests::label_marks_subagent_paths ... ok
[INFO] [stdout] test source::codex::tests::function_call_without_arguments_starts_work_not_waiting ... ok
[INFO] [stdout] test source::codex::tests::id_from_rollout_path_is_trailing_uuid ... ok
[INFO] [stdout] test source::codex::tests::decode_line_keys_agent_id_on_codex_id_from_path ... ok
[INFO] [stdout] test source::codex::tests::id_handles_non_ascii_filename_without_panic ... ok
[INFO] [stdout] test source::codex::tests::function_call_output_resumes_work ... ok
[INFO] [stdout] test source::codex::tests::label_is_cx_basename ... ok
[INFO] [stdout] test source::codex::tests::id_falls_back_to_stem_without_uuid ... ok
[INFO] [stdout] test source::claude_code::tests::tee_pushes_hook_child_ends_and_forwards_every_event_unchanged ... ok
[INFO] [stdout] test source::codex::tests::escalated_function_call_is_waiting ... ok
[INFO] [stdout] test source::codex::tests::justification_without_escalation_is_not_waiting ... ok
[INFO] [stdout] test source::codex::tests::live_ids_for_unrelated_root_is_empty ... ok
[INFO] [stdout] test source::codex::tests::live_ids_for_missing_root_is_some_empty_not_a_failure ... ok
[INFO] [stdout] test source::codex::tests::malformed_arguments_does_not_panic_and_starts_work ... ok
[INFO] [stdout] test source::codex::tests::non_object_line_emits_nothing ... ok
[INFO] [stdout] test source::codex::tests::patch_apply_end_resumes_work ... ok
[INFO] [stdout] test source::codex::tests::non_rollout_files_under_root_are_excluded ... ok
[INFO] [stdout] test source::codex::tests::plain_function_call_is_activity_start ... ok
[INFO] [stdout] test source::codex::tests::probe_root_requires_dot_codex_sessions_layout ... ok
[INFO] [stdout] test source::codex::tests::probe_root_accepts_resolved_codex_home_sessions_layout ... ok
[INFO] [stdout] test source::codex::tests::rollout_outside_root_is_excluded ... ok
[INFO] [stdout] test source::codex::tests::rollout_under_root_yields_its_uuid_bound_to_its_pid ... ok
[INFO] [stdout] test source::codex::tests::session_meta_and_unknown_emit_nothing ... ok
[INFO] [stdout] test source::codex::tests::shared_rollout_binds_the_larger_pid_regardless_of_enumeration_order ... ok
[INFO] [stdout] test source::codex::tests::web_and_tool_search_keep_the_agent_active ... ok
[INFO] [stdout] test source::codex::tests::non_subagent_events_fall_through_to_shared_arms ... ok
[INFO] [stdout] test source::claude_code::tests::subagent_hooks_with_empty_ids_are_err_not_fallthrough ... ok
[INFO] [stdout] test source::codex::tests::task_started_is_activity_start ... ok
[INFO] [stdout] test source::decoder::tests::codex_permission_request_maps_to_identity_plus_waiting ... ok
[INFO] [stdout] test source::decoder::tests::cc_session_start_reason_source_does_not_hijack_cli_source ... ok
[INFO] [stdout] test source::decoder::tests::absent_source_still_defaults_to_claude ... ok
[INFO] [stdout] test source::codex::tests::subagent_hooks_with_empty_ids_are_err_not_fallthrough ... ok
[INFO] [stdout] test source::codex::tests::task_complete_and_abort_end_activity ... ok
[INFO] [stdout] test source::decoder::tests::codex_stop_maps_to_activity_end_with_no_identity ... ok
[INFO] [stdout] test source::decoder::tests::codex_user_prompt_submit_creates_agent_via_session_start ... ok
[INFO] [stdout] test source::decoder::tests::normalize_path_key_folds_separators_and_case_on_windows ... ok
[INFO] [stdout] test source::decoder::tests::normalize_path_key_strips_verbatim_prefix_on_windows ... ok
[INFO] [stdout] test source::decoder::tests::normalize_path_key_verbatim_prefix_is_inert_on_unix ... ok
[INFO] [stdout] test source::decoder::tests::empty_cwd_on_tool_hook_decodes_to_identity_with_none_cwd ... ok
[INFO] [stdout] test source::decoder::tests::normalize_path_key_is_identity_on_unix ... ok
[INFO] [stdout] test source::decoder::tests::post_tool_use_without_cwd_decodes_to_identity_with_none_cwd ... ok
[INFO] [stdout] test source::decoder::tests::notification_decodes_to_identity_plus_waiting ... ok
[INFO] [stdout] test source::decoder::tests::session_start_and_session_end_carry_no_identity ... ok
[INFO] [stdout] test source::decoder::tests::subagent_hooks_from_sources_without_a_custom_decoder_bail ... ok
[INFO] [stdout] test source::decoder::tests::task_prefixed_tools_without_subagent_type_are_not_the_dispatch ... ok
[INFO] [stdout] test source::decoder::tests::unknown_source_decodes_cc_shaped_under_its_own_namespace ... ok
[INFO] [stdout] test source::decoder::tests::unknown_reasonix_event_errs_end_to_end_not_falls_through ... ok
[INFO] [stdout] test source::decoder::tests::pixtuoid_source_private_key_drives_cli_attribution ... ok
[INFO] [stdout] test source::decoder::tests::pre_tool_use_decodes_to_identity_plus_activity_start ... ok
[INFO] [stdout] test source::decoder::tests::codex_session_start_without_transcript_path_uses_session_id ... ok
[INFO] [stdout] test source::exit_watch::tests::live::exit_watch_reports_a_killed_child ... ok
[INFO] [stdout] test source::fd_probe::tests::open_vnode_paths_for_dead_pid_is_empty_not_panic ... ok
[INFO] [stdout] test source::fd_probe::tests::pids_by_name_for_nonexistent_process_is_some_empty ... ok
[INFO] [stdout] test source::fd_probe::tests::pids_by_name_returns_without_panic ... ok
[INFO] [stdout] test source::hook::tests::handle_conn_decodes_one_line_via_duplex ... ok
[INFO] [stdout] test source::exit_watch::tests::live::exit_watch_already_dead_pid_fires_immediately ... ok
[INFO] [stdout] test source::exit_watch::tests::live::watch_bogus_pid_does_not_panic ... ok
[INFO] [stdout] test source::fd_probe::tests::open_vnode_paths_sees_a_file_this_process_holds_open ... ok
[INFO] [stdout] test source::jsonl::tests::default_id_from_path_returns_normalized_path_key ... ok
[INFO] [stdout] test source::jsonl::tests::detect_parent_id_handles_workflow_nesting ... ok
[INFO] [stdout] test source::jsonl::tests::detect_parent_id_keys_on_parent_uuid_component ... ok
[INFO] [stdout] test source::jsonl::tests::child_end_unclaim_drains_stragglers_then_releases_without_session_end ... ok
[INFO] [stdout] test source::jsonl::tests::detect_parent_id_none_for_regular_and_lookalike_paths ... ok
[INFO] [stdout] test source::jsonl::tests::detect_parent_id_survives_cwd_split ... ok
[INFO] [stdout] test source::jsonl::tests::extract_cwd_reads_top_level_and_nested_payload ... ok
[INFO] [stdout] test source::exit_watch::tests::live::drop_stops_cleanly ... ok
[INFO] [stdout] test source::jsonl::tests::detect_parent_id_derives_grandparent_transcript_key ... ok
[INFO] [stdout] test source::jsonl::tests::failure_latch_fires_once_per_state_change ... ok
[INFO] [stdout] test source::cc_probe::liveness_tests::unreadable_dir_is_probe_failure_none ... ok
[INFO] [stdout] test layout::tests::partial_bottom_row_caps_mid_fill_when_agents_run_out ... ok
[INFO] [stdout] test source::jsonl::tests::gated_revive_falls_back_to_head_cwd_when_tail_has_none ... ok
[INFO] [stdout] test source::jsonl::tests::gated_file_revives_on_small_append_with_tail_cwd ... ok
[INFO] [stdout] test source::jsonl::tests::gated_file_oversized_ended_append_stays_unregistered ... ok
[INFO] [stdout] test source::jsonl::tests::oversized_attach_unregistered_skips_task_scan ... ok
[INFO] [stdout] test source::jsonl::tests::known_oversized_tail_emits_session_end_if_the_skipped_span_ended ... ok
[INFO] [stdout] test source::jsonl::tests::gated_file_registers_on_oversized_first_append ... ok
[INFO] [stdout] test source::jsonl::tests::probe_live_oversized_ended_first_sight_stays_unregistered ... ok
[INFO] [stdout] test source::fd_probe::tests::pids_by_name_finds_a_spawned_child ... FAILED
[INFO] [stdout] test source::jsonl::tests::probe_live_stale_file_registers_at_first_sight ... ok
[INFO] [stdout] test layout::tests::meeting_slots_track_meeting_rooms ... ok
[INFO] [stdout] test source::jsonl::tests::probe_parent_uuid_does_not_admit_subagent_transcript ... ok
[INFO] [stdout] test source::jsonl::tests::oversized_attach_dispatch_outside_window_is_missed ... ok
[INFO] [stdout] test source::jsonl::tests::child_end_unclaims_ttl_prunes_unmatched_entries ... ok
[INFO] [stdout] test source::jsonl::tests::scan_pass_re_vouches_a_transiently_gated_live_file ... ok
[INFO] [stdout] test source::jsonl::tests::session_end_unclaims_seen_so_a_later_append_re_registers ... ok
[INFO] [stdout] test source::jsonl::tests::session_exit_purges_live_so_a_probe_failure_pass_cannot_revouch ... ok
[INFO] [stdout] test source::jsonl::tests::oversized_attach_ended_session_skips_task_scan ... ok
[INFO] [stdout] test source::jsonl::tests::session_exit_drains_pending_bytes_so_a_straggler_walk_cannot_resurrect ... ok
[INFO] [stdout] test source::jsonl::tests::oversized_ended_skip_unclaims_seen_so_a_later_append_re_registers ... ok
[INFO] [stdout] test source::jsonl::tests::oversized_attach_seeds_unmatched_task_dispatch ... ok
[INFO] [stdout] test source::jsonl::tests::probe_never_gates_a_recent_file ... ok
[INFO] [stdout] test source::jsonl::tests::released_claim_is_not_revouched_into_a_full_replay ... ok
[INFO] [stdout] test source::manager::tests::fatal_source_exit_is_published_on_the_health_channel ... ok
[INFO] [stdout] test source::manager::tests::spawn_without_health_listener_does_not_panic_on_death ... ok
[INFO] [stdout] test source::jsonl::tests::probe_miss_keeps_the_stale_gate ... ok
[INFO] [stdout] test source::jsonl::tests::walk_jsonl_emits_for_a_first_sight_recent_live_file ... ok
[INFO] [stdout] test source::jsonl::tests::unclaim_for_foreign_id_stays_pending_and_leaves_local_claims_alone ... ok
[INFO] [stdout] test source::reasonix::tests::all_events_for_one_cwd_share_one_agent_id ... ok
[INFO] [stdout] test source::jsonl::tests::walk_jsonl_gates_a_first_sight_ended_file ... ok
[INFO] [stdout] test source::jsonl::tests::walk_jsonl_gates_a_first_sight_stale_file ... ok
[INFO] [stdout] test source::jsonl::tests::unbind_session_drops_only_emptied_pid_entries ... ok
[INFO] [stdout] test source::reasonix::tests::empty_or_missing_cwd_is_malformed ... ok
[INFO] [stdout] test source::jsonl::tests::task_scan_handles_partial_first_line ... ok
[INFO] [stdout] test source::reasonix::tests::activity_arms_prepend_identity_with_cwd_keyed_session ... ok
[INFO] [stdout] test source::reasonix::tests::non_object_payload_is_malformed ... ok
[INFO] [stdout] test source::reasonix::tests::notification_without_message_falls_back_to_waiting ... ok
[INFO] [stdout] test source::reasonix::tests::long_targets_are_truncated ... ok
[INFO] [stdout] test source::reasonix::tests::post_tool_use_and_stop_are_activity_end ... ok
[INFO] [stdout] test source::reasonix::tests::pre_tool_use_is_activity_start_with_no_tool_id ... ok
[INFO] [stdout] test source::reasonix::tests::pre_tool_use_without_tool_name_displays_question_mark ... ok
[INFO] [stdout] test source::reasonix::tests::notification_maps_to_waiting_with_message ... ok
[INFO] [stdout] test source::reasonix::tests::session_end_maps_to_session_end ... ok
[INFO] [stdout] test source::reasonix::tests::tool_args_spoofed_subagent_type_does_not_make_task ... ok
[INFO] [stdout] test source::reasonix::tests::stop_session_events_and_session_end_carry_no_identity ... ok
[INFO] [stdout] test source::reasonix::tests::subagent_dispatch_family_maps_to_task ... ok
[INFO] [stdout] test source::reasonix::tests::tool_target_uses_reasonix_arg_vocabulary ... ok
[INFO] [stdout] test source::reasonix::tests::unknown_event_bails_loudly ... ok
[INFO] [stdout] test source::reasonix::tests::user_prompt_submit_is_the_resurrect_session_start ... ok
[INFO] [stdout] test source::registry::tests::all_label_prefixes_are_unique ... ok
[INFO] [stdout] test source::registry::tests::descriptor_for_resolves_known_and_rejects_unknown ... ok
[INFO] [stdout] test source::registry::tests::descriptor_names_match_module_source_name_consts ... ok
[INFO] [stdout] test source::registry::tests::short_idle_reap_fires_for_codex_only ... ok
[INFO] [stdout] test source::registry_bridge_tests::registry_covers_exactly_the_registered_sources ... ok
[INFO] [stdout] test sprite::format::tests::final_frame_width_error_carries_line_context ... ok
[INFO] [stdout] test source::registry::tests::every_descriptor_has_two_char_label_prefix ... ok
[INFO] [stdout] test sprite::format::tests::palette_value_rejects_sign_prefixed_or_non_hex ... ok
[INFO] [stdout] test sprite::tests::mirror_horizontal_reverses_each_row ... ok
[INFO] [stdout] test sprite::tests::rgb_buffer_put_get_roundtrip ... ok
[INFO] [stdout] test sprite::tests::palette_get_and_override ... ok
[INFO] [stdout] test state::fsm::tests::enter_delegating_from_waiting_does_not_accumulate_or_stamp_last_event ... ok
[INFO] [stdout] test state::fsm::tests::enter_waiting_accumulates_from_active ... ok
[INFO] [stdout] test state::fsm::tests::mark_exiting_is_write_once ... ok
[INFO] [stdout] test state::fsm::tests::rename_is_idempotent_but_always_refreshes_liveness ... ok
[INFO] [stdout] test state::fsm::tests::enter_active_accumulates_prior_active_span_and_resets_timers ... ok
[INFO] [stdout] test state::fsm::tests::settle_to_idle_folds_active_span_up_to_pending_not_now ... ok
[INFO] [stdout] test state::fsm::tests::settle_to_idle_on_idle_is_a_noop_but_clears_mark ... ok
[INFO] [stdout] test sprite::tests::rgbbuffer_get_out_of_bounds_panics_in_debug - should panic ... ok
[INFO] [stdout] test state::fsm::tests::settle_to_idle_resolves_a_waiting_slot_without_accumulating ... ok
[INFO] [stdout] test state::reducer::tests::child_ledger_is_stamped_on_sweep_and_pruned_by_gc ... ok
[INFO] [stdout] test state::reducer::tests::delegating_slot_with_hook_silent_caps_gets_waiting_window ... ok
[INFO] [stdout] test layout::tests::meeting_slots_face_the_table ... ok
[INFO] [stdout] test state::reducer::tests::every_registered_source_has_two_char_label_prefix ... ok
[INFO] [stdout] test state::reducer::tests::fallback_label_detection_covers_each_shape_and_spares_real_labels ... ok
[INFO] [stdout] test state::reducer::tests::gated_before_waiting_evicted_on_apply_path_sweep ... ok
[INFO] [stdout] test state::scope::tests::has_waiting_ancestor_breaks_on_cycle_with_no_waiting_node ... ok
[INFO] [stdout] test state::reducer::tests::resurrect_in_place_evicts_correlation_maps_but_keeps_proof_of_life ... ok
[INFO] [stdout] test state::scope::tests::has_waiting_ancestor_true_via_cyclic_ancestor ... ok
[INFO] [stdout] test state::scope::tests::refresh_lineage_terminates_on_parent_id_cycle ... ok
[INFO] [stdout] test state::scope::tests::has_waiting_ancestor_false_when_parent_id_dangling ... ok
[INFO] [stdout] test state::scope::tests::has_waiting_ancestor_excludes_self_parented_node ... ok
[INFO] [stdout] test state::scope::tests::would_create_cycle_allows_legitimate_and_dangling_links ... ok
[INFO] [stdout] test state::reducer::tests::stale_timeout_constants_have_their_intended_durations ... ok
[INFO] [stdout] test state::scope::tests::has_waiting_ancestor_excludes_self_reached_via_cycle ... ok
[INFO] [stdout] test state::scope::tests::refresh_lineage_tolerates_dangling_parent_id ... ok
[INFO] [stdout] test state::scope::tests::would_create_cycle_rejects_self_parent ... ok
[INFO] [stdout] test state::scope::tests::would_create_cycle_terminates_on_preexisting_cycle_elsewhere ... ok
[INFO] [stdout] test state::tests::floor_of_leading_zero_capacity_floors ... ok
[INFO] [stdout] test state::tests::floor_of_skips_zero_capacity_floors ... ok
[INFO] [stdout] test state::tests::floor_of_uniform ... ok
[INFO] [stdout] test state::scope::tests::would_create_cycle_rejects_deep_chain_closure ... ok
[INFO] [stdout] test state::tests::floor_range_clamps_oob_index ... ok
[INFO] [stdout] test state::tests::floor_of_variable_capacities ... ok
[INFO] [stdout] test state::tests::next_free_desk_with_variable_capacities ... ok
[INFO] [stdout] test state::tests::scene_supports_up_to_ten_floors ... ok
[INFO] [stdout] test state::scope::tests::would_create_cycle_rejects_two_node_closure ... ok
[INFO] [stdout] test state::tests::floor_local_desk_oob_lands_on_last_nonempty_floor ... ok
[INFO] [stdout] test state::tests::floor_local_desk_variable ... ok
[INFO] [stdout] test state::tests::floor_range_variable ... ok
[INFO] [stdout] test state::tests::next_free_desk_returns_none_when_full ... ok
[INFO] [stdout] test state::tests::next_free_desk_overflows_to_second_floor ... ok
[INFO] [stdout] test source::jsonl::tests::oversized_attach_matched_task_is_not_seeded ... ok
[INFO] [stdout] test state::tests::next_free_desk_starts_at_zero ... ok
[INFO] [stdout] test walkable::tests::mark_walkable_carves_a_cutout ... ok
[INFO] [stdout] test state::tests::single_floor_local_is_the_identity_cast ... ok
[INFO] [stdout] test walkable::tests::out_of_bounds_query_is_not_walkable ... ok
[INFO] [stdout] test walkable::tests::mark_blocked_pads_and_clips ... ok
[INFO] [stdout] test state::tests::zero_capacity_floor_skipped_by_next_free_desk ... ok
[INFO] [stdout] test state::tests::total_capacity_sums_all_floors ... ok
[INFO] [stdout] test walkable::tests::overlay_signature_is_order_independent ... ok
[INFO] [stdout] test walkable::tests::overlay_blocks_inside_rects ... ok
[INFO] [stdout] test source::reasonix::tests::session_start_keys_on_cwd ... ok
[INFO] [stdout] test walkable::tests::overlay_signature_changes_with_contents ... ok
[INFO] [stdout] test walkable::tests::new_open_is_all_walkable ... ok
[INFO] [stdout] test source::jsonl::tests::probe_live_oversized_stale_file_registers_via_head_read ... ok
[INFO] [stdout] test layout::tests::pod_decor_south_edge_stays_inside_the_band_and_spilling_slots_are_skipped ... ok
[INFO] [stdout] test source::exit_watch::tests::live::watch_is_idempotent ... ok
[INFO] [stdout] test layout::tests::meeting_stand_points_are_walkable ... ok
[INFO] [stdout] test layout::tests::every_waypoint_kind_is_placed_in_some_layout ... ok
[INFO] [stdout] test layout::tests::compute_does_not_overflow_on_huge_terminal ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- source::fd_probe::tests::pids_by_name_finds_a_spawned_child stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'source::fd_probe::tests::pids_by_name_finds_a_spawned_child' (1068) panicked at crates/pixtuoid-core/src/source/fd_probe.rs:329:9:
[INFO] [stdout] expected spawned sleep (pid 1079) in pids_by_name
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5fca7f2b0858 - std[929523f510218772]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5fca7f2b0858 - std[929523f510218772]::backtrace_rs::backtrace::trace_unsynchronized::<std[929523f510218772]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5fca7f2b0858 - std[929523f510218772]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5fca7f2b0858 - <<std[929523f510218772]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[28b146924c2f19c6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5fca7f2c75ba - <core[28b146924c2f19c6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5fca7f2c75ba - core[28b146924c2f19c6]::fmt::write
[INFO] [stdout]    6:     0x5fca7f2b5a82 - std[929523f510218772]::io::default_write_fmt::<alloc[95e62e727ddf147d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5fca7f2b5a82 - <alloc[95e62e727ddf147d]::vec::Vec<u8> as std[929523f510218772]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5fca7f28c4c6 - <std[929523f510218772]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5fca7f28c4c6 - std[929523f510218772]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5fca7f2a7b69 - std[929523f510218772]::panicking::default_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5fca7f17b72c - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   12:     0x5fca7f17b72c - test[6ec0502068880816]::test_main_inner::<test[6ec0502068880816]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5fca7f2a7de2 - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   14:     0x5fca7f2a7de2 - std[929523f510218772]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5fca7f28c582 - std[929523f510218772]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5fca7f280e29 - std[929523f510218772]::sys::backtrace::__rust_end_short_backtrace::<std[929523f510218772]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5fca7f28d54d - __rustc[acf6043c977865fb]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5fca7f2c7dac - core[28b146924c2f19c6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5fca7f0b81cf - pids_by_name_finds_a_spawned_child
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/pixtuoid-core/src/source/fd_probe.rs:329:9
[INFO] [stdout]   20:     0x5fca7f095723 - pixtuoid_core[bcaa5f4c1930f165]::source::fd_probe::tests::pids_by_name_finds_a_spawned_child::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/pixtuoid-core/src/source/fd_probe.rs:318:44
[INFO] [stdout]   21:     0x5fca7f15b626 - <pixtuoid_core[bcaa5f4c1930f165]::source::fd_probe::tests::pids_by_name_finds_a_spawned_child::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5fca7f16e80b - <fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5fca7f16e80b - test[6ec0502068880816]::__rust_begin_short_backtrace::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x5fca7f17c085 - test[6ec0502068880816]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x5fca7f17c085 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x5fca7f17c085 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5fca7f17c085 - std[929523f510218772]::panicking::catch_unwind::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5fca7f17c085 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5fca7f17c085 - test[6ec0502068880816]::run_test_in_process
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x5fca7f17c085 - test[6ec0502068880816]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x5fca7f176be4 - test[6ec0502068880816]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x5fca7f176be4 - std[929523f510218772]::sys::backtrace::__rust_begin_short_backtrace::<test[6ec0502068880816]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5fca7f17f102 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x5fca7f17f102 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x5fca7f17f102 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5fca7f17f102 - std[929523f510218772]::panicking::catch_unwind::<(), core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5fca7f17f102 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5fca7f17f102 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x5fca7f17f102 - <std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5fca7f2afc6f - <alloc[95e62e727ddf147d]::boxed::Box<dyn core[28b146924c2f19c6]::ops::function::FnOnce<(), Output = ()> + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   41:     0x5fca7f2afc6f - <std[929523f510218772]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7141f09daaa4 - <unknown>
[INFO] [stdout]   43:     0x7141f0a67a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     source::fd_probe::tests::pids_by_name_finds_a_spawned_child
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 360 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.44s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p pixtuoid-core --lib`
[INFO] running `Command { std: "docker" "inspect" "e233331c7f91d1718934d93f4316bf9beda040f1b4602a015e224d19275a75b4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e233331c7f91d1718934d93f4316bf9beda040f1b4602a015e224d19275a75b4", kill_on_drop: false }`
[INFO] [stdout] e233331c7f91d1718934d93f4316bf9beda040f1b4602a015e224d19275a75b4
