[INFO] fetching crate dekopon-model 0.46.1...
[INFO] testing dekopon-model-0.46.1 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate dekopon-model 0.46.1 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate dekopon-model 0.46.1
[INFO] finished tweaking crates.io crate dekopon-model 0.46.1
[INFO] tweaked toml for crates.io crate dekopon-model 0.46.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate dekopon-model 0.46.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 dekopon-model 0.46.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 dekopon-model-token-governor v0.46.1
[INFO] [stderr]   Downloaded dekopon-core v0.46.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec
[INFO] running `Command { std: "docker" "start" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec", 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" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec" "/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" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec", 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" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling syn v3.0.5
[INFO] [stderr]    Compiling cc v1.4.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling base64 v0.23.1
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling rustix v1.1.5
[INFO] [stderr]    Compiling http-body-util v0.1.4
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling ureq-proto v0.6.4
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]    Compiling thiserror-impl v2.0.21
[INFO] [stderr]    Compiling futures-util v0.3.34
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling thiserror v2.0.21
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling tokio-macros v2.7.1
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling serde_yaml_ng v0.10.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling dekopon-core v0.46.1
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling dekopon-model-token-governor v0.46.1
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.19
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling h2 v0.4.16
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling hyper v1.11.1
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling ureq v3.4.2
[INFO] [stderr]    Compiling hyper-util v0.1.21
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling dekopon-model v0.46.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 31s
[INFO] running `Command { std: "docker" "inspect" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec", 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" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec" "/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 tracing v0.1.44
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling regex-automata v0.4.16
[INFO] [stderr]    Compiling ureq-proto v0.6.4
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling h2 v0.4.16
[INFO] [stderr]    Compiling dekopon-model-token-governor v0.46.1
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling hyper v1.11.1
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling ureq v3.4.2
[INFO] [stderr]    Compiling hyper-util v0.1.21
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling dekopon-model v0.46.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 34s
[INFO] running `Command { std: "docker" "inspect" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec", 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" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec" "/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.18s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/dekopon_model-30ad3a74fcaee99e)
[INFO] [stdout] 
[INFO] [stdout] running 184 tests
[INFO] [stdout] test asset::tests::descriptor_admission_checks_fstat_and_the_exact_ceiling ... ok
[INFO] [stdout] test asset::tests::an_unreadable_descriptor_is_a_sanitized_io_failure ... ok
[INFO] [stdout] test asset::tests::reclaim_unlinks_disk_and_failed_unlink_preserves_the_owner ... ok
[INFO] [stdout] test asset::tests::replacing_the_name_with_a_symlink_cannot_redirect_a_descriptor_read ... ok
[INFO] [stdout] test asset::tests::oversize_and_partial_write_failure_leave_no_files ... ok
[INFO] [stdout] test chatgpt::tests::a_cache_key_adds_one_field_and_disturbs_nothing_else ... ok
[INFO] [stdout] test chatgpt::tests::a_malformed_access_token_reports_which_decode_failed_and_where ... ok
[INFO] [stdout] test asset::tests::decoded_limit_matches_the_shared_contract ... ok
[INFO] [stdout] test chatgpt::tests::a_repeated_system_message_silently_doubles_the_instructions ... ok
[INFO] [stdout] test chatgpt::tests::a_relative_xdg_config_home_is_refused_rather_than_written_into_the_cwd ... ok
[INFO] [stdout] test chatgpt::tests::a_request_without_a_cache_key_carries_no_cache_field_at_all ... ok
[INFO] [stdout] test asset::tests::pathless_descriptors_are_reusable_and_positional_across_invocations ... ok
[INFO] [stdout] test chatgpt::tests::a_relative_credential_path_is_refused_by_name ... ok
[INFO] [stdout] test asset::tests::scratch_is_private ... ok
[INFO] [stdout] test chatgpt::tests::a_credential_file_reports_its_own_expiry_without_a_network_call ... ok
[INFO] [stdout] test asset::tests::truncated_files_fail_and_unlinked_files_still_read_the_owned_descriptor ... ok
[INFO] [stdout] test chatgpt::tests::a_callback_that_breaks_abandons_the_turn_and_reports_the_interruption ... ok
[INFO] [stdout] test chatgpt::tests::a_text_only_user_message_keeps_its_single_input_text_part ... ok
[INFO] [stdout] test chatgpt::tests::a_system_message_anywhere_in_history_rewrites_the_front_of_the_request ... ok
[INFO] [stdout] test chatgpt::tests::a_usage_free_completion_leaves_usage_absent ... ok
[INFO] [stdout] test asset::tests::clones_and_concurrent_readers_keep_one_file_until_last_drop ... ok
[INFO] [stdout] test chatgpt::tests::an_appended_turn_extends_the_request_input_and_leaves_its_prefix_untouched ... ok
[INFO] [stdout] test chatgpt::tests::a_missing_credential_file_refuses_to_open ... ok
[INFO] [stdout] test chatgpt::tests::an_empty_xdg_config_home_falls_through_to_home ... ok
[INFO] [stdout] test chatgpt::tests::every_tier_being_empty_is_the_same_as_every_tier_being_unset ... ok
[INFO] [stdout] test chatgpt::tests::every_input_item_keeps_the_shape_the_responses_api_is_sent ... ok
[INFO] [stdout] test chatgpt::tests::codex_requests_never_ask_the_provider_to_retain_the_conversation ... ok
[INFO] [stdout] test chatgpt::tests::builds_codex_responses_payload_with_native_items ... ok
[INFO] [stdout] test chatgpt::tests::attachments_become_responses_input_parts ... ok
[INFO] [stdout] test chatgpt::tests::export_rejects_an_incomplete_credential_file ... ok
[INFO] [stdout] test chatgpt::tests::export_rejects_a_malformed_credential_file ... ok
[INFO] [stdout] test chatgpt::tests::extracts_chatgpt_account_from_access_token ... ok
[INFO] [stdout] test chatgpt::tests::export_without_a_login_fails_with_the_login_instruction ... ok
[INFO] [stdout] test chatgpt::tests::logout_removes_only_dekopons_selected_credential_file ... ok
[INFO] [stdout] test chatgpt::tests::export_debug_rendering_stays_redacted ... ok
[INFO] [stdout] test chatgpt::tests::missing_credentials_point_to_the_operator_auth_command ... ok
[INFO] [stdout] test chatgpt::tests::a_rejected_refresh_grant_carries_the_oauth_code_as_a_field ... ok
[INFO] [stdout] test chatgpt::tests::parses_text_tool_calls_and_encrypted_reasoning ... ok
[INFO] [stdout] test chatgpt::tests::responses_released_history_is_explicit_but_io_failure_is_not_hidden ... ok
[INFO] [stdout] test chatgpt::tests::logout_removes_abandoned_credential_temporaries_too ... ok
[INFO] [stdout] test chatgpt::tests::a_rejected_refresh_reports_the_oauth_error_code ... ok
[INFO] [stdout] test chatgpt::tests::a_credential_another_process_rotated_is_adopted_rather_than_refreshed_again ... ok
[INFO] [stdout] test chatgpt::tests::visible_text_and_tool_calls_are_reported_while_the_turn_is_still_arriving ... ok
[INFO] [stdout] test chatgpt::tests::a_stopped_subscription_turn_is_an_interruption_rather_than_a_request_failure ... ok
[INFO] [stdout] test chatgpt::tests::an_unauthorized_turn_adopts_a_newer_stored_credential_before_retrying ... ok
[INFO] [stdout] test codex::tests::a_pre_cancelled_turn_sends_nothing ... ok
[INFO] [stdout] test chatgpt::tests::saving_sweeps_abandoned_credential_temporaries ... ok
[INFO] [stdout] test chatgpt::tests::export_returns_the_exact_bytes_a_login_would_have_written ... ok
[INFO] [stdout] test chatgpt::tests::a_rotated_credential_is_persisted_and_adopted_without_a_second_refresh ... ok
[INFO] [stdout] test chatgpt::tests::stores_credentials_without_exposing_them_in_status ... ok
[INFO] [stdout] test chatgpt::tests::a_refresh_that_cannot_lock_fails_without_spending_the_refresh_token ... ok
[INFO] [stdout] test chatgpt::tests::a_rotated_credential_is_returned_when_the_write_back_fails ... FAILED
[INFO] [stdout] test codex::tests::a_zero_client_timeout_is_a_request_error_before_credential_io ... ok
[INFO] [stdout] test codex::tests::a_reported_model_change_cannot_cross_a_bound_continuation ... ok
[INFO] [stdout] test codex::tests::an_empty_client_model_is_a_request_error_before_credential_io ... ok
[INFO] [stdout] test chatgpt::tests::subscription_model_replays_reasoning_and_correlates_tool_results ... ok
[INFO] [stdout] test codex::tests::completed_output_reconciles_calls_and_preserves_ordered_text ... ok
[INFO] [stdout] test codex::tests::a_loopback_401_is_an_authentication_error_without_refresh ... ok
[INFO] [stdout] test chatgpt::tests::the_codex_transport_sends_a_cache_key_only_when_a_caller_supplies_one ... ok
[INFO] [stdout] test codex::tests::a_second_unauthorized_response_is_not_retried ... ok
[INFO] [stdout] test chatgpt::tests::subscription_model_sends_required_headers_and_decodes_text ... ok
[INFO] [stdout] test codex::tests::an_error_without_an_event_type_is_still_a_provider_failure ... ok
[INFO] [stdout] test codex::tests::an_empty_completed_response_is_an_empty_turn ... ok
[INFO] [stdout] test codex::tests::a_public_codex_override_rejects_remote_hosts_and_invalidates_native_replay ... ok
[INFO] [stdout] test codex::tests::native_item_updates_preserve_first_seen_order_and_do_not_repeat_text ... ok
[INFO] [stdout] test codex::tests::rate_limits_retain_bounded_metadata_and_are_never_retried ... ok
[INFO] [stdout] test chatgpt::tests::a_rotated_credential_completes_the_turn_when_the_write_fails ... FAILED
[INFO] [stdout] test codex::tests::cancellation_interrupts_a_body_with_no_events_and_returns_no_turn ... ok
[INFO] [stdout] test codex::tests::refresh_refusals_exclude_access_and_refresh_credentials_from_retained_sources ... ok
[INFO] [stdout] test codex::tests::serde_error_sources_cannot_quote_a_request_credential ... ok
[INFO] [stdout] test chatgpt::tests::subscription_model_refreshes_expired_credentials_before_inference ... ok
[INFO] [stdout] test codex::tests::codex_trace_records_one_exchange_and_never_invents_usage_or_tool_only_ttft ... ok
[INFO] [stdout] test codex::tests::unknown_event_types_are_ignored_but_their_failures_are_not ... ok
[INFO] [stdout] test control::tests::a_zero_timeout_is_refused ... ok
[INFO] [stdout] test diagnostic::tests::a_pretty_printed_provider_error_keeps_its_message ... ok
[INFO] [stdout] test diagnostic::tests::a_truncated_body_drops_a_trailing_partial_credential ... ok
[INFO] [stdout] test codex::tests::stream_error_metadata_excludes_both_credentials_after_a_resend ... ok
[INFO] [stdout] test diagnostic::tests::stripping_controls_precedes_redaction ... ok
[INFO] [stdout] test diagnostic::tests::rebuilding_a_serde_source_does_not_reconstruct_the_other_credential ... ok
[INFO] [stdout] test error::tests::provider_failure_display_omits_option_debug_wrappers ... ok
[INFO] [stdout] test diagnostic::tests::diagnostics_are_capped_at_a_character_boundary ... ok
[INFO] [stdout] test diagnostic::tests::overlapping_current_and_previous_credentials_are_removed_before_truncation ... ok
[INFO] [stdout] test http::tests::a_long_error_body_is_truncated ... ok
[INFO] [stdout] test loopback::tests::only_literal_ipv4_or_ipv6_loopback_over_plain_http_is_accepted ... ok
[INFO] [stdout] test openai::tests::a_blank_cache_key_is_dropped_rather_than_routed ... ok
[INFO] [stdout] test codex::tests::unauthorized_diagnostics_and_metadata_exclude_initial_and_rotated_credentials ... ok
[INFO] [stdout] test http::tests::a_short_refusal_records_all_consumed_response_bytes ... ok
[INFO] [stdout] test codex::tests::unfinished_call_arguments_never_become_an_executable_turn ... ok
[INFO] [stdout] test codex::tests::session_bridges_share_a_client_but_never_a_cancellation_receiver ... ok
[INFO] [stdout] test codex::tests::provider_protocol_and_transport_failures_stay_distinct ... ok
[INFO] [stdout] test codex::tests::native_continuation_cannot_cross_configured_clients ... ok
[INFO] [stdout] test openai::tests::a_callback_that_breaks_abandons_the_streamed_turn_rather_than_shortening_it ... ok
[INFO] [stdout] test openai::tests::a_multimodal_message_reports_parts_rather_than_partial_text ... ok
[INFO] [stdout] test openai::tests::a_chat_request_carries_a_cache_key_only_when_one_is_set ... ok
[INFO] [stdout] test openai::tests::a_failed_completion_reports_the_endpoints_own_error_body ... ok
[INFO] [stdout] test openai::tests::accepts_object_arguments_from_compatible_endpoints ... ok
[INFO] [stdout] test openai::tests::a_text_only_message_still_serializes_to_a_bare_string ... ok
[INFO] [stdout] test openai::tests::a_streamed_turn_equals_the_non_streaming_parse_of_the_same_completion ... ok
[INFO] [stdout] test openai::tests::a_streamed_turn_reports_its_text_and_tool_calls_as_they_arrive ... ok
[INFO] [stdout] test openai::tests::a_streaming_request_asks_for_usage_and_reads_the_answer_as_an_event_stream ... ok
[INFO] [stdout] test openai::tests::an_appended_turn_extends_the_chat_request_without_disturbing_its_prefix ... ok
[INFO] [stdout] test openai::tests::an_attachment_never_reaches_the_audit_transcript_as_bytes ... ok
[INFO] [stdout] test openai::tests::an_endpoint_that_ignores_stream_true_is_refused_naming_the_key_to_write ... ok
[INFO] [stdout] test openai::tests::an_attachment_serializes_as_the_data_url_it_has_always_been ... ok
[INFO] [stdout] test openai::tests::an_endpoint_with_streaming_off_gets_the_request_it_received_before_streaming_existed ... ok
[INFO] [stdout] test openai::tests::an_implementation_that_cannot_stream_answers_without_reporting_an_event ... ok
[INFO] [stdout] test control::tests::a_closed_uncancelled_sender_does_not_cancel_work ... ok
[INFO] [stdout] test openai::tests::a_body_io_failure_retains_its_transport_source_and_safe_request_id_in_both_modes ... ok
[INFO] [stdout] test openai::tests::an_unknown_tool_item_is_skipped_and_the_answer_survives ... ok
[INFO] [stdout] test openai::tests::a_foreign_native_continuation_is_refused_before_sending ... ok
[INFO] [stdout] test openai::tests::a_request_body_buffer_is_exactly_the_bytes_it_carries ... ok
[INFO] [stdout] test openai::tests::appends_chat_completions_to_api_bases ... ok
[INFO] [stdout] test openai::tests::cancellation_after_visible_output_keeps_headers_and_body_phase ... ok
[INFO] [stdout] test openai::tests::chat_completions_released_history_is_explicit_but_io_failure_is_not_hidden ... ok
[INFO] [stdout] test openai::tests::attachments_become_chat_completions_content_parts ... ok
[INFO] [stdout] test openai::tests::every_message_role_keeps_its_exact_audit_json ... ok
[INFO] [stdout] test openai::tests::compatible_refusals_never_retain_the_requests_bearer_credential ... ok
[INFO] [stdout] test openai::tests::buffered_and_streamed_200_errors_keep_codes_and_redact_credentials ... ok
[INFO] [stdout] test codex::tests::two_sessions_rejected_on_the_same_credential_rotate_once_and_both_resend_the_replacement ... ok
[INFO] [stdout] test openai::tests::both_modes_preserve_error_classes_metadata_and_single_request_counts ... ok
[INFO] [stdout] test openai::tests::protocol_failures_keep_known_sanitized_headers_and_body_phase ... ok
[INFO] [stdout] test openai::tests::refuses_bearer_tokens_over_remote_plaintext_http ... ok
[INFO] [stdout] test openai::tests::successful_text_finish_reasons_and_complete_calls_agree_across_modes ... ok
[INFO] [stdout] test openai::tests::filtered_responses_and_incomplete_tool_arguments_never_become_turns_in_either_mode ... ok
[INFO] [stdout] test openai::tests::compatible_trace_records_streamed_and_buffered_usage_without_credentials ... ok
[INFO] [stdout] test openrouter::tests::a_changed_provider_is_accepted_and_reasoning_is_still_forwarded ... ok
[INFO] [stdout] test openai::tests::malformed_responses_and_missing_choices_have_typed_protocol_causes ... ok
[INFO] [stdout] test openai::tests::compatible_cancellation_interrupts_silent_streamed_and_buffered_bodies ... ok
[INFO] [stdout] test openrouter::tests::a_turn_of_only_unknown_tool_items_completes_empty_and_counts_the_skip ... ok
[INFO] [stdout] test openrouter::tests::constructor_refusals_are_local_typed_request_errors ... ok
[INFO] [stdout] test openrouter::tests::a_reasoning_only_stream_completes_empty_and_counts_reasoning ... ok
[INFO] [stdout] test openai::tests::malformed_buffered_json_and_choice_free_streams_are_protocol_failures ... ok
[INFO] [stdout] test openrouter::tests::a_public_router_override_rejects_remote_hosts_and_invalidates_native_replay ... ok
[INFO] [stdout] test openai::tests::length_with_complete_calls_succeeds_but_missing_call_identity_and_nonobjects_fail ... ok
[INFO] [stdout] test openrouter::tests::http_200_errors_keep_numeric_codes_and_exclude_credentials_from_diagnostics_and_spans ... ok
[INFO] [stdout] test openrouter::tests::explicit_cache_marks_only_the_last_of_one_two_or_three_leading_system_messages ... ok
[INFO] [stdout] test openrouter::tests::finish_reasons_keep_complete_text_and_skip_unknown_tools_but_refuse_filtering ... ok
[INFO] [stdout] test openrouter::tests::indexed_merges_preserve_first_seen_order_and_unindexed_reasoning ... ok
[INFO] [stdout] test openrouter::tests::omitted_controls_stay_absent_and_authored_controls_map_exactly ... ok
[INFO] [stdout] test openrouter::tests::routing_cache_and_sampling_problems_are_collected_without_clamping ... ok
[INFO] [stdout] test openrouter::tests::openrouter_trace_records_requested_controls_and_native_usage_without_private_state ... ok
[INFO] [stdout] test openrouter::tests::sampling_settings_refuse_nonfinite_and_out_of_range_values ... ok
[INFO] [stdout] test openrouter::tests::socket_and_body_io_failures_stay_transport_errors_without_retry ... ok
[INFO] [stdout] test openrouter::tests::text_only_assistant_replay_omits_empty_tool_calls ... ok
[INFO] [stdout] test openrouter::tests::unknown_fields_and_types_in_the_stream_are_tolerated ... ok
[INFO] [stdout] test codex::tests::chunks_can_split_utf8_lines_and_json_without_changing_the_turn ... ok
[INFO] [stdout] test openrouter::tests::unrecognized_delta_keys_are_named_on_the_span_never_valued ... ok
[INFO] [stdout] test sse::tests::a_final_event_without_its_blank_line_still_arrives ... ok
[INFO] [stdout] test openrouter::tests::malformed_missing_terminal_and_incomplete_calls_are_protocol_errors ... ok
[INFO] [stdout] test openrouter::tests::zero_leading_system_messages_refuses_explicit_cache_before_sending ... ok
[INFO] [stdout] test openrouter::tests::refusals_have_typed_classes_and_never_retry ... ok
[INFO] [stdout] test codex::tests::total_deadline_interrupts_a_stalled_body_without_a_retry ... ok
[INFO] [stdout] test sse::tests::asynchronous_and_transcript_framing_agree_at_every_byte_boundary ... ok
[INFO] [stdout] test sse::tests::heartbeats_comments_and_event_names_are_not_payloads ... ok
[INFO] [stdout] test sse::tests::nothing_after_done_is_read ... ok
[INFO] [stdout] test sse::tests::multi_line_data_fields_are_joined_with_newlines ... ok
[INFO] [stdout] test stream::tests::a_recorded_transcript_replays_through_whichever_parser_wrote_it ... ok
[INFO] [stdout] test stream::tests::a_transcript_that_is_not_a_stream_says_so_rather_than_replaying_nothing ... ok
[INFO] [stdout] test stream::tests::cumulative_text_is_the_concatenation_of_its_deltas ... ok
[INFO] [stdout] test stream::tests::truncation_cuts_on_a_character_boundary_rather_than_a_byte_one ... ok
[INFO] [stdout] test tests::the_shared_agent_keeps_redirects_off_and_statuses_readable ... ok
[INFO] [stdout] test tests::the_shared_agent_ignores_ambient_proxy_configuration ... ok
[INFO] [stdout] test wire::tests::a_duplicated_key_is_refused ... ok
[INFO] [stdout] test wire::tests::a_messages_delta_reports_output_alone ... ok
[INFO] [stdout] test wire::tests::a_peek_refuses_what_it_cannot_route ... ok
[INFO] [stdout] test wire::tests::a_rewrite_changes_only_the_named_fields ... ok
[INFO] [stdout] test wire::tests::messages_input_includes_cache_reads_and_writes ... ok
[INFO] [stdout] test wire::tests::only_openrouter_reads_cache_writes_from_chat_usage ... ok
[INFO] [stdout] test wire::tests::responses_usage_carries_cached_input_and_reasoning ... ok
[INFO] [stdout] test sse::tests::a_long_data_line_split_across_small_chunks_is_framed_once ... ok
[INFO] [stdout] test openai::tests::interleaved_fragments_of_many_calls_merge_by_index ... ok
[INFO] [stdout] test sse::tests::an_async_stream_one_byte_over_the_ceiling_is_refused ... ok
[INFO] [stdout] test openai::tests::compatible_stream_chunks_can_split_utf8_and_json_without_changing_the_turn ... ok
[INFO] [stdout] test openai::tests::a_buffered_response_one_byte_over_the_existing_ceiling_is_refused ... ok
[INFO] [stdout] test sse::tests::a_stream_that_never_stops_is_refused_by_byte_count ... ok
[INFO] [stdout] test openrouter::tests::done_without_a_finish_reason_completes_with_no_recorded_reason ... ok
[INFO] [stdout] test wire::tests::a_body_of_a_million_keys_keeps_only_the_recorded_ones ... ok
[INFO] [stdout] test codex::tests::a_large_native_item_stream_completes_without_duplicate_replay ... ok
[INFO] [stdout] test chatgpt::tests::device_login_exchanges_and_stores_credentials ... ok
[INFO] [stdout] test openrouter::tests::cancellation_and_the_total_deadline_stop_a_silent_body_without_retry ... ok
[INFO] [stdout] test openrouter::tests::two_turns_merge_native_reasoning_and_replay_the_exact_second_request ... ok
[INFO] [stdout] test openrouter::tests::a_large_indexed_stream_completes_with_all_reasoning_and_calls ... ok
[INFO] [stdout] test openai::tests::compatible_deadlines_interrupt_silent_streamed_and_buffered_bodies_without_retry ... ok
[INFO] [stdout] test chatgpt::tests::one_dropped_poll_does_not_abort_the_device_login ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- chatgpt::tests::a_rotated_credential_is_returned_when_the_write_back_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'chatgpt::tests::a_rotated_credential_is_returned_when_the_write_back_fails' (1948) panicked at src/chatgpt.rs:2607:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Some(Rotated)
[INFO] [stdout]  right: Some(RotatedUnsaved)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x574a352544f1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x574a3526ce4a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x574a352597ac - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x574a3522b416 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x574a3524a739 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x574a3505ab90 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x574a3524aa62 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x574a3522b4c2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x574a35223d59 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x574a3522c54d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x574a3526d5ac - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x574a3526d4c3 - core[df12db4294e9bfd3]::panicking::assert_failed_inner
[INFO] [stdout]   12:     0x574a34e54d1e - core[df12db4294e9bfd3]::panicking::assert_failed::<core[df12db4294e9bfd3]::option::Option<dekopon_model[8a7b2dfe02756847]::chatgpt::RefreshOutcome>, core[df12db4294e9bfd3]::option::Option<dekopon_model[8a7b2dfe02756847]::chatgpt::RefreshOutcome>>
[INFO] [stdout]   13:     0x574a34d85b7a - dekopon_model[8a7b2dfe02756847]::chatgpt::tests::a_rotated_credential_is_returned_when_the_write_back_fails
[INFO] [stdout]   14:     0x574a34e21319 - <dekopon_model[8a7b2dfe02756847]::chatgpt::tests::a_rotated_credential_is_returned_when_the_write_back_fails::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   15:     0x574a3504de7b - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   16:     0x574a3505b4e5 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   17:     0x574a35054da4 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   18:     0x574a3505e642 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   19:     0x574a35252cb9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   20:     0x7b6b922e1dfa - <unknown>
[INFO] [stdout]   21:     0x7b6b923753d4 - clone
[INFO] [stdout]   22:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- chatgpt::tests::a_rotated_credential_completes_the_turn_when_the_write_fails stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'chatgpt::tests::a_rotated_credential_completes_the_turn_when_the_write_fails' (1945) panicked at src/chatgpt.rs:2166:9:
[INFO] [stdout] assertion `left == right` failed: the write was supposed to have failed
[INFO] [stdout]   left: "refresh-new"
[INFO] [stdout]  right: "refresh-old"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x574a352544f1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x574a3526ce4a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x574a352597ac - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x574a3522b416 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x574a3524a739 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x574a3505ab90 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x574a3524aa62 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x574a3522b4c2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x574a35223d59 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x574a3522c54d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x574a3526d5ac - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x574a3526d523 - core[df12db4294e9bfd3]::panicking::assert_failed_inner
[INFO] [stdout]   12:     0x574a34e55457 - core[df12db4294e9bfd3]::panicking::assert_failed::<&alloc[2182bb758b4b3781]::string::String, &str>
[INFO] [stdout]   13:     0x574a34d6e5d2 - dekopon_model[8a7b2dfe02756847]::chatgpt::tests::a_rotated_credential_completes_the_turn_when_the_write_fails::{closure#0}
[INFO] [stdout]   14:     0x574a34e5e611 - <tokio[a36722976576618a]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>
[INFO] [stdout]   15:     0x574a34eb0f82 - <tokio[a36722976576618a]::runtime::runtime::Runtime>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>
[INFO] [stdout]   16:     0x574a34d8674a - dekopon_model[8a7b2dfe02756847]::chatgpt::tests::a_rotated_credential_completes_the_turn_when_the_write_fails
[INFO] [stdout]   17:     0x574a34e213b9 - <dekopon_model[8a7b2dfe02756847]::chatgpt::tests::a_rotated_credential_completes_the_turn_when_the_write_fails::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   18:     0x574a3504de7b - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   19:     0x574a3505b4e5 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   20:     0x574a35054da4 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   21:     0x574a3505e642 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   22:     0x574a35252cb9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   23:     0x7b6b922e1dfa - <unknown>
[INFO] [stdout]   24:     0x7b6b923753d4 - clone
[INFO] [stdout]   25:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     chatgpt::tests::a_rotated_credential_completes_the_turn_when_the_write_fails
[INFO] [stdout]     chatgpt::tests::a_rotated_credential_is_returned_when_the_write_back_fails
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 182 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 7.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec", kill_on_drop: false }`
[INFO] [stdout] 2f5c670a706e37a8e320692e44f2c42da39b17392bdb3ebe5703fe0f2c2d12ec
