[INFO] fetching crate tui-minesweeper 0.1.1...
[INFO] testing tui-minesweeper-0.1.1 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate tui-minesweeper 0.1.1 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate tui-minesweeper 0.1.1
[INFO] finished tweaking crates.io crate tui-minesweeper 0.1.1
[INFO] tweaked toml for crates.io crate tui-minesweeper 0.1.1 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate tui-minesweeper 0.1.1 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate tui-minesweeper 0.1.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded lru v0.18.2
[INFO] [stderr]   Downloaded palette_math v0.7.7
[INFO] [stderr]   Downloaded palette_derive v0.7.7
[INFO] [stderr]   Downloaded line-clipping v0.3.8
[INFO] [stderr]   Downloaded darling_macro v0.24.0
[INFO] [stderr]   Downloaded instability v0.3.13
[INFO] [stderr]   Downloaded darling v0.24.0
[INFO] [stderr]   Downloaded darling_core v0.24.0
[INFO] [stderr]   Downloaded palette v0.7.7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d
[INFO] running `Command { std: "docker" "start" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d", 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" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d", 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" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling either v1.17.0
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling instability v0.3.13
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling time v0.3.55
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling mio v1.2.2
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling line-clipping v0.3.8
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling chacha20 v0.10.1
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling directories v6.0.0
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling rand v0.10.2
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling lru v0.18.2
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling darling_core v0.24.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling ratatui-core v0.1.2
[INFO] [stderr]    Compiling darling_macro v0.24.0
[INFO] [stderr]    Compiling darling v0.24.0
[INFO] [stderr]    Compiling ratatui-widgets v0.3.2
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.2
[INFO] [stderr]    Compiling ratatui-macros v0.7.2
[INFO] [stderr]    Compiling ratatui v0.30.2
[INFO] [stderr]    Compiling tui-minesweeper v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 21.98s
[INFO] running `Command { std: "docker" "inspect" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d", 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" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling tui-minesweeper v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.25s
[INFO] running `Command { std: "docker" "inspect" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d", 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" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/tui_minesweeper-f9cb0c3a6df77db7)
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stdout] test app::tests::chord_or_flag_unflags_flagged_cell ... ok
[INFO] [stdout] test app::tests::beginner_search_budget_is_applied_on_new_game ... ok
[INFO] [stdout] test app::tests::chord_or_flag_flags_hidden_cell_during_play ... ok
[INFO] [stdout] test app::tests::chord_or_flag_reveals_before_generating_first_click ... ok
[INFO] [stdout] test app::tests::fallback_board_notifies_once_then_clears ... ok
[INFO] [stdout] test game::tests::flag_toggles_between_hidden_and_flagged ... ok
[INFO] [stdout] test game::tests::exhausted_search_budget_marks_fallback_board ... ok
[INFO] [stdout] test game::tests::mines_remaining_tracks_flags ... ok
[INFO] [stdout] test solver::tests::numbered_cell_with_one_hidden_neighbour_deduces_mine ... ok
[INFO] [stdout] test app::tests::chord_or_flag_chords_revealed_number ... ok
[INFO] [stdout] test game::tests::mine_count_clamped_below_cell_count ... ok
[INFO] [stdout] test solver::tests::overlapping_constraints_deduce_without_guess ... ok
[INFO] [stdout] test solver::tests::symmetric_two_hidden_one_mine_is_forced_guess ... ok
[INFO] [stdout] test game::tests::losing_sets_lost_at_and_reveals_mines ... ok
[INFO] [stdout] test game::tests::winning_reveals_and_flags_all_mines ... ok
[INFO] [stdout] test game::tests::reveal_number_does_not_flood ... ok
[INFO] [stdout] test game::tests::first_click_is_always_safe_and_flood_fills ... ok
[INFO] [stdout] test state::tests::record_mixed_outcomes_only_accumulates_win_durations ... ok
[INFO] [stdout] test game::tests::generating_first_click_yields_no_guess_board_when_budget_allows ... ok
[INFO] [stdout] test ui::tests::avg_win_time_averages_recorded_win_durations ... ok
[INFO] [stdout] test state::tests::record_loss_counts_game_but_not_win_duration ... ok
[INFO] [stdout] test state::tests::deserializes_legacy_total_duration_without_win_duration ... ok
[INFO] [stdout] test ui::tests::avg_win_time_shows_dash_when_no_wins ... ok
[INFO] [stdout] test state::tests::record_win_accumulates_win_duration_and_best_time ... ok
[INFO] [stdout] test solver::tests::last_hidden_cell_deduced_by_mine_count_is_no_guess ... ok
[INFO] [stdout] test state::tests::load_prefers_current_over_legacy ... ok
[INFO] [stdout] test state::tests::load_migrates_legacy_dotfile_into_config_dir ... ok
[INFO] [stdout] test ui::tests::menu_renders_difficulties ... ok
[INFO] [stdout] test game::tests::mine_count_is_respected ... ok
[INFO] [stdout] test ui::tests::stats_screen_renders ... ok
[INFO] [stdout] test state::tests::save_creates_parent_directories ... ok
[INFO] [stdout] test game::tests::same_seed_and_generating_click_replay_accepted_layout ... ok
[INFO] [stdout] test ui::tests::game_renders_board_with_numbers_after_reveal ... ok
[INFO] [stdout] test ui::tests::win_shows_overlay_and_records_stats ... ok
[INFO] [stdout] test game::tests::intermediate_generating_click_finds_no_guess_in_tiered_budget ... ok
[INFO] [stdout] test game::tests::expert_generating_click_completes_within_budget ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d", kill_on_drop: false }`
[INFO] [stdout] 8382f87b92721205b8ab1a341fc45fee2efccd77c8654f0876ae47f1dd19294d
