[INFO] fetching crate skrills-dashboard 0.8.2...
[INFO] testing skrills-dashboard-0.8.2 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate skrills-dashboard 0.8.2 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate skrills-dashboard 0.8.2
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate skrills-dashboard 0.8.2
[INFO] tweaked toml for crates.io crate skrills-dashboard 0.8.2 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate skrills-dashboard 0.8.2 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate skrills-dashboard 0.8.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:68:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | homepage = "https://github.com/athola/skrills"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 | repository = "https://github.com/athola/skrills"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `skrills-dashboard` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27
[INFO] running `Command { std: "docker" "start" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:68:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | homepage = "https://github.com/athola/skrills"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 | repository = "https://github.com/athola/skrills"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `skrills-dashboard` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling lru v0.16.4
[INFO] [stderr]    Compiling compact_str v0.9.0
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling inotify v0.11.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling notify-types v2.1.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling line-clipping v0.3.7
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling notify v8.2.0
[INFO] [stderr]    Compiling hashlink v0.11.0
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling libsqlite3-sys v0.37.0
[INFO] [stderr]    Compiling fuzzy-matcher v0.3.7
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling pathdiff v0.2.3
[INFO] [stderr]    Compiling similar v3.1.0
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tokio v1.52.1
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling inquire v0.9.4
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling ratatui-core v0.1.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling skrills-snapshot v0.8.2
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling ratatui-macros v0.7.0
[INFO] [stderr]    Compiling ratatui v0.30.0
[INFO] [stderr]    Compiling skrills-validate v0.8.2
[INFO] [stderr]    Compiling skrills-discovery v0.8.2
[INFO] [stderr]    Compiling skrills_sync v0.8.2
[INFO] [stderr]    Compiling rusqlite v0.39.0
[INFO] [stderr]    Compiling skrills-metrics v0.8.2
[INFO] [stderr]    Compiling skrills-dashboard v0.8.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 49.28s
[INFO] running `Command { std: "docker" "inspect" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:68:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | homepage = "https://github.com/athola/skrills"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 | repository = "https://github.com/athola/skrills"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `skrills-dashboard` (manifest) generated 1 warning
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling insta v1.47.2
[INFO] [stderr]    Compiling skrills-dashboard v0.8.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 7.16s
[INFO] running `Command { std: "docker" "inspect" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:68:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | homepage = "https://github.com/athola/skrills"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 | repository = "https://github.com/athola/skrills"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `skrills-dashboard` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.23s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/skrills-dashboard/7bd6878533254793/out/skrills_dashboard-7bd6878533254793)
[INFO] [stdout] 
[INFO] [stdout] running 139 tests
[INFO] [stdout] test app::tests::test_activity_dedup_interleaved ... ok
[INFO] [stdout] test app::tests::test_end_key_on_empty_skills_is_noop ... ok
[INFO] [stdout] test app::tests::test_activity_keyed_dedup_varying_message ... ok
[INFO] [stdout] test app::tests::test_app_navigation ... ok
[INFO] [stdout] test app::tests::test_app_quit ... ok
[INFO] [stdout] test app::tests::test_activity_limit ... ok
[INFO] [stdout] test app::tests::test_base_skill_name ... ok
[INFO] [stdout] test app::tests::test_focus_panel_prev ... ok
[INFO] [stdout] test app::tests::test_home_key_on_empty_skills_is_noop ... ok
[INFO] [stdout] test app::tests::test_lazy_loading_small_set_shows_all ... ok
[INFO] [stdout] test app::tests::test_lazy_loading_wraps_only_when_all_loaded ... ok
[INFO] [stdout] test app::tests::test_sort_order_default ... ok
[INFO] [stdout] test app::tests::test_strip_version_suffix ... ok
[INFO] [stdout] test app::tests::test_toggle_sort ... ok
[INFO] [stdout] test app::tests::test_lazy_loading_end_key_loads_all ... ok
[INFO] [stdout] test app::tests::test_lazy_loading_extends_at_bottom ... ok
[INFO] [stdout] test app::tests::test_lazy_loading_initial_visible_count ... ok
[INFO] [stdout] test app::tests::test_lazy_loading_sort_resets_visible ... ok
[INFO] [stdout] test app::tests::test_activity_dedup_consecutive ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::dismiss_with_no_warnings_is_noop ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::dismiss_keystroke_acks_first_warning ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::short_alert_row_needs_no_truncation ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::long_alert_row_truncates_at_narrow_width ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::unrelated_keystroke_is_noop ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::master_ack_keystroke_returns_cleared_count ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::alert_row_truncates_message_when_title_fits_but_message_is_long ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::severity_stays_textual_so_meaning_survives_without_color ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::render_does_not_panic_on_empty_state ... ok
[INFO] [stdout] test app::tests::test_focus_panel_next ... ok
[INFO] [stdout] test cold_window::focus::tests::clamped_selection_handles_empty_and_shrunk_lists ... ok
[INFO] [stdout] test app::tests::test_activity_dedup_across_many_events ... ok
[INFO] [stdout] test cold_window::focus::tests::default_focus_is_alerts ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::render_handles_many_alerts ... ok
[INFO] [stdout] test cold_window::focus::tests::focused_block_carries_a_marker_visible_without_color ... ok
[INFO] [stdout] test cold_window::focus::tests::prev_is_the_inverse_of_next ... ok
[INFO] [stdout] test app::tests::test_activity_format_includes_timestamp_and_count ... ok
[INFO] [stdout] test cold_window::focus::tests::step_selection_clamps_at_both_ends ... ok
[INFO] [stdout] test cold_window::focus::tests::next_cycles_alerts_hints_research ... ok
[INFO] [stdout] test cold_window::focus::tests::truncate_ellipsis_long_string_ends_with_three_ascii_dots ... ok
[INFO] [stdout] test cold_window::focus::tests::truncate_ellipsis_four_chars_has_one_visible_plus_dots ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::category_labels_are_kebab_case_for_two_word_variants ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::pin_persistence_handles_missing_file ... ok
[INFO] [stdout] test cold_window::focus::tests::truncate_ellipsis_short_string_is_unchanged ... ok
[INFO] [stdout] test cold_window::focus::tests::truncate_ellipsis_zero_width_returns_empty ... ok
[INFO] [stdout] test cold_window::focus::tests::truncate_ellipsis_narrow_width_no_dots ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::hint_row_truncates_message_when_uri_fits_but_message_is_long ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::empty_state_yields_no_visible_hints ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::filter_excludes_other_categories ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::filter_keys_set_filter ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::long_hint_row_truncates_at_narrow_width ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::pin_keystroke_toggles_top_visible_hint ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::unrelated_keystroke_is_noop ... ok
[INFO] [stdout] test cold_window::keymap::tests::bindings_for_filters_by_scope ... ok
[INFO] [stdout] test cold_window::keymap::tests::every_modifier_binding_has_a_modifier_free_alternative ... ok
[INFO] [stdout] test cold_window::keymap::tests::every_palette_command_replays_a_key_the_table_owns ... ok
[INFO] [stdout] test cold_window::overlay::tests::help_lists_focused_pane_section_first ... ok
[INFO] [stdout] test cold_window::research_pane::tests::derived_default_matches_new_and_starts_collapsed ... ok
[INFO] [stdout] test cold_window::keymap::tests::key_codes_are_disjoint_across_all_bindings ... ok
[INFO] [stdout] test cold_window::research_pane::tests::channel_distinguishes_findings_with_same_fingerprint ... ok
[INFO] [stdout] test cold_window::research_pane::tests::default_state_is_collapsed_with_no_badge ... ok
[INFO] [stdout] test cold_window::keymap::tests::table_covers_the_known_pane_keys ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::pinned_hint_floats_to_top_regardless_of_score ... ok
[INFO] [stdout] test cold_window::overlay::tests::popup_rect_never_exceeds_the_frame ... ok
[INFO] [stdout] test cold_window::research_pane::tests::finding_row_truncates_url_when_title_fits_but_url_is_long ... ok
[INFO] [stdout] test cold_window::research_pane::tests::ingest_when_collapsed_increments_badge_for_new_findings ... ok
[INFO] [stdout] test cold_window::research_pane::tests::ingest_when_expanded_keeps_badge_at_zero ... ok
[INFO] [stdout] test cold_window::research_pane::tests::toggle_keystroke_returns_action ... ok
[INFO] [stdout] test cold_window::research_pane::tests::ingest_does_not_double_count_seen_findings ... ok
[INFO] [stdout] test cold_window::research_pane::tests::toggle_to_expanded_clears_badge ... ok
[INFO] [stdout] test cold_window::research_pane::tests::render_collapsed_does_not_panic ... ok
[INFO] [stdout] test cold_window::research_pane::tests::long_finding_row_truncates_at_narrow_width ... ok
[INFO] [stdout] test cold_window::research_pane::tests::unrelated_keystroke_is_noop ... ok
[INFO] [stdout] test cold_window::keymap::tests::palette_matching_is_case_insensitive_substring ... ok
[INFO] [stdout] test cold_window::overlay::tests::render_overlay_overwrites_pane_cells ... ok
[INFO] [stdout] test cold_window::state::tests::ack_warning_returns_false_on_repeat ... ok
[INFO] [stdout] test cold_window::state::tests::ingesting_acked_warning_does_not_signal_bell ... ok
[INFO] [stdout] test cold_window::state::tests::ingesting_new_warning_signals_bell_when_enabled ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::short_hint_row_needs_no_truncation ... ok
[INFO] [stdout] test cold_window::state::tests::ingesting_snapshot_with_no_warnings_does_not_signal_bell ... ok
[INFO] [stdout] test cold_window::state::tests::master_ack_carries_until_next_tick_with_higher_version ... ok
[INFO] [stdout] test cold_window::state::tests::master_ack_clears_non_warnings_only ... ok
[INFO] [stdout] test cold_window::state::tests::token_total_reflects_current_snapshot ... ok
[INFO] [stdout] test cold_window::status_bar::tests::active_edit_label_when_recent_edit ... ok
[INFO] [stdout] test cold_window::state::tests::unack_warning_re_arms_fingerprint ... ok
[INFO] [stdout] test cold_window::state::tests::visible_alerts_sort_by_tier_then_recency ... ok
[INFO] [stdout] test cold_window::status_bar::tests::load_label_when_loaded_no_edit ... ok
[INFO] [stdout] test cold_window::research_pane::tests::short_finding_row_needs_no_truncation ... ok
[INFO] [stdout] test cold_window::state::tests::alert_counts_by_tier_aggregate ... ok
[INFO] [stdout] test cold_window::status_bar::tests::alert_counts_appear_in_label ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::pin_persistence_round_trips ... ok
[INFO] [stdout] test cold_window::status_bar::tests::base_label_when_idle ... ok
[INFO] [stdout] test cold_window::status_bar::tests::token_label_uses_k_for_large_numbers ... ok
[INFO] [stdout] test cold_window::tui::tests::colon_opens_the_palette_and_typed_keys_edit_the_query ... ok
[INFO] [stdout] test cold_window::state::tests::ack_warning_dismisses_individual_warning ... ok
[INFO] [stdout] test cold_window::research_pane::tests::render_expanded_with_findings_does_not_panic ... ok
[INFO] [stdout] test cold_window::state::tests::bell_disabled_suppresses_signal ... ok
[INFO] [stdout] test cold_window::tui::tests::ctrl_c_quits_but_plain_c_does_not ... ok
[INFO] [stdout] test cold_window::state::tests::fresh_state_has_no_visible_alerts ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::render_does_not_panic_at_various_sizes ... ok
[INFO] [stdout] test cold_window::status_bar::tests::quota_label_renders_when_provided ... ok
[INFO] [stdout] test cold_window::tui::tests::enter_on_an_empty_list_is_a_noop ... ok
[INFO] [stdout] test cold_window::status_bar::tests::warmup_label_when_no_snapshot ... ok
[INFO] [stdout] test cold_window::status_bar::tests::render_does_not_panic_at_minimum_size ... ok
[INFO] [stdout] test cold_window::tui::tests::enter_opens_detail_for_the_selected_item_and_esc_returns ... ok
[INFO] [stdout] test cold_window::tui::tests::compact_tier_draws_only_the_focused_pane ... ok
[INFO] [stdout] test cold_window::tui::tests::hint_detail_includes_composite_priority_label ... ok
[INFO] [stdout] test cold_window::tui::tests::master_ack_key_clears_non_warning_alerts ... ok
[INFO] [stdout] test cold_window::tui::tests::mode_thresholds_map_width_to_tier ... ok
[INFO] [stdout] test cold_window::tui::tests::draw_renders_topmost_overlay_over_panes ... ok
[INFO] [stdout] test cold_window::tui::tests::medium_gives_left_panes_more_room_than_wide ... ok
[INFO] [stdout] test cold_window::tui::tests::draw_composes_all_panes_without_panic ... ok
[INFO] [stdout] test cold_window::tui::tests::narrow_research_grows_when_expanded ... ok
[INFO] [stdout] test cold_window::tui::tests::open_overlay_consumes_pane_and_focus_keys ... ok
[INFO] [stdout] test cold_window::tui::tests::narrow_stacks_panes_in_a_single_full_width_column ... ok
[INFO] [stdout] test cold_window::tui::tests::palette_enter_replays_the_selected_command ... ok
[INFO] [stdout] test cold_window::tui::tests::hint_bar_shows_enter_detail_hint ... ok
[INFO] [stdout] test cold_window::tui::tests::research_detail_includes_channel_score_label ... ok
[INFO] [stdout] test cold_window::alert_pane::tests::render_after_resize_does_not_panic ... ok
[INFO] [stdout] test cold_window::tui::tests::esc_and_q_pop_overlays_before_anything_else ... ok
[INFO] [stdout] test cold_window::tui::tests::jk_and_arrows_move_selection_in_the_focused_pane_only ... ok
[INFO] [stdout] test cold_window::tui::tests::size_guard_replaces_panes_below_the_floor ... ok
[INFO] [stdout] test cold_window::tui::tests::tab_cycles_focus_and_backtab_reverses ... ok
[INFO] [stdout] test cold_window::tui::tests::selected_row_carries_a_cursor_marker_visible_without_color ... ok
[INFO] [stdout] test cold_window::tui::tests::q_quits_at_base_but_esc_does_not ... ok
[INFO] [stdout] test cold_window::tui::tests::z_toggles_zoom_and_esc_unzooms_only_with_no_overlay ... ok
[INFO] [stdout] test cold_window::tui::tests::wide_and_medium_are_columnar ... ok
[INFO] [stdout] test cold_window::tui::tests::question_mark_toggles_the_help_overlay ... ok
[INFO] [stdout] test cold_window::tui::tests::palette_renders_query_and_filtered_commands ... ok
[INFO] [stdout] test cold_window::tui::tests::zoom_gives_the_focused_pane_the_full_body_at_every_tier ... ok
[INFO] [stdout] test app::tests::test_activity_keyed_does_not_match_unkeyted ... ok
[INFO] [stdout] test cold_window::hint_pane::tests::pin_keystroke_with_no_hints_is_noop ... ok
[INFO] [stdout] test cold_window::tui::tests::status_bar_is_always_one_line_at_the_bottom ... ok
[INFO] [stdout] test cold_window::overlay::tests::stack_is_lifo_and_reports_emptiness ... ok
[INFO] [stdout] test cold_window::tui::tests::draw_renders_expanded_research_in_narrow_and_medium_tiers ... ok
[INFO] [stdout] test cold_window::tui::tests::focused_pane_marker_follows_focus ... ok
[INFO] [stdout] test cold_window::tui::tests::first_paint_reflects_snapshot_under_500ms ... ok
[INFO] [stdout] test cold_window::tui::tests::research_collapsed_only_affects_the_narrow_stack ... ok
[INFO] [stdout] test cold_window::tui::tests::draw_survives_tiny_and_huge_areas ... ok
[INFO] [stdout] test cold_window::tui::tests::hint_bar_tracks_focus_and_overlays ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 139 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ui_rendering.rs (/opt/rustwide/target/debug/build/skrills-dashboard/4ac2e1743144bc6d/out/ui_rendering-4ac2e1743144bc6d)
[INFO] [stdout] 
[INFO] [stdout] running 40 tests
[INFO] [stdout] test backtab_cycles_panel_focus_reverse ... ok
[INFO] [stdout] test esc_quits ... ok
[INFO] [stdout] test help_overlay_toggles_on_f1 ... ok
[INFO] [stdout] test metric_event_skill_invocation_failure ... ok
[INFO] [stdout] test home_end_keys ... ok
[INFO] [stdout] test metric_event_rule_trigger ... ok
[INFO] [stdout] test j_k_navigation_moves_skill_selection ... ok
[INFO] [stdout] test metric_event_sync ... ok
[INFO] [stdout] test metric_event_validation_fail ... ok
[INFO] [stdout] test metric_event_validation_pass ... ok
[INFO] [stdout] test metrics_panel_no_skill_selected ... ok
[INFO] [stdout] test activity_panel_renders_events ... ok
[INFO] [stdout] test metric_event_skill_invocation_success ... ok
[INFO] [stdout] test metrics_panel_shows_locations ... ok
[INFO] [stdout] test navigation_on_empty_skills_does_not_panic ... ok
[INFO] [stdout] test navigation_wraps_around ... ok
[INFO] [stdout] test q_quits ... ok
[INFO] [stdout] test header_shows_dash_when_no_refresh ... ok
[INFO] [stdout] test mcp_panel_hidden_when_no_servers ... ok
[INFO] [stdout] test header_shows_mcp_count_when_servers_present ... ok
[INFO] [stdout] test help_overlay_toggles_on_question_mark ... ok
[INFO] [stdout] test mcp_panel_shows_disabled_server ... ok
[INFO] [stdout] test footer_shows_keyboard_shortcuts ... ok
[INFO] [stdout] test skills_panel_shows_validation_status ... ok
[INFO] [stdout] test metrics_panel_shows_selected_skill_info ... ok
[INFO] [stdout] test header_shows_skill_counts_and_timestamp ... ok
[INFO] [stdout] test full_dashboard_snapshot ... ok
[INFO] [stdout] test focused_panel_has_different_style ... ok
[INFO] [stdout] test mcp_panel_shows_servers ... ok
[INFO] [stdout] test renders_at_minimum_terminal_size ... ok
[INFO] [stdout] test activity_panel_truncates_to_visible_area ... ok
[INFO] [stdout] test skills_panel_renders_skill_names ... ok
[INFO] [stdout] test skills_panel_empty_state ... ok
[INFO] [stdout] test sort_resets_selection_to_top ... ok
[INFO] [stdout] test sort_toggle_reorders_skills ... ok
[INFO] [stdout] test skills_panel_title_reflects_sort_order ... ok
[INFO] [stdout] test skills_panel_title_shows_visible_total_when_partially_loaded ... ok
[INFO] [stdout] test skills_panel_title_no_count_when_all_visible ... ok
[INFO] [stdout] test tab_cycles_panel_focus ... ok
[INFO] [stdout] test renders_at_large_terminal_size ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 40 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests skrills_dashboard
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/lib.rs - (line 10) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27", kill_on_drop: false }`
[INFO] [stdout] 8cd18e722699b9b7e1dde649e2f6ac933fcc00bc314554429aa679b8e5687e27
