[INFO] cloning repository https://github.com/Kai-Barry/Roulette-Core [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Kai-Barry/Roulette-Core" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKai-Barry%2FRoulette-Core", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKai-Barry%2FRoulette-Core'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e0effc3419340e3878eefd3a03b3696520308a2e [INFO] testing Kai-Barry/Roulette-Core against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKai-Barry%2FRoulette-Core" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-1-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/Kai-Barry/Roulette-Core [INFO] finished tweaking git repo https://github.com/Kai-Barry/Roulette-Core [INFO] tweaked toml for git repo https://github.com/Kai-Barry/Roulette-Core written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Kai-Barry/Roulette-Core on toolchain 1.99.0-beta.8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Kai-Barry/Roulette-Core 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] Downloading crates ... [INFO] [stderr] Downloaded wasm-bindgen-test-macro v0.3.78 [INFO] [stderr] Downloaded wasm-bindgen-test v0.3.78 [INFO] [stderr] Downloaded wasm-bindgen-test-shared v0.2.128 [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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e [INFO] running `Command { std: "docker" "start" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e", 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" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e" "/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" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e", 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" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling proc-macro2 v1.0.107 [INFO] [stderr] Compiling quote v1.0.47 [INFO] [stderr] Compiling serde_core v1.0.229 [INFO] [stderr] Compiling serde v1.0.229 [INFO] [stderr] Compiling thiserror v2.0.20 [INFO] [stderr] Compiling zmij v1.0.23 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.128 [INFO] [stderr] Compiling serde_json v1.0.151 [INFO] [stderr] Compiling base64 v0.21.7 [INFO] [stderr] Compiling itoa v1.0.18 [INFO] [stderr] Compiling memchr v2.8.3 [INFO] [stderr] Compiling rustversion v1.0.23 [INFO] [stderr] Compiling bumpalo v3.20.3 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling wasm-bindgen v0.2.128 [INFO] [stderr] Compiling syn v3.0.5 [INFO] [stderr] Compiling bitflags v2.13.2 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.128 [INFO] [stderr] Compiling serde_derive v1.0.229 [INFO] [stderr] Compiling thiserror-impl v2.0.20 [INFO] [stderr] Compiling ron v0.8.1 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.128 [INFO] [stderr] Compiling roulette-content v2.0.0 (/opt/rustwide/workdir/crates/roulette-content) [INFO] [stderr] Compiling console_error_panic_hook v0.1.7 [INFO] [stderr] Compiling roulette-core v2.0.0 (/opt/rustwide/workdir/crates/roulette-core) [INFO] [stderr] Compiling roulette-sim v2.0.0 (/opt/rustwide/workdir/crates/roulette-sim) [INFO] [stderr] Compiling roulette-wasm v2.0.0 (/opt/rustwide/workdir/crates/roulette-wasm) [INFO] [stderr] Compiling roulette-cli v2.0.0 (/opt/rustwide/workdir/crates/roulette-cli) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 1m 22s [INFO] running `Command { std: "docker" "inspect" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e", 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" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling serde_core v1.0.229 [INFO] [stderr] Compiling serde_json v1.0.151 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling libc v0.2.189 [INFO] [stderr] Compiling libm v0.2.16 [INFO] [stderr] Compiling autocfg v1.5.1 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling zerocopy v0.8.57 [INFO] [stderr] Compiling getrandom v0.4.3 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling fastrand v2.5.0 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling futures-core v0.3.34 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling futures-task v0.3.34 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.11 [INFO] [stderr] Compiling async-trait v0.1.92 [INFO] [stderr] Compiling wasm-bindgen-test-macro v0.3.78 [INFO] [stderr] Compiling futures-util v0.3.34 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling wasm-bindgen-test-shared v0.2.128 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling wasm-bindgen v0.2.128 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling rand v0.9.5 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling console_error_panic_hook v0.1.7 [INFO] [stderr] Compiling bitflags v2.13.2 [INFO] [stderr] Compiling serde v1.0.229 [INFO] [stderr] Compiling js-sys v0.3.105 [INFO] [stderr] Compiling ron v0.8.1 [INFO] [stderr] Compiling roulette-content v2.0.0 (/opt/rustwide/workdir/crates/roulette-content) [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling proptest v1.11.0 [INFO] [stderr] Compiling roulette-core v2.0.0 (/opt/rustwide/workdir/crates/roulette-core) [INFO] [stderr] Compiling roulette-sim v2.0.0 (/opt/rustwide/workdir/crates/roulette-sim) [INFO] [stderr] Compiling wasm-bindgen-futures v0.4.78 [INFO] [stderr] Compiling wasm-bindgen-test v0.3.78 [INFO] [stderr] Compiling roulette-wasm v2.0.0 (/opt/rustwide/workdir/crates/roulette-wasm) [INFO] [stderr] Compiling roulette-cli v2.0.0 (/opt/rustwide/workdir/crates/roulette-cli) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 3m 57s [INFO] running `Command { std: "docker" "inspect" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e", 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" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.13s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/release/deps/roulette-692cc570795cc44f) [INFO] [stderr] Running tests/cli_replay.rs (/opt/rustwide/target/release/deps/cli_replay-b22d5b9efe8a157c) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test different_seed_diverges ... ok [INFO] [stdout] test scripted_cli_output_is_byte_identical ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/roulette_content-b3cc4e85f897fa6e) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/content_valid.rs (/opt/rustwide/target/release/deps/content_valid-7258fd5bc233320f) [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test parse_rejects_bad_schema_version ... ok [INFO] [stdout] test parse_rejects_uncolored_slot ... ok [INFO] [stdout] test parse_rejects_unknown_enemy_wheel ... ok [INFO] [stdout] test parse_rejects_unknown_fields ... ok [INFO] [stdout] test parse_rejects_unknown_upgrade_ref ... ok [INFO] [stdout] test parse_rejects_duplicate_wheel_numbers ... ok [INFO] [stdout] test parse_rejects_nan_payout ... ok [INFO] [stdout] test parse_rejects_event_granting_unknown_card ... ok [INFO] [stdout] test load_dir_matches_embedded ... ok [INFO] [stdout] test parse_rejects_non_positive_payout ... ok [INFO] [stdout] test parse_rejects_wheel_below_two_slots ... ok [INFO] [stdout] test parse_rejects_duplicate_card_id ... ok [INFO] [stdout] test parse_rejects_card_over_cost_cap ... ok [INFO] [stdout] test embedded_content_loads_and_validates ... ok [INFO] [stdout] test ron_round_trip_is_idempotent ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/roulette_core-1dba5bcaf7f4024c) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test deterministic_floats::tests::bit_exact_across_calls ... ok [INFO] [stdout] test deterministic_floats::tests::sin_error_under_1e9 ... ok [INFO] [stdout] test deterministic_floats::tests::known_values_pinned ... ok [INFO] [stdout] test rng::tests::test_string_seed_consistency ... ok [INFO] [stdout] test rng::tests::test_determinism ... ok [INFO] [stdout] test rng::tests::test_pick ... ok [INFO] [stdout] test rng::tests::test_range_usize_bounds ... ok [INFO] [stdout] test deterministic_floats::tests::cos_error_under_1e9 ... ok [INFO] [stdout] test rng::tests::test_derive_streams_independent ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/api_replay.rs (/opt/rustwide/target/release/deps/api_replay-0fac4ec09b21b6f8) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test different_seeds_diverge ... ok [INFO] [stdout] test replay_is_byte_identical_for_same_seed ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/battle.rs (/opt/rustwide/target/release/deps/battle-e526907d56bcc98f) [INFO] [stdout] [INFO] [stdout] running 39 tests [INFO] [stdout] test buy_draw_pays_ladder_and_refills_from_discard ... ok [INFO] [stdout] test bets_merge_on_same_type ... ok [INFO] [stdout] test avarice_flattens_draw_cost ... ok [INFO] [stdout] test crimson_pays_double_while_losing ... ok [INFO] [stdout] test custom_number_multipliers_override_base ... ok [INFO] [stdout] test enemy_bets_split_50_30_rest ... ok [INFO] [stdout] test enemy_commit_is_anti_snowballed ... ok [INFO] [stdout] test hand_limit_eight_or_five_under_choked ... ok [INFO] [stdout] test curse_of_blood_drains_two_hp_per_round ... ok [INFO] [stdout] test gold_landing_converts_and_scores ... ok [INFO] [stdout] test heat_combo_sets_red_multiplier_at_three_streaks ... ok [INFO] [stdout] test lead_caps_single_slots_at_five ... ok [INFO] [stdout] test enemy_turn_stashes_bets_and_clears_intent_on_loss ... ok [INFO] [stdout] test double_next_payout_is_one_shot ... ok [INFO] [stdout] test clear_then_rebet_restores_layout ... ok [INFO] [stdout] test golden_battle_replay_is_identical ... ok [INFO] [stdout] test greed_starts_pool_at_15 ... ok [INFO] [stdout] test insurance_refunds_full_stake_on_zero ... ok [INFO] [stdout] test lucky_charm_reroll_policy ... ok [INFO] [stdout] test draw_ladder_costs ... ok [INFO] [stdout] test losing_stakes_vanish ... ok [INFO] [stdout] test multiball_sums_per_ball ... ok [INFO] [stdout] test low_rarity_physics_penalty ... ok [INFO] [stdout] test enemy_ai_is_deterministic_per_seed ... ok [INFO] [stdout] test enemy_attack_intent_damages_player_on_win ... ok [INFO] [stdout] test purple_landing_stuns_enemy ... ok [INFO] [stdout] test chip_mine_pays_value_on_landing ... ok [INFO] [stdout] test prediction_sector_penalty_by_width ... ok [INFO] [stdout] test red_streak_resets_on_black ... ok [INFO] [stdout] test resolve_pays_base_multiplier_and_returns_stake_to_pool ... ok [INFO] [stdout] test sacrifice_trades_ten_points_for_five_chips ... ok [INFO] [stdout] test round_limit_reached_scores_decide ... ok [INFO] [stdout] test spin_with_no_bets_passes_turn ... ok [INFO] [stdout] test stunned_enemy_does_not_softlock_command_flow ... ok [INFO] [stdout] test sudden_death_tie_resolved_when_pools_diverge ... ok [INFO] [stdout] test zero_hp_is_defeat ... ok [INFO] [stdout] test stunned_enemy_skips_turn ... ok [INFO] [stdout] test sudden_death_tie_loop_is_capped ... ok [INFO] [stdout] test tie_at_limit_triggers_sudden_death ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 39 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/board.rs (/opt/rustwide/target/release/deps/board-7c3ba488bc7ec185) [INFO] [stdout] [INFO] [stdout] running 20 tests [INFO] [stdout] test base_colors_follow_template_lists ... ok [INFO] [stdout] test custom_number_multipliers_fold_and_scope ... ok [INFO] [stdout] test bet_win_matrix_matches_section_4_2 ... ok [INFO] [stdout] test customizer_bookkeeping_stays_consistent ... ok [INFO] [stdout] test board_upgrades_apply_all_effect_kinds ... ok [INFO] [stdout] test forced_non_canonical_colors_are_honored ... ok [INFO] [stdout] test cycle_slot_color_walks_the_seven_colors ... ok [INFO] [stdout] test ladder_greens_win_green_bets_and_exclude_parity ... ok [INFO] [stdout] test color_levels_scale_payouts_per_section_4_5 ... ok [INFO] [stdout] test paint_overrides_base_and_convert_overrides_paint ... ok [INFO] [stdout] test green_numbers_are_sticky_under_specials_and_converts_respect_them ... ok [INFO] [stdout] test one_shots_are_consumed_once ... ok [INFO] [stdout] test paint_marked_slots_are_kept_on_entries ... ok [INFO] [stdout] test payout_base_table_is_data_driven ... ok [INFO] [stdout] test stack_tick_expires_spins_per_spin_and_rounds_per_round ... ok [INFO] [stdout] test stack_snapshot_folds_entries_into_board_state ... ok [INFO] [stdout] test customizer_enforces_two_slot_minimum_and_unique_numbers ... ok [INFO] [stdout] test bet_construction_validates_inputs ... ok [INFO] [stdout] test green_ladder_thresholds ... ok [INFO] [stdout] test mirror_slot_wins_number_bets ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/cards.rs (/opt/rustwide/target/release/deps/cards-770528806dd47c87) [INFO] [stdout] [INFO] [stdout] running 45 tests [INFO] [stdout] test capital_venture_banks_on_round_win_only ... ok [INFO] [stdout] test card_cost_charges_pool ... ok [INFO] [stdout] test cannot_play_during_spin_phase ... ok [INFO] [stdout] test adrenaline_rush_grants_chips_and_free_plays ... ok [INFO] [stdout] test deck_shuffle_reshuffles_discard_into_draw ... ok [INFO] [stdout] test chip_maker_makes_three_temp_draw_pile_chips ... ok [INFO] [stdout] test crimson_flood_converts_range_fight_scope ... ok [INFO] [stdout] test compound_interest_grants_half_pool ... ok [INFO] [stdout] test copy_paste_clones_last_played_non_utility ... ok [INFO] [stdout] test chip_mine_and_lucky_zone_and_cursed_zone_marks ... ok [INFO] [stdout] test emerald_rift_adds_green_slot ... ok [INFO] [stdout] test double_down_doubles_bets_and_intent ... ok [INFO] [stdout] test lucky_seven_custom_number_and_fight_scope ... ok [INFO] [stdout] test golden_heist_pays_when_gold_lands ... ok [INFO] [stdout] test golden_mirror_clones_two_zero_cost_temps ... ok [INFO] [stdout] test high_low_prime_single_arms_fold_on_number_bets ... ok [INFO] [stdout] test nudge_arms_nudge_cheat_flag ... ok [INFO] [stdout] test insurance_refunds_and_consumes_stack_entry ... ok [INFO] [stdout] test essence_chip_exiles_and_grants ... ok [INFO] [stdout] test monochrome_swaps_red_black ... ok [INFO] [stdout] test fight_scope_entries_survive_spin_and_round_tick ... ok [INFO] [stdout] test free_card_credit_makes_play_free ... ok [INFO] [stdout] test golden_zero_and_lucky_seven_custom_multipliers ... ok [INFO] [stdout] test physics_cards_arm_and_reset_per_spin ... ok [INFO] [stdout] test quick_draw_heavy_draw_and_calculated_risk ... ok [INFO] [stdout] test rewriter_damage_mode_is_verbatim ... ok [INFO] [stdout] test green_ripple_arms_and_boosts_green_by_active_slots ... ok [INFO] [stdout] test green_greed_arms_50x_for_three_spins ... ok [INFO] [stdout] test lucky_charm_counts_rerolls ... ok [INFO] [stdout] test temp_cards_cannot_be_removed_mid_effect_lock_at_spin ... ok [INFO] [stdout] test rust_curse_survives_physics_reset ... ok [INFO] [stdout] test stun_strike_arms_and_stuns_on_5_damage ... ok [INFO] [stdout] test rewriter_enemy_and_flat_damage ... ok [INFO] [stdout] test tax_refund_counts_essence_chips_in_discard ... ok [INFO] [stdout] test retain_vision_and_recycle_bin_and_identity_shift ... ok [INFO] [stdout] test risk_capital_gains_then_drains_each_spin ... ok [INFO] [stdout] test red_sea_spin_scope_clears_after_one_spin ... ok [INFO] [stdout] test double_payout_is_one_shot_next_win ... ok [INFO] [stdout] test played_cards_file_to_discard_after_spin ... ok [INFO] [stdout] test rewriter_preserves_case_shape ... ok [INFO] [stdout] test prime_arm_folds_on_prime_number_bets ... ok [INFO] [stdout] test unknown_def_id_errors ... ok [INFO] [stdout] test rewriter_dmg_and_loose_deal ... ok [INFO] [stdout] test paint_green_marks_three_slots_for_the_round ... ok [INFO] [stdout] test rewriter_deal_damage_variants ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 45 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/physics.rs (/opt/rustwide/target/release/deps/physics-87ecab64000a5d6a) [INFO] [stdout] [INFO] [stdout] running 17 tests [INFO] [stdout] test multiball_produces_capped_ball_results ... ok [INFO] [stdout] test nudge_moves_slot_by_at_most_distance ... ok [INFO] [stdout] test determinism_holds_for_multiball_event_streams ... ok [INFO] [stdout] test prediction_returns_none_when_unarmed ... ok [INFO] [stdout] test prediction_type_sizes ... ok [INFO] [stdout] test shotgun_adds_four_balls_mid_spin ... ok [INFO] [stdout] test event_log_hash_is_seed_deterministic ... ok [INFO] [stdout] test same_seed_same_result_and_event_log ... ok [INFO] [stdout] test spin_completes_within_step_cap ... ok [INFO] [stdout] test friction_extremes_change_spin_duration ... ok [INFO] [stdout] test tilt_and_mass_cheats_still_settle_validly ... ok [INFO] [stdout] test settle_yields_valid_slot_every_seed ... ok [INFO] [stdout] test target_zone_bias_shifts_landing_toward_target ... ok [INFO] [stdout] test prediction_never_matches_with_certainty ... ok [INFO] [stdout] test prediction_accuracy_knob_bounds_hit_rate ... ok [INFO] [stdout] test lands_uniformly_across_slots ... ok [INFO] [stdout] test prediction_wide_sector_beats_pinpoint_hit_rate ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.68s [INFO] [stdout] [INFO] [stderr] Running tests/run.rs (/opt/rustwide/target/release/deps/run-083a4388b6c56f9c) [INFO] [stdout] [INFO] [stdout] running 27 tests [INFO] [stdout] test blood_infusion_costs_12_and_heals_25 ... ok [INFO] [stdout] test map_connections_follow_closest_lane_with_optional_second ... ok [INFO] [stdout] test map_final_floor_is_single_boss_in_lane_1 ... ok [INFO] [stdout] test map_is_fully_reachable_from_every_floor0_node ... ok [INFO] [stdout] test map_middle_floor_type_roll_order ... ok [INFO] [stdout] test map_floor0_is_three_combat_nodes_one_per_lane ... ok [INFO] [stdout] test map_generation_is_deterministic_per_seed ... ok [INFO] [stdout] test level_costs_are_15_20_25 ... ok [INFO] [stdout] test full_run_short_playthrough_victory ... ok [INFO] [stdout] test buy_color_level_deducts_and_caps_at_10 ... ok [INFO] [stdout] test reward_rarity_distribution_matches_table ... ok [INFO] [stdout] test forge_reroll_changes_offers_and_costs_5 ... ok [INFO] [stdout] test event_choices_apply_run_effects ... ok [INFO] [stdout] test shop_offer_composition_and_price_bands ... ok [INFO] [stdout] test reward_picks_and_cards_by_tier ... ok [INFO] [stdout] test path_rule_blocks_unconnected_nodes ... ok [INFO] [stdout] test start_new_run_defaults_match_blueprint ... ok [INFO] [stdout] test defeat_keeps_node_open_and_carries_chips ... ok [INFO] [stdout] test shop_purchase_flows ... ok [INFO] [stdout] test snapshot_roundtrip_restores_run ... ok [INFO] [stdout] test elite_and_boss_attach_curses ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/roulette_sim-2446b973bd6def99) [INFO] [stdout] test loadout_draft_spend_and_complete ... ok [INFO] [stdout] test forge_offer_has_three_ops_and_free_budget ... ok [INFO] [stdout] test forge_op_prices_respect_free_budget ... ok [INFO] [stdout] test forge_ops_mutate_wheel_with_two_slot_rule ... ok [INFO] [stdout] test hp_death_is_game_over ... ok [INFO] [stdout] test map_node_type_helper ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s [INFO] [stdout] [INFO] [stderr] Running unittests src/bin/balance.rs (/opt/rustwide/target/release/deps/balance-76ffbcae434e656f) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running unittests src/bin/golden_spins.rs (/opt/rustwide/target/release/deps/golden_spins-3c1c8526ed479ec4) [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/bin/simulate.rs (/opt/rustwide/target/release/deps/simulate-cc1ab61000949047) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/roulette_wasm-776e3eb1f6085455) [INFO] [stderr] Running tests/perf.rs (/opt/rustwide/target/release/deps/perf-d6c752a8970c3fde) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test apply_spin_median_within_budget ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running tests/telemetry_agreement.rs (/opt/rustwide/target/release/deps/telemetry_agreement-a14a856b8943c95d) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test uniform_mode_has_no_telemetry ... ok [INFO] [stderr] Running tests/ts_schema_snapshot.rs (/opt/rustwide/target/release/deps/ts_schema_snapshot-53d38de5059a98e9) [INFO] [stdout] test telemetry_final_frame_agrees_with_ball_landed ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Doc-tests roulette_content [INFO] [stdout] test ts_schema_matches_rust_variants ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests roulette_core [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test crates/roulette-core/src/rng.rs - rng::Rng::new (line 23) ... ok [INFO] [stdout] test crates/roulette-core/src/rng.rs - rng::Rng::from_string_seed (line 38) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.03s [INFO] [stdout] [INFO] [stderr] Doc-tests roulette_sim [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests roulette_wasm [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e", kill_on_drop: false }` [INFO] [stdout] 00994e05ffb95275f434a5c2248be10e858f0308da36d5137148f6259e35f37e