[INFO] cloning repository https://github.com/Banyc/mux [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Banyc/mux" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBanyc%2Fmux", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBanyc%2Fmux'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 851c7521c5c03cec014212aa4d384f7a88d87935 [INFO] testing Banyc/mux/851c7521c5c03cec014212aa4d384f7a88d87935 against 1.98.0-beta.8 for beta-1.99-5 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBanyc%2Fmux" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Banyc/mux [INFO] finished tweaking git repo https://github.com/Banyc/mux [INFO] tweaked toml for git repo https://github.com/Banyc/mux written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Banyc/mux on toolchain 1.98.0-beta.8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Banyc/mux 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.98.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/Banyc/file_transfer.git` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded async_async_io v0.2.3 [INFO] [stderr] Downloaded reusable-box-future v0.2.0 [INFO] [stderr] Downloaded bytemuck v1.25.2 [INFO] [stderr] Downloaded atomic-memcpy v0.2.3 [INFO] [stderr] Downloaded async_smux v0.3.4 [INFO] [stderr] Downloaded futures v0.3.33 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b [INFO] running `Command { std: "docker" "start" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b", 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" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b", 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" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.107 [INFO] [stderr] Compiling quote v1.0.47 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling libc v0.2.189 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling smallvec v1.15.2 [INFO] [stderr] Compiling autocfg v1.5.1 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling anyhow v1.0.104 [INFO] [stderr] Compiling thiserror v2.0.20 [INFO] [stderr] Compiling getrandom v0.4.3 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling bytes v1.12.1 [INFO] [stderr] Compiling futures-core v0.3.33 [INFO] [stderr] Compiling futures-task v0.3.33 [INFO] [stderr] Compiling bytemuck v1.25.2 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling syn v3.0.3 [INFO] [stderr] Compiling syn v2.0.119 [INFO] [stderr] Compiling atomic-memcpy v0.2.3 [INFO] [stderr] Compiling futures-sink v0.3.33 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling socket2 v0.6.5 [INFO] [stderr] Compiling mio v1.2.2 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling tokio-macros v2.7.2 [INFO] [stderr] Compiling thiserror-impl v2.0.20 [INFO] [stderr] Compiling tokio v1.53.1 [INFO] [stderr] Compiling futures-macro v0.3.33 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling primitive v0.1.0 (https://github.com/Banyc/primitive.git?tag=v0.0.59#9d28d810) [INFO] [stderr] Compiling futures-util v0.3.33 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling tokio-util v0.7.19 [INFO] [stderr] Compiling mux v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 44.14s [INFO] running `Command { std: "docker" "inspect" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b", 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" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling zerocopy v0.8.56 [INFO] [stderr] Compiling futures-channel v0.3.33 [INFO] [stderr] Compiling memchr v2.8.3 [INFO] [stderr] Compiling tokio v1.53.1 [INFO] [stderr] Compiling futures-io v0.3.33 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling colorchoice v1.0.5 [INFO] [stderr] Compiling anstyle-parse v1.0.0 [INFO] [stderr] Compiling anstyle v1.0.14 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling clap_derive v4.6.4 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling clap_builder v4.6.6 [INFO] [stderr] Compiling pin-project-internal v1.1.13 [INFO] [stderr] Compiling reusable-box-future v0.2.0 [INFO] [stderr] Compiling log v0.4.33 [INFO] [stderr] Compiling futures-util v0.3.33 [INFO] [stderr] Compiling pin-project v1.1.13 [INFO] [stderr] Compiling clap v4.6.6 [INFO] [stderr] Compiling futures-executor v0.3.33 [INFO] [stderr] Compiling futures v0.3.33 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.7 [INFO] [stderr] Compiling tokio-util v0.7.19 [INFO] [stderr] Compiling async_async_io v0.2.3 [INFO] [stderr] Compiling file_transfer v0.1.0 (https://github.com/Banyc/file_transfer.git?tag=v0.0.7#8226a631) [INFO] [stderr] Compiling mux v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling async_smux v0.3.4 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 25s [INFO] running `Command { std: "docker" "inspect" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b", 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" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mux-80615358d9529ff8) [INFO] [stdout] [INFO] [stdout] running 256 tests [INFO] [stdout] test central_io::encoder::tests::mode_off_force_close_write_uses_stock_frame_and_clears_offset_state ... ok [INFO] [stdout] test central_io::encoder::tests::mode_on_wire_has_offset ... ok [INFO] [stdout] test central_io::encoder::tests::mode_off_wire_identical ... ok [INFO] [stdout] test central_io::encoder::tests::vectored_partial_writes_output_exact_bytes ... ok [INFO] [stdout] test central_io::encoder::tests::recycled_stream_id_restarts_at_offset_zero ... ok [INFO] [stdout] test central_io::scheduler::tests::closing_sensitive_stream_lets_bulk_drain_at_bulk_cap ... ok [INFO] [stdout] test central_io::scheduler::tests::equal_size_messages_rotate_round_robin ... ok [INFO] [stdout] test central_io::encoder::tests::non_vectored_writer_uses_fallback_and_outputs_exact_bytes ... ok [INFO] [stdout] test central_io::encoder::tests::reassembly_frame_total_le_64kib ... ok [INFO] [stdout] test central_io::scheduler::tests::fresh_stream_is_latency_sensitive_caps_at_quantum ... ok [INFO] [stdout] test central_io::scheduler::tests::exactly_bulk_cap_head_ramps_mid_transfer ... ok [INFO] [stdout] test central_io::encoder::tests::non_vectored_data_frame_coalesces_into_single_write ... ok [INFO] [stdout] test central_io::encoder::tests::body_larger_than_max_creates_multiple_frames_no_first_chunk_repeat ... ok [INFO] [stdout] test central_io::scheduler::tests::new_stream_restores_small_caps_over_ramped_bulk_stream ... ok [INFO] [stdout] test central_io::scheduler::tests::only_bulk_stream_caps_at_bulk_cap ... ok [INFO] [stdout] test central_io::scheduler::tests::priority_size_open_and_fin_are_zero ... ok [INFO] [stdout] test central_io::scheduler::tests::round_robin_distance_monotonic_from_start ... ok [INFO] [stdout] test central_io::scheduler::tests::same_stream_order_preserved_with_interleaving ... ok [INFO] [stdout] test central_io::scheduler::tests::small_ready_stream_preempts_cached_large_tail ... ok [INFO] [stdout] test central_io::scheduler::tests::smaller_ready_data_emitted_before_larger ... ok [INFO] [stdout] test control::reassembly_tests::a_peer_stream_does_not_reserve_the_server_s_own_id ... ok [INFO] [stdout] test central_io::scheduler::tests::sole_bulk_head_escapes_latency_caps_mid_transfer ... ok [INFO] [stdout] test central_io::scheduler::tests::clone_drop_per_send_does_not_strand_receiver ... ok [INFO] [stdout] test central_io::scheduler::tests::mixed_small_and_medium_stream_keeps_bulk_capped ... ok [INFO] [stdout] test central_io::encoder::tests::large_write_all_reaches_peer_intact ... ok [INFO] [stdout] test central_io::scheduler::tests::large_data_head_reassembles_after_splitting ... ok [INFO] [stdout] test control::reassembly_tests::a_stream_the_accepter_cannot_take_is_not_left_in_the_table ... ok [INFO] [stdout] test control::reassembly_tests::a_wrapped_allocator_never_hands_out_a_live_stream_s_id ... ok [INFO] [stdout] test control::reassembly_tests::close_before_open_surfaces_accept_msg_and_preserves_eof ... ok [INFO] [stdout] test control::reassembly_tests::closewrite_final_offset_completes_stream_despite_reordering ... ok [INFO] [stdout] test control::reassembly_tests::concurrent_stream_limit_rejects_local_and_peer_opens ... ok [INFO] [stdout] test control::reassembly_tests::data_before_open_implicitly_creates_stream ... ok [INFO] [stdout] test control::reassembly_tests::data_before_open_surfaces_accept_msg_once ... ok [INFO] [stdout] test control::reassembly_tests::duplicate_close_write_is_idempotent ... ok [INFO] [stdout] test control::reassembly_tests::duplicate_mode_off_close_write_is_idempotent ... ok [INFO] [stdout] test control::reassembly_tests::duplicate_peer_open_cannot_replace_a_live_stream ... ok [INFO] [stdout] test control::reassembly_tests::empty_data_frame_is_not_forwarded_as_eof ... ok [INFO] [stdout] test central_io::scheduler::tests::must_bulk_reverts_after_bounded_small_sends ... ok [INFO] [stdout] test control::reassembly_tests::a_repeated_reassembly_error_emits_one_close_read ... ok [INFO] [stdout] test control::reassembly_tests::a_stalled_reader_does_not_freeze_the_other_streams ... ok [INFO] [stdout] test control::reassembly_tests::far_final_offset_accepted_and_completes ... ok [INFO] [stdout] test control::reassembly_tests::peer_open_cannot_replace_a_live_local_stream ... ok [INFO] [stdout] test control::reassembly_tests::local_write_close_never_uses_mux_control_lane ... ok [INFO] [stdout] test control::reassembly_tests::reassembly_error_teardown_is_idempotent ... ok [INFO] [stdout] test control::reassembly_tests::stray_frame_for_a_local_id_fabricates_no_stream ... ok [INFO] [stdout] test control::reassembly_tests::local_read_close_uses_mux_control_lane_once ... ok [INFO] [stdout] test control::reassembly_tests::stream_retired_after_reassembly_error ... ok [INFO] [stdout] test control::reassembly_tests::streams_pass_each_other ... ok [INFO] [stdout] test dual_lane::tests::a_write_after_a_local_close_is_not_a_dead_lane ... ok [INFO] [stdout] test control::reassembly_tests::stream_limit_bounds_pending_close_state ... ok [INFO] [stdout] test control::reassembly_tests::full_stream_read_queue_resets_only_that_stream ... ok [INFO] [stdout] test dual_lane::tests::auto_reader_eof_stays_eof_after_a_clean_close ... ok [INFO] [stdout] test dual_lane::tests::auto_write_reports_the_real_open_failure ... ok [INFO] [stdout] test dual_lane::tests::dual_accept_is_cancel_safe ... ok [INFO] [stdout] test dual_lane::tests::failed_open_on_dead_lane ... ok [INFO] [stdout] test dual_lane::tests::aggregate_dual_lane_result_preserves_trigger_context ... ok [INFO] [stdout] test dual_lane::tests::group_mismatch_rejected ... ok [INFO] [stdout] test dual_lane::tests::first_receive_deadline_widens_after_birth_heartbeat ... ok [INFO] [stdout] test control::reassembly_tests::multi_frame_write_reassembles_by_offset ... ok [INFO] [stdout] test dual_lane::tests::hello_bad_class_rejected ... ok [INFO] [stdout] test dual_lane::tests::hello_short_read ... ok [INFO] [stdout] test dual_lane::tests::hello_round_trip ... ok [INFO] [stdout] test dual_lane::tests::matching_group_still_pairs ... ok [INFO] [stdout] test dual_lane::tests::nonce_mismatch_rejected ... ok [INFO] [stdout] test dual_lane::tests::acceptor_hello_deadline_expires ... ok [INFO] [stdout] test dual_lane::tests::killed_liveness_propagates_to_open ... ok [INFO] [stdout] test central_io::reader::tests::first_receive_ready_waits_for_complete_open_frame ... ok [INFO] [stdout] test control::reassembly_tests::a_reader_a_queue_behind_still_gets_the_end_of_its_stream ... ok [INFO] [stdout] test dual_lane::tests::open_auto_at_threshold_is_interactive ... ok [INFO] [stdout] test dual_lane::tests::paired_supervised_kills_pair_on_lane_death ... ok [INFO] [stdout] test dual_lane::tests::open_auto_vectored_small_total_interactive ... ok [INFO] [stdout] test fair_queue::tests::a_cancelled_open_is_not_announced ... ok [INFO] [stdout] test control::reassembly_tests::reassembly_burst_uses_hard_headroom_without_blocking_control ... ok [INFO] [stdout] test lane_hello::tests::all_zero_group_token_round_trips ... ok [INFO] [stdout] test fair_queue::tests::open_send_close ... ok [INFO] [stdout] test dual_lane::tests::hello_deadline_returns_despite_pending_shutdown ... ok [INFO] [stdout] test lane_hello::tests::lane_hello_error_maps_to_io_error ... ok [INFO] [stdout] test lane_hello::tests::truncation_fails_gracefully_at_every_byte_boundary ... ok [INFO] [stdout] test lane_message::tests::cancelled_send_releases_message_permit ... ok [INFO] [stdout] test lane_message::tests::large_message_routes_bulk ... ok [INFO] [stdout] test lane_message::tests::ordered_buffered_messages_drain_after_lanes_die ... ok [INFO] [stdout] test lane_message::tests::message_admission_reserve_waits_then_completes ... ok [INFO] [stdout] test dual_lane::tests::open_auto_small_goes_interactive ... ok [INFO] [stdout] test dual_lane::tests::open_auto_is_sticky ... ok [INFO] [stdout] test lane_message::tests::oversized_payload_rejected ... ok [INFO] [stdout] test lane_message::tests::ordered_reorder_across_gap ... ok [INFO] [stdout] test lane_message::tests::ordered_force_advance_keeps_all_buffered_messages ... ok [INFO] [stdout] test lane_message::tests::round_trip_ordered ... ok [INFO] [stdout] test lane_message::tests::recv_reports_eof_repeatedly_instead_of_panicking ... ok [INFO] [stdout] test lane_message::tests::small_message_routes_interactive ... ok [INFO] [stdout] test lane_message::tests::ordered_force_advance_on_full_buffer ... ok [INFO] [stdout] test lane_message::tests::the_last_sequence_number_does_not_wrap_the_cursor ... ok [INFO] [stdout] test lane_message::tests::unordered_concurrent_messages ... ok [INFO] [stdout] test migration_api::tests::a_failed_finalize_is_not_retried_behind_the_caller ... ok [INFO] [stdout] test migration_api::tests::a_repeated_gen0_releases_its_waiter_instead_of_parking_the_accepter ... ok [INFO] [stdout] test migration_api::tests::a_dead_old_session_after_a_rebind_does_not_abort_the_stream ... ok [INFO] [stdout] test lane_message::tests::round_trip_unordered ... ok [INFO] [stdout] test migration_api::tests::close_during_migration ... ok [INFO] [stdout] test migration_api::tests::close_with_final_marker_gives_clean_eof ... ok [INFO] [stdout] test control::reassembly_tests::a_reader_that_overruns_its_queue_still_reaches_an_end ... ok [INFO] [stdout] test migration_api::tests::close_with_finalize_after_migration ... ok [INFO] [stdout] test migration_api::tests::an_unclaimed_gen0_is_eventually_let_go ... ok [INFO] [stdout] test migration_api::tests::demote_streak ... ok [INFO] [stdout] test migration_api::tests::add_accepter_reaps_finished_accepters ... ok [INFO] [stdout] test migration_api::tests::concurrent_duplex_streams_do_not_cross_their_responses ... ok [INFO] [stdout] test migration_api::tests::demotion_respects_cooldown ... ok [INFO] [stdout] test migration_api::tests::dropping_a_writer_outside_the_runtime_does_not_panic ... ok [INFO] [stdout] test lane_message::tests::a_length_prefix_alone_does_not_allocate_its_payload ... ok [INFO] [stdout] test migration_api::tests::duplex_client_reads_across_forced_migration ... ok [INFO] [stdout] test migration_api::tests::dropping_a_writer_does_not_open_a_final_generation ... ok [INFO] [stdout] test migration_api::tests::duplex_client_reads_peer_bytes_on_gen0 ... ok [INFO] [stdout] test migration_api::tests::duplex_response_migrates_independently_with_clean_eof ... ok [INFO] [stdout] test migration_api::tests::duplex_bidirectional_migration_integrity ... ok [INFO] [stdout] test migration_api::tests::finalize_no_data_no_panic ... ok [INFO] [stdout] test migration_api::tests::force_migrate_from_pending_open ... ok [INFO] [stdout] test migration_api::tests::duplex_response_without_migration_needs_final_for_clean_eof ... ok [INFO] [stdout] test migration_api::tests::force_migrate_manual ... ok [INFO] [stdout] test migration_api::tests::gaming_pattern_big_sync_then_small_deltas ... ok [INFO] [stdout] test migration_api::tests::duplex_multi_mb_integrity_bidirectional ... ok [INFO] [stdout] test migration_api::tests::migrating_capable_accepter_passes_plain_streams ... ok [INFO] [stdout] test migration_api::tests::migrating_only_accepter_discards_empty_and_truncated_streams ... ok [INFO] [stdout] test migration_api::tests::migrating_capable_accepter_preserves_short_plain_stream ... ok [INFO] [stdout] test migration_api::tests::migrating_stream_concurrent_basic ... ok [INFO] [stdout] test migration_api::tests::demotion_after_cooldown_expires ... ok [INFO] [stdout] test migration_api::tests::mirrored_classifier_tracks_bulk_ratio ... ok [INFO] [stdout] test migration_api::tests::migration_during_peer_stall ... ok [INFO] [stdout] test migration_api::tests::promote_is_eager_not_cooled ... ok [INFO] [stdout] test migration_api::tests::many_streams_migrating_and_rebinding_at_once_keep_their_own_bytes ... ok [INFO] [stdout] test migration_api::tests::rebind_mid_stream_is_lossless ... ok [INFO] [stdout] test migration_api::tests::response_final_crossing_shared_feed_closes_cleanly ... ok [INFO] [stdout] test migration_api::tests::response_router_shutdown_empties_its_driver ... ok [INFO] [stdout] test migration_api::tests::rebind_revives_writer_after_open_failure ... ok [INFO] [stdout] test migration_api::tests::multi_mb_integrity_across_many_forced_migrations ... ok [INFO] [stdout] test migration_api::tests::shared_feed_second_accepter_splices_byte_exact ... ok [INFO] [stdout] test migration_api::tests::silent_substreams_do_not_block_accepting_others ... ok [INFO] [stdout] test migration_api::tests::simultaneous_bidirectional_migration ... ok [INFO] [stdout] test migration_api::tests::superseded_generations_release_their_readers ... ok [INFO] [stdout] test dual_lane::tests::open_auto_large_goes_bulk ... ok [INFO] [stdout] test migration_wire::tests::a_duplicate_orphan_generation_does_not_replace_the_real_one ... ok [INFO] [stdout] test migration_wire::tests::an_expired_orphan_is_still_adopted_by_its_own_gen0 ... ok [INFO] [stdout] test migration_wire::tests::bad_magic_rejected ... ok [INFO] [stdout] test migration_wire::tests::clean_close_via_final_marker ... ok [INFO] [stdout] test migration_wire::tests::corrupt_header_rejected_on_read ... ok [INFO] [stdout] test migration_wire::tests::dispatcher_drop_without_final_is_immediate_broken_pipe ... ok [INFO] [stdout] test migration_wire::tests::duplicate_gen0_is_dropped_not_panicked ... ok [INFO] [stdout] test migration_wire::tests::duplicate_generation_rejected ... ok [INFO] [stdout] test migration_wire::tests::eof_barrier_gen1_blocked_until_gen0_eof ... ok [INFO] [stdout] test migration_wire::tests::eof_barrier_holds_in_poll_read_with_successor_queued_and_ready ... ok [INFO] [stdout] test migration_api::tests::write_only_open_migrating_drops_reader_unchanged ... ok [INFO] [stdout] test migration_wire::tests::final_orphan_payload_is_validated_in_order ... ok [INFO] [stdout] test migration_wire::tests::final_with_payload_rejected ... ok [INFO] [stdout] test migration_wire::tests::gen0_final_then_reuse_receives_gen1 ... ok [INFO] [stdout] test migration_wire::tests::generation_chain_final_header ... ok [INFO] [stdout] test migration_wire::tests::generation_chain_returns_generation_number ... ok [INFO] [stdout] test migration_wire::tests::generation_chain_writes_and_reads_header ... ok [INFO] [stdout] test migration_wire::tests::generations_after_a_final_are_refused ... ok [INFO] [stdout] test migration_wire::tests::incarnation_stale_reader_drop_does_not_kill_new_reader ... ok [INFO] [stdout] test migration_wire::tests::no_generations_flushed_after_final ... ok [INFO] [stdout] test migration_wire::tests::one_streams_orphans_do_not_refuse_anothers ... ok [INFO] [stdout] test migration_wire::tests::orphan_cap_does_not_kill_the_splice_driver ... ok [INFO] [stdout] test migration_wire::tests::orphan_entries_removed_on_gen0_arrival ... ok [INFO] [stdout] test migration_wire::tests::orphan_ttl_reaping_frees_capacity ... ok [INFO] [stdout] test migration_wire::tests::orphans_expire_without_another_orphan_to_trigger_the_reap ... ok [INFO] [stdout] test migration_api::tests::the_first_registration_for_a_gen0_owns_it ... ok [INFO] [stdout] test migration_wire::tests::pop_pending_returns_in_generation_order ... ok [INFO] [stdout] test migration_wire::tests::redelivered_generation_does_not_wedge_the_stream ... ok [INFO] [stdout] test migration_wire::tests::resume_header_final_flag ... ok [INFO] [stdout] test migration_wire::tests::pending_generation_cap_retires_only_the_offending_stream ... ok [INFO] [stdout] test migration_wire::tests::resume_header_response_flag ... ok [INFO] [stdout] test migration_wire::tests::resume_header_round_trip ... ok [INFO] [stdout] test migration_api::tests::closing_a_never_announced_stream_tells_the_peer_nothing ... ok [INFO] [stdout] test migration_wire::tests::splice_driver_rejects_generations_beyond_holdback ... ok [INFO] [stdout] test migration_wire::tests::successor_handoff_live_writer_only_no_residual ... ok [INFO] [stdout] test migration_wire::tests::too_many_orphans_rejected ... ok [INFO] [stdout] test migration_wire::tests::splice_stream_cap_refuses_new_logical_streams ... ok [INFO] [stdout] test migration_api::tests::silent_substreams_do_not_block_the_response_router ... ok [INFO] [stdout] test migration_wire::tests::too_many_pending_generations_rejected ... ok [INFO] [stdout] test migration_wire::tests::writer_drop_yields_broken_pipe_after_deadline ... ok [INFO] [stdout] test migration_wire::tests::unknown_flag_bits_rejected ... ok [INFO] [stdout] test migration_wire::tests::zero_length_read_keeps_the_current_generation ... ok [INFO] [stdout] test protocol::test_close_write_ext_round_trip ... ok [INFO] [stdout] test protocol::test_data_header ... ok [INFO] [stdout] test protocol::test_data_header_ext_round_trip ... ok [INFO] [stdout] test protocol::test_offset_less_wraparound ... ok [INFO] [stdout] test protocol::test_header_decode_rejects_reserved_codes ... ok [INFO] [stdout] test reassembly::reassembly_tests::a_reassembly_protocol_error_is_reported_through_tracing ... ok [INFO] [stdout] test reassembly::reassembly_tests::duplicate_and_overlapping_ranges_dropped_idempotently ... ok [INFO] [stdout] test reassembly::reassembly_tests::far_final_offset_is_accepted_not_rejected ... ok [INFO] [stdout] test reassembly::reassembly_tests::final_offset_may_cross_wire_wrap_within_window ... ok [INFO] [stdout] test reassembly::reassembly_tests::frame_for_later_offset_held_until_gap_fills ... ok [INFO] [stdout] test reassembly::reassembly_tests::offset_before_the_start_of_the_stream_is_rejected ... ok [INFO] [stdout] test lane_message::tests::recv_propagates_panic_from_a_read_task - should panic ... ok [INFO] [stdout] test migration_wire::tests::successor_handoff_drives_pending_then_ready_race_with_live_writer ... ok [INFO] [stdout] test migration_api::tests::promote_before_write ... ok [INFO] [stdout] test reassembly::reassembly_tests::successor_overlap_is_rejected ... ok [INFO] [stdout] test reassembly::reassembly_tests::wraparound_offset_comparison ... ok [INFO] [stdout] test reassembly::reassembly_tests::wraparound_pending_order_uses_absolute_epoch ... ok [INFO] [stdout] test migration_wire::tests::final_orphan_after_gap_does_not_close_early ... ok [INFO] [stdout] test reassembly::reassembly_tests::reorder_buffer_bound_kills_stream_not_session ... ok [INFO] [stdout] test session::tests::join_central_io_reader_cancellation_panics ... ok [INFO] [stdout] test session::tests::join_central_io_writer_cancellation_panics ... ok [INFO] [stdout] test session::tests::join_control_cancellation_panics ... ok [INFO] [stdout] test session::tests::join_central_io_writer_panic_is_resumed ... ok [INFO] [stdout] test session::tests::join_central_io_reader_panic_is_resumed ... ok [INFO] [stdout] test session::tests::join_control_panic_is_resumed ... ok [INFO] [stdout] test splice_feed::tests::closed_register_channel_is_returned_to_await_gene ... ok [INFO] [stdout] test splice_feed::tests::dropping_the_router_aborts_its_children ... ok [INFO] [stdout] test session::tests::join_control_empty_is_task_stopped ... ok [INFO] [stdout] test stream::reader::tests::draining_below_soft_limit_renews_the_grace_period ... ok [INFO] [stdout] test session::tests::reconnection_reports_the_latest_failure ... ok [INFO] [stdout] test splice_feed::tests::splice_child_panic_propagates_through_the_supervisor - should panic ... ok [INFO] [stdout] test stream::reader::tests::first_terminal_owns_the_reserved_slot_even_when_the_queue_is_saturated ... ok [INFO] [stdout] test stream::reader::tests::sustained_soft_overload_resets_on_the_next_dispatch_after_grace ... ok [INFO] [stdout] test stream::reader::tests::soft_limit_spills_into_headroom_without_waiting ... ok [INFO] [stdout] test stream::reader::tests::hard_limit_resets_immediately_even_inside_the_grace_period ... ok [INFO] [stdout] test stream::writer::tests::poll_write_stages_at_most_staging_cap ... ok [INFO] [stdout] test stream::writer::tests::poll_write_vectored_caps_across_slice_boundary ... ok [INFO] [stdout] test stream::writer::tests::poll_write_vectored_stages_slices_as_one_message ... ok [INFO] [stdout] test task_scope::tests::a_child_panic_that_beat_cancellation_still_cascades - should panic ... ok [INFO] [stdout] test task_scope::tests::cancellation_requested_by_the_owner_is_expected ... ok [INFO] [stdout] test traffic_class::tests::classifier_needs_min_observations ... ok [INFO] [stdout] test traffic_class::tests::classifier_tracks_bulk_ratio ... ok [INFO] [stdout] test stream::tests::duplicate_closes_coalesce_into_one_notification ... ok [INFO] [stdout] test traffic_class::tests::demote_after_streak_first_migration_immediate ... ok [INFO] [stdout] test traffic_class::tests::demote_blocked_while_history_reads_bulk ... ok [INFO] [stdout] test traffic_class::tests::demote_respects_cooldown_then_fires ... ok [INFO] [stdout] test traffic_class::tests::huge_write_promotes_immediately ... ok [INFO] [stdout] test traffic_class::tests::large_write_resets_demote_streak ... ok [INFO] [stdout] test traffic_class::tests::migrating_state_records_but_never_decides ... ok [INFO] [stdout] test traffic_class::tests::migration_decisions_carry_their_reason ... ok [INFO] [stdout] test traffic_class::tests::no_promote_on_small_writes ... ok [INFO] [stdout] test traffic_class::tests::promote_respects_cooldown ... ok [INFO] [stdout] test traffic_class::tests::ratio_promotes_after_min_observations ... ok [INFO] [stdout] test traffic_class::tests::single_moderate_write_does_not_promote ... ok [INFO] [stdout] test traffic_class::tests::threshold_boundary_is_exclusive ... ok [INFO] [stdout] test udp_mux::tests::a_writer_is_poisoned_after_a_non_interrupted_error ... ok [INFO] [stdout] test traffic_class::tests::coalescing_artifacts_do_not_flap ... ok [INFO] [stdout] test udp_mux::tests::cancel_mid_prefix_recovers_the_partial_datagram ... ok [INFO] [stdout] test udp_mux::tests::cancel_mid_send_does_not_corrupt_the_next_datagram ... ok [INFO] [stdout] test udp_mux::tests::eof_after_a_complete_datagram_is_a_clean_close ... ok [INFO] [stdout] test udp_mux::tests::eof_after_full_length_prefix_but_before_payload_is_truncation ... ok [INFO] [stdout] test udp_mux::tests::cancel_mid_payload_recovers_the_partial_datagram ... ok [INFO] [stdout] test udp_mux::tests::eof_between_datagrams_is_a_clean_close ... ok [INFO] [stdout] test udp_mux::tests::eof_mid_length_prefix_is_truncation_not_a_clean_close ... ok [INFO] [stdout] test udp_mux::tests::eof_mid_payload_is_truncation_not_a_clean_close ... ok [INFO] [stdout] test udp_mux::tests::interrupted_writes_are_retried_without_poisoning ... ok [INFO] [stdout] test udp_mux::tests::preserves_empty_and_non_empty_datagram_boundaries ... ok [INFO] [stdout] test udp_mux::tests::eof_between_payload_and_tail_bytes_is_truncation ... ok [INFO] [stdout] test udp_mux::tests::truncation_discards_only_the_current_datagram_tail ... ok [INFO] [stdout] test udp_mux::tests::rejects_a_datagram_larger_than_udp_can_carry ... ok [INFO] [stdout] test reassembly::reassembly_tests::reorder_buffer_reassembles_any_arrival_order ... ok [INFO] [stdout] test reassembly::reassembly_tests::reorder_buffer_survives_arbitrary_peer_frames ... ok [INFO] [stdout] test lane_message::tests::atomic_admission_backpressure_limits_inflight ... ok [INFO] [stdout] test reassembly::reassembly_tests::any_reordering_of_a_stream_reassembles_it_exactly ... ok [INFO] [stdout] test reassembly::reassembly_tests::a_peer_that_reframes_the_stream_never_corrupts_it ... ok [INFO] [stdout] test stream::tests::close_notifications_survive_a_large_burst ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 256 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.74s [INFO] [stdout] [INFO] [stderr] Running tests/stream_writer.rs (/opt/rustwide/target/debug/deps/stream_writer-37703d6838267650) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test peer_close_read_shutdown_error_still_leaves_mux_usable ... ok [INFO] [stdout] test manual_shutdown_reaches_peer ... ok [INFO] [stdout] test drop_writer_does_not_break_peer ... ok [INFO] [stdout] test reader_close_does_not_truncate_opposite_direction_data ... ok [INFO] [stdout] test concurrent_open_then_write_payload_arrives ... ok [INFO] [stdout] test queued_payload_arrives_before_eof ... ok [INFO] [stderr] Doc-tests mux [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [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] running `Command { std: "docker" "inspect" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b", kill_on_drop: false }` [INFO] [stdout] 3f616ff7553f069e0e056789802bb58c9c7980eee415c4e95996c1ae1228e32b