[INFO] fetching crate siumai-core 0.11.0-beta.7...
[INFO] testing siumai-core-0.11.0-beta.7 against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739-1
[INFO] extracting crate siumai-core 0.11.0-beta.7 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate siumai-core 0.11.0-beta.7
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate siumai-core 0.11.0-beta.7
[INFO] tweaked toml for crates.io crate siumai-core 0.11.0-beta.7 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate siumai-core 0.11.0-beta.7 on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate siumai-core 0.11.0-beta.7 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" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 14c5354083ac468cc7e7ac58ec1ec49222e1347d254687c25d29bbea8da6d698
[INFO] running `Command { std: "docker" "start" "-a" "14c5354083ac468cc7e7ac58ec1ec49222e1347d254687c25d29bbea8da6d698", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "14c5354083ac468cc7e7ac58ec1ec49222e1347d254687c25d29bbea8da6d698", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14c5354083ac468cc7e7ac58ec1ec49222e1347d254687c25d29bbea8da6d698", kill_on_drop: false }`
[INFO] [stdout] 14c5354083ac468cc7e7ac58ec1ec49222e1347d254687c25d29bbea8da6d698
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] eee05846f9bbccaeb818c49ce8ac77ee03a820fe5b31eaf04b48bbbe2a7bc58f
[INFO] running `Command { std: "docker" "start" "-a" "eee05846f9bbccaeb818c49ce8ac77ee03a820fe5b31eaf04b48bbbe2a7bc58f", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling aws-lc-rs v1.16.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling uuid v1.21.0
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling compression-codecs v0.4.37
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling cfb v0.7.3
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling infer v0.19.0
[INFO] [stderr]    Compiling lru v0.16.3
[INFO] [stderr]    Compiling eventsource-stream v0.2.3
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling aws-lc-sys v0.37.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling secrecy v0.10.3
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling async-compression v0.4.41
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling backoff v0.4.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling siumai-spec v0.11.0-beta.7
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling siumai-core v0.11.0-beta.7 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 08s
[INFO] running `Command { std: "docker" "inspect" "eee05846f9bbccaeb818c49ce8ac77ee03a820fe5b31eaf04b48bbbe2a7bc58f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eee05846f9bbccaeb818c49ce8ac77ee03a820fe5b31eaf04b48bbbe2a7bc58f", kill_on_drop: false }`
[INFO] [stdout] eee05846f9bbccaeb818c49ce8ac77ee03a820fe5b31eaf04b48bbbe2a7bc58f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f2bd2914a8cd27337642e284b1b6b5f0595bf41c70bf18fc96f2b7defd13bfee
[INFO] running `Command { std: "docker" "start" "-a" "f2bd2914a8cd27337642e284b1b6b5f0595bf41c70bf18fc96f2b7defd13bfee", kill_on_drop: false }`
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling tempfile v3.26.0
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling tracing-test-macro v0.2.6
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling proptest v1.10.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling tracing-test v0.2.6
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling async-compression v0.4.41
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling backoff v0.4.0
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling siumai-spec v0.11.0-beta.7
[INFO] [stderr]    Compiling tokio-test v0.4.5
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling mockito v1.7.2
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling siumai-core v0.11.0-beta.7 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 52.28s
[INFO] running `Command { std: "docker" "inspect" "f2bd2914a8cd27337642e284b1b6b5f0595bf41c70bf18fc96f2b7defd13bfee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f2bd2914a8cd27337642e284b1b6b5f0595bf41c70bf18fc96f2b7defd13bfee", kill_on_drop: false }`
[INFO] [stdout] f2bd2914a8cd27337642e284b1b6b5f0595bf41c70bf18fc96f2b7defd13bfee
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 6411ad398dec158ebc6ba8c2dc1c3e9062ab13e9d4b3bfe4ac91777a0f42bd13
[INFO] running `Command { std: "docker" "start" "-a" "6411ad398dec158ebc6ba8c2dc1c3e9062ab13e9d4b3bfe4ac91777a0f42bd13", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.29s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/siumai_core-e11bd3147c1667f5)
[INFO] [stdout] 
[INFO] [stdout] running 553 tests
[INFO] [stdout] test auth::vertex::tests::test_google_vertex_anthropic_base_url ... ok
[INFO] [stdout] test auth::vertex::tests::test_google_vertex_base_url_v1beta1 ... ok
[INFO] [stdout] test auth::vertex::tests::test_vertex_base_url ... ok
[INFO] [stdout] test auth::vertex::tests::test_google_vertex_maas_base_url ... ok
[INFO] [stdout] test bridge::tests::bridge_options_override_can_set_mode_without_rebuilding_full_options ... ok
[INFO] [stdout] test bridge::tests::bridge_options_customization_bundles_all_extension_points ... ok
[INFO] [stdout] test bridge::tests::bridge_options_overlay_replaces_mode_and_present_hooks ... ok
[INFO] [stdout] test bridge::tests::bridge_options_override_only_replaces_present_fields ... ok
[INFO] [stdout] test bridge::tests::default_bridge_options_use_best_effort_mode ... ok
[INFO] [stdout] test bridge::tests::default_loss_policy_rejects_strict_lossy_reports ... ok
[INFO] [stdout] test bridge::tests::lossy_and_dropped_fields_mark_report_lossy ... ok
[INFO] [stdout] test bridge::tests::merge_aggregates_details_and_promotes_stronger_decision ... ok
[INFO] [stdout] test bridge::tests::rejected_result_has_no_value_and_converts_into_error_result ... ok
[INFO] [stdout] test bridge::tests::report_starts_exact_and_metadata_warning_keeps_exact_decision ... ok
[INFO] [stdout] test builder::tests::provider_core_creation_inherits_defaults ... ok
[INFO] [stdout] test builder::tests::provider_core_timeout_configuration ... ok
[INFO] [stdout] test completion::tests::adapter_complete_uses_capability ... ok
[INFO] [stdout] test completion::tests::adapter_stream_uses_capability ... ok
[INFO] [stdout] test completion::tests::adapter_stream_with_cancel_wraps_stream ... ok
[INFO] [stdout] test completion::tests::completion_model_trait_includes_metadata ... ok
[INFO] [stdout] test custom_provider::tests::test_custom_provider_config_creation ... ok
[INFO] [stdout] test custom_provider::tests::test_custom_provider_config_with_model ... ok
[INFO] [stdout] test defaults::tests::test_http_defaults ... ok
[INFO] [stdout] test defaults::tests::test_model_timeout_assignments ... ok
[INFO] [stdout] test defaults::tests::test_profile_dev ... ok
[INFO] [stdout] test defaults::tests::test_profile_extended ... ok
[INFO] [stdout] test defaults::tests::test_profile_fast ... ok
[INFO] [stdout] test defaults::tests::test_profile_long_running ... ok
[INFO] [stdout] test defaults::tests::test_profile_prod ... ok
[INFO] [stdout] test defaults::tests::test_profile_timeout_ordering ... ok
[INFO] [stdout] test defaults::tests::test_timeout_hierarchy ... ok
[INFO] [stdout] test embedding::tests::adapter_embed_many_respects_fail_fast ... ok
[INFO] [stdout] test embedding::tests::adapter_embed_uses_capability ... ok
[INFO] [stdout] test embedding::tests::embedding_model_trait_includes_metadata ... ok
[INFO] [stdout] test embedding::tests::embedding_model_v3_prefers_request_aware_extensions_when_available ... ok
[INFO] [stdout] test error::helpers::tests::kind_mapping_basic ... ok
[INFO] [stdout] test error::helpers::tests::summary_includes_suggestions ... ok
[INFO] [stdout] test execution::executors::audio::tests::stt_passes_canonical_audio_input_to_transformer ... ok
[INFO] [stdout] test execution::executors::chat::tests::merges_request_headers_into_base_nonstream ... ok
[INFO] [stdout] test execution::executors::audio::tests::json_tts_attaches_raw_json_response_body ... ok
[INFO] [stdout] test execution::executors::audio::tests::stt_attaches_raw_json_response_body ... ok
[INFO] [stdout] test execution::executors::chat::tests::merges_request_headers_into_base_stream ... ok
[INFO] [stdout] test execution::executors::audio::tests::binary_tts_does_not_synthesize_response_body ... ok
[INFO] [stdout] test execution::executors::chat::tests::applies_provider_spec_chat_before_send_before_policy_hook ... ok
[INFO] [stdout] test execution::executors::chat::tests::applies_model_middlewares_before_mapping ... ok
[INFO] [stdout] test execution::executors::chat::tests::wrap_generate_async_orders_and_short_circuits ... ok
[INFO] [stdout] test execution::executors::chat::tests::nonstream_attaches_headers_and_raw_body_response_envelope ... ok
[INFO] [stdout] test execution::executors::chat::tests::pre_stream_short_circuits_before_http ... ok
[INFO] [stdout] test execution::executors::chat::tests::stream_end_attaches_provider_request_body ... ok
[INFO] [stdout] test execution::executors::chat::tests::pre_generate_short_circuits_before_http ... ok
[INFO] [stdout] test execution::executors::chat::tests::wrap_stream_async_orders_and_short_circuits ... ok
[INFO] [stdout] test execution::executors::embedding::tests::embedding_before_send_applied_and_aborts ... ok
[INFO] [stdout] test execution::executors::embedding::tests::embedding_interceptor_merges_headers ... ok
[INFO] [stdout] test execution::executors::embedding::tests::spec_before_send_runs_before_policy_hook ... ok
[INFO] [stdout] test execution::executors::errors::tests::classify_triggers_interceptor_on_error ... ok
[INFO] [stdout] test execution::executors::http_request::tests::bytes_request_custom_transport_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::files::tests::json_upload_applies_before_send_and_aborts ... ok
[INFO] [stdout] test execution::executors::http_request::tests::get_binary_custom_transport_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::http_request::tests::bytes_request_uses_custom_transport_and_returns_body ... ok
[INFO] [stdout] test execution::executors::files::tests::multipart_upload_merges_headers_and_aborts ... ok
[INFO] [stdout] test execution::executors::http_request::tests::get_binary_uses_custom_transport_and_returns_body ... ok
[INFO] [stdout] test execution::executors::http_request::tests::get_request_custom_transport_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::http_request::tests::json_streaming_response_uses_custom_transport_and_returns_stream_body ... ok
[INFO] [stdout] test execution::executors::http_request::tests::get_request_uses_custom_transport_and_returns_json ... ok
[INFO] [stdout] test execution::executors::http_request::tests::multipart_bytes_request_custom_transport_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::http_request::tests::json_streaming_response_custom_transport_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::http_request::tests::json_with_headers_classifies_429_rate_limit ... ok
[INFO] [stdout] test execution::executors::http_request::tests::json_with_headers_propagates_error_and_interceptor ... ok
[INFO] [stdout] test execution::executors::http_request::tests::json_with_headers_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::http_request::tests::json_with_headers_classifies_500_api_error ... ok
[INFO] [stdout] test execution::executors::http_request::tests::multipart_request_custom_transport_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::http_request::tests::multipart_bytes_request_uses_custom_transport_and_returns_body ... ok
[INFO] [stdout] test execution::executors::http_request::tests::multipart_request_uses_custom_transport_and_returns_json ... ok
[INFO] [stdout] test execution::executors::http_request::tests::multipart_streaming_response_uses_custom_transport_and_returns_body ... ok
[INFO] [stdout] test execution::executors::http_request::tests::multipart_streaming_response_custom_transport_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::image::tests::image_before_send_applied_and_aborts ... ok
[INFO] [stdout] test execution::executors::http_request::tests::multipart_streaming_response_retries_401_then_200 ... ok
[INFO] [stdout] test execution::executors::image::tests::image_edit_executor_can_preserve_url_backed_inputs_when_provider_opt_outs ... ok
[INFO] [stdout] test execution::executors::image::tests::image_executor_populates_response_and_warnings ... ok
[INFO] [stdout] test execution::executors::stream_json::tests::transport_json_stream_emits_multiple_end_events ... ok
[INFO] [stdout] test execution::executors::stream_json::tests::transport_json_stream_preserves_stateful_stream_end_response_content ... ok
[INFO] [stdout] test execution::executors::image::tests::image_edit_executor_materializes_url_backed_inputs_before_transformer ... ok
[INFO] [stdout] test execution::executors::image::tests::image_interceptor_merges_headers ... ok
[INFO] [stdout] test execution::http::client::tests::test_build_http_client_with_invalid_header_name ... ok
[INFO] [stdout] test execution::executors::image::tests::image_variation_executor_can_preserve_url_backed_inputs_when_provider_opt_outs ... ok
[INFO] [stdout] test execution::executors::image::tests::image_variation_executor_materializes_url_backed_input_before_transformer ... ok
[INFO] [stdout] test execution::http::headers::tests::merge_headers_overrides_existing_values ... ok
[INFO] [stdout] test execution::http::headers::tests::test_header_builder ... ok
[INFO] [stdout] test execution::middleware::auto::tests::test_build_auto_middlewares_disabled_reasoning ... ok
[INFO] [stdout] test execution::middleware::auto::tests::test_build_auto_middlewares_gemini ... ok
[INFO] [stdout] test execution::middleware::auto::tests::test_build_auto_middlewares_openai ... ok
[INFO] [stdout] test execution::middleware::auto::tests::test_middleware_config_builder ... ok
[INFO] [stdout] test execution::middleware::lm::language_model::tests::model_id_override_applies_first_match ... ok
[INFO] [stdout] test execution::middleware::lm::language_model::tests::model_id_override_returns_original_if_no_override ... ok
[INFO] [stdout] test execution::middleware::lm::language_model::tests::post_generate_chain_applies_in_order ... ok
[INFO] [stdout] test execution::middleware::lm::language_model::tests::pre_generate_short_circuit_and_order ... ok
[INFO] [stdout] test execution::middleware::lm::language_model::tests::provider_id_override_applies_first_match ... ok
[INFO] [stdout] test execution::middleware::lm::language_model::tests::provider_id_override_returns_original_if_no_override ... ok
[INFO] [stdout] test execution::middleware::lm::language_model::tests::transform_chain_applies_in_order ... ok
[INFO] [stdout] test execution::middleware::lm::tag_extractor::tests::test_get_potential_start_index_complete_match ... ok
[INFO] [stdout] test execution::middleware::lm::tag_extractor::tests::test_get_potential_start_index_empty_search ... ok
[INFO] [stdout] test execution::middleware::lm::tag_extractor::tests::test_get_potential_start_index_no_match ... ok
[INFO] [stdout] test execution::middleware::lm::tag_extractor::tests::test_get_potential_start_index_partial_match ... ok
[INFO] [stdout] test execution::middleware::lm::tag_extractor::tests::test_get_potential_start_index_unicode_char_boundary ... ok
[INFO] [stdout] test execution::middleware::presets::extract_reasoning::tests::test_extract_thinking_with_think_tags ... ok
[INFO] [stdout] test execution::middleware::presets::extract_reasoning::tests::test_extract_thinking_with_thought_tags ... ok
[INFO] [stdout] test execution::middleware::presets::extract_reasoning::tests::test_for_model_default ... ok
[INFO] [stdout] test execution::middleware::presets::extract_reasoning::tests::test_for_model_gemini ... ok
[INFO] [stdout] test execution::middleware::presets::extract_reasoning::tests::test_for_model_qwen ... ok
[INFO] [stdout] test execution::middleware::presets::extract_reasoning::tests::test_no_thinking_tags ... ok
[INFO] [stdout] test execution::middleware::presets::extract_reasoning::tests::test_provider_already_extracted ... ok
[INFO] [stdout] test execution::middleware::presets::system_message_mode_warning::tests::post_generate_emits_compatibility_warning_for_system_message_removal ... ok
[INFO] [stdout] test execution::middleware::samples::tests::simulate_streaming_chunks_when_no_deltas ... ok
[INFO] [stdout] test execution::middleware::samples::tests::simulate_streaming_does_not_synthesize_when_stable_text_parts_exist ... ok
[INFO] [stdout] test execution::middleware::samples::tests::simulate_streaming_passthrough_when_deltas_exist ... ok
[INFO] [stdout] test execution::transformers::json_path::tests::default_creates_nested_array ... ok
[INFO] [stdout] test execution::transformers::json_path::tests::move_from_array_to_object ... ok
[INFO] [stdout] test execution::transformers::json_path::tests::parse_mixed_path ... ok
[INFO] [stdout] test execution::executors::rerank::tests::rerank_executor_attaches_headers_and_raw_body_response_envelope ... ok
[INFO] [stdout] test execution::executors::rerank::tests::rerank_guard_allows_supported_provider_and_calls_transformer ... ok
[INFO] [stdout] test execution::transformers::request::tests::default_into_nested_array_path_creates_structure ... ok
[INFO] [stdout] test execution::executors::rerank::tests::rerank_guard_blocks_unsupported_provider_before_transform ... ok
[INFO] [stdout] test execution::transformers::request::tests::embedding_base_body_and_cleanup ... ok
[INFO] [stdout] test execution::transformers::request::tests::embedding_no_namespace_merge ... ok
[INFO] [stdout] test execution::transformers::request::tests::enum_map_applies_to_chat_body ... ok
[INFO] [stdout] test execution::transformers::request::tests::merge_image_extra_params_flatten ... ok
[INFO] [stdout] test execution::transformers::request::tests::move_from_array_path_into_object_key ... ok
[INFO] [stdout] test execution::transformers::request::tests::when_condition_model_prefix_applies_rules ... ok
[INFO] [stdout] test image::tests::adapter_generate_uses_capability ... ok
[INFO] [stdout] test image::tests::adapter_preserves_capability_batch_limit ... ok
[INFO] [stdout] test image::tests::image_model_trait_includes_metadata ... ok
[INFO] [stdout] test observability::telemetry::exporters::helicone::tests::test_get_headers_vec ... ok
[INFO] [stdout] test observability::telemetry::exporters::helicone::tests::test_helicone_exporter_creation ... ok
[INFO] [stdout] test observability::telemetry::exporters::helicone::tests::test_helicone_headers ... ok
[INFO] [stdout] test observability::telemetry::exporters::helicone::tests::test_helicone_headers_with_properties ... ok
[INFO] [stdout] test execution::transformers::json_path::tests::prop_default_any_index_creates_structure ... ok
[INFO] [stdout] test observability::telemetry::tests::test_telemetry_collector ... ok
[INFO] [stdout] test execution::transformers::json_path::tests::prop_move_field_idempotent_when_source_missing ... ok
[INFO] [stdout] test params::common::tests::test_common_parameter_mapping ... ok
[INFO] [stdout] test params::mapper::tests::test_parameter_constraints_defaults ... ok
[INFO] [stdout] test params::common::tests::test_parameter_validator ... ok
[INFO] [stdout] test rerank::tests::reranking_model_trait_includes_metadata ... ok
[INFO] [stdout] test rerank::tests::adapter_rerank_uses_capability ... ok
[INFO] [stdout] test retry::backoff::tests::test_permanent_error_no_retry ... ok
[INFO] [stdout] test retry::policy::tests::test_delay_calculation ... ok
[INFO] [stdout] test execution::http::client::tests::test_build_http_client_default ... ok
[INFO] [stdout] test retry_api::tests::classify_http_error_uses_fallback_message_for_non_json_body ... ok
[INFO] [stdout] test execution::http::client::tests::test_build_http_client_with_headers ... ok
[INFO] [stdout] test speech::tests::adapter_synthesize_uses_capability ... ok
[INFO] [stdout] test speech::tests::speech_model_trait_includes_metadata ... ok
[INFO] [stdout] test standards::openai::compat::adapter::tests::metadata_extracting_adapter_merges_custom_metadata_with_inner_adapter ... ok
[INFO] [stdout] test standards::openai::compat::adapter::tests::openai_standard_adapter_extracts_response_metadata_via_adapter_hook ... ok
[INFO] [stdout] test standards::openai::compat::adapter::tests::request_transforming_adapter_runs_after_inner_adapter ... ok
[INFO] [stdout] test standards::openai::compat::adapter::tests::test_adapter_clone ... ok
[INFO] [stdout] test standards::openai::compat::adapter::tests::test_adapter_registry ... ok
[INFO] [stdout] test standards::openai::compat::adapter::tests::test_param_merging_adapter_chat_only_and_no_override ... ok
[INFO] [stdout] test standards::openai::compat::base_url::tests::deepinfra_root_base_url_accepts_root_and_family_prefixes ... ok
[INFO] [stdout] test standards::openai::compat::base_url::tests::deepinfra_text_base_url_always_points_at_openai_family_root ... ok
[INFO] [stdout] test standards::openai::compat::base_url::tests::normalize_text_base_url_only_special_cases_deepinfra ... ok
[INFO] [stdout] test standards::openai::compat::metadata::tests::deepseek_metadata_helper_extracts_prompt_cache_usage_fields ... ok
[INFO] [stdout] test standards::openai::compat::metadata::tests::openai_metadata_helper_extracts_logprobs ... ok
[INFO] [stdout] test standards::openai::compat::metadata::tests::openrouter_metadata_helper_extracts_sources_and_logprobs ... ok
[INFO] [stdout] test standards::openai::compat::metadata::tests::perplexity_metadata_helper_extracts_hosted_search_fields ... ok
[INFO] [stdout] test standards::openai::compat::metadata::tests::provider_options_keys_keep_alias_and_canonical_forms ... ok
[INFO] [stdout] test standards::openai::compat::metadata::tests::xai_metadata_helper_extracts_sources_and_logprobs ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_builtin_provider_structured_outputs_defaults ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_creation ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_fluent_common_params_and_reasoning_defaults ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_http_convenience_helpers ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_reasoning_maps_for_openrouter ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_thinking_budget_maps_for_siliconflow ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_validation ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_with_header ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_with_include_usage_records_explicit_setting ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_with_metadata_extractor_wraps_adapter ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_with_model ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_with_query_params_records_explicit_settings ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_with_request_body_transformer_stores_hook ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_config_with_supports_structured_outputs_records_policy ... ok
[INFO] [stdout] test standards::openai::compat::openai_config::tests::test_deepinfra_config_normalizes_root_base_url_to_openai_text_prefix ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_capabilities_include_audio_family_aliases ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_capabilities_include_image_generation_and_rerank ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_fireworks_exposes_transcription_only_audio_base ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_focused_non_text_caps_do_not_imply_chat_surface ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_mistral_keeps_chat_surface_but_not_completion_surface ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_mixed_caps_keep_chat_surface ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_only_extracts_metadata_for_opted_in_providers ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_perplexity_keeps_chat_surface_but_not_completion_surface ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_reports_stream_usage_hint_support_by_provider ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_transforms_deepseek_thinking_compat_quirks ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_transforms_groq_compat_quirks ... ok
[INFO] [stdout] test standards::openai::compat::provider_registry::tests::configurable_adapter_transforms_xai_reasoning_compat_quirks ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::deepseek_streaming_emits_usage_then_single_stream_end_and_ignores_done ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::groq_streaming_extracts_x_groq_usage_like_ai_sdk ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compat_accepts_tool_call_input_object_via_loose_parser ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compat_serializes_v3_custom_parts_best_effort ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_handle_stream_end_events_close_text_and_emit_finish_part ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_handle_stream_end_events_finalize_unfinished_tool_calls ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_handle_stream_end_preserves_cached_terminal_fields ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_parse_error_with_raw_chunks_still_emits_stream_start_before_raw ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_raw_chunks_follow_stream_start_before_response_metadata ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_document_source_as_text_when_configured ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_finish_logprobs_into_terminal_chunk ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_finish_then_stream_end_with_single_terminal_chunk ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_stable_tool_parts_without_duplicate_full_arguments ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_stable_url_source_parts_as_delta_annotations ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_tool_call_finish_consistently_across_v3_and_stream_end ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_typed_finish_with_unknown_totals_as_null ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_typed_text_deltas_as_chat_completion_chunks ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_typed_tool_input_parts ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_typed_tool_input_start_as_tool_calls_delta ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_serializes_v4_custom_and_reasoning_file_as_text_when_configured ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_stream_end_preserves_terminal_chunk_fields ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_stream_start_without_metadata_does_not_synthesize_chunk_metadata ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_v3_finish_preserves_unknown_usage_totals_as_null ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::openai_compatible_v3_response_metadata_updates_terminal_chunk_state ... ok
[INFO] [stdout] test standards::openai::compat::streaming::tests::perplexity_streaming_emits_stream_end_with_usage_and_provider_metadata ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_completed_tool_call_is_not_duplicated_by_later_empty_chunks ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_explicit_error_payload_emits_stable_error_and_error_finish ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_finish_keeps_requested_provider_metadata_key_even_without_extra_fields ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_finish_reason_tool_calls_finalizes_empty_tool_call_once ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_finish_surfaces_prediction_token_provider_metadata ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_metadata_extracting_adapter_merges_finish_metadata ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_reasoning_content_takes_priority_over_reasoning_field ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_reasoning_field_is_used_when_reasoning_content_is_missing ... ok
[INFO] [stdout] test execution::http::client::tests::test_build_http_client_with_timeout ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_tool_call_carries_thought_signature_under_requested_metadata_key ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_same_chunk_reasoning_precedes_text_parts ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_unparsable_chunk_emits_raw_error_and_error_finish ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::compat_stream_tool_call_sent_in_one_chunk_emits_single_complete_lifecycle ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::deepseek_runtime_provider_streaming_tool_calls_match_non_streaming_tool_calls ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::finish_reason_tool_calls_without_tool_calls_array_emits_stream_end ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::end_to_end_sse_multi_event_flow ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::finish_reason_without_done_emits_stream_end ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::multi_event_sequence ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::multi_tool_calls_are_mapped_by_index ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::parser_emits_annotations_as_stable_source_parts ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::parser_emits_stable_tool_parts ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::parser_emits_stream_start_and_response_metadata_parts_on_first_chunk ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::parser_defers_response_metadata_until_model_router_chunk_has_real_metadata ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::parser_emits_text_reasoning_lifecycle_parts_without_duplicate_deltas ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::responses_shape_delta_text_yields_content ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::responses_shape_finish_reason_emits_stream_end ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::responses_shape_json_string_event_yields_content ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::responses_shape_delta_plain_string_yields_content ... ok
[INFO] [stdout] test observability::telemetry::exporters::langfuse::tests::test_langfuse_exporter_creation ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::tool_call_deltas_without_id_are_mapped_by_tool_call_index ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::streaming_tool_calls_match_non_streaming_tool_calls ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::deepseek_request_transformer_uses_ai_sdk_message_content_shape ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::generic_openai_compatible_provider_keeps_empty_provider_metadata_root_by_default ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::legacy_function_call_is_exposed_as_tool_call_part ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::mistral_request_transformer_uses_ai_sdk_message_content_shape ... ok
[INFO] [stdout] test standards::openai::compat::streaming_tests::xai_runtime_provider_streaming_tool_calls_match_non_streaming_tool_calls ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::openai_compatible_chat_response_preserves_raw_response_body ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::openai_compatible_embedding_response_preserves_usage_and_provider_metadata ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::openai_compatible_image_response_maps_provider_wire_shape ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::openai_compatible_transformer_exposes_annotations_as_source_parts ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::openai_compatible_transformer_preserves_top_level_chat_response_fields ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::perplexity_extra_fields_are_exposed_as_provider_metadata ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::perplexity_request_transformer_uses_ai_sdk_message_content_shape ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::openai_compatible_transformer_uses_requested_metadata_key_for_tool_call_signatures ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::perplexity_top_level_citations_are_exposed_as_source_parts ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::tool_call_json_in_text_is_parsed_when_finish_reason_indicates_tool_calls ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::xai_request_transformer_uses_ai_sdk_message_content_shape ... ok
[INFO] [stdout] test standards::openai::compat::transformers::tests::siliconflow_tool_call_json_in_text_is_parsed_even_when_finish_reason_is_stop ... ok
[INFO] [stdout] test standards::openai::compat::transformers_tests::openai_compatible_rerank_payload_fields ... ok
[INFO] [stdout] test standards::openai::compat::types::tests::test_field_mappings_deepseek ... ok
[INFO] [stdout] test standards::openai::compat::types::tests::test_field_mappings_default ... ok
[INFO] [stdout] test standards::openai::compat::types::tests::test_model_config_deepseek ... ok
[INFO] [stdout] test standards::openai::utils::tests::deepseek_assistant_reasoning_is_kept_only_after_last_user_message ... ok
[INFO] [stdout] test standards::openai::utils::tests::deepseek_user_message_conversion_keeps_only_text_parts ... ok
[INFO] [stdout] test standards::openai::utils::tests::extract_provider_openai_usage_value_reads_groq_streaming_x_groq_usage ... ok
[INFO] [stdout] test standards::openai::utils::tests::mistral_tool_result_messages_include_tool_name ... ok
[INFO] [stdout] test standards::openai::utils::tests::mistral_user_pdf_and_assistant_reasoning_match_ai_sdk_shape ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_chat_audio_file_part_maps_to_input_audio ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_chat_ignores_legacy_image_detail_provider_metadata ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_chat_image_provider_reference_maps_to_file_id ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_chat_pdf_provider_reference_maps_to_file_id ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_chat_pdf_file_part_maps_to_file_content_part ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_chat_usage_value_omits_synthetic_zero_details ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_chat_usage_value_preserves_vendor_extensions_and_strips_responses_keys ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_compatible_assistant_reasoning_parts_map_to_reasoning_content ... ok
[INFO] [stdout] test execution::http::client::tests::test_build_http_client_with_user_agent ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_compatible_image_provider_reference_is_unsupported ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_compatible_pdf_file_part_maps_to_file_content_part ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_compatible_single_text_ignores_legacy_request_metadata_channels ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_compatible_tool_only_assistant_content_is_null ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_responses_usage_value_preserves_unknown_totals_as_null ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_compatible_user_file_parts_match_ai_sdk_shapes ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_responses_usage_value_preserves_vendor_extensions_and_strips_chat_keys ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_openai_usage_value_supports_ai_sdk_wrapper_with_raw_usage ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_finish_reason_matches_ai_sdk_vendor_mappings ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_defaults_generic_chat_usage_like_ai_sdk ... ok
[INFO] [stdout] test standards::openai::utils::tests::openai_tool_messages_keep_explicit_tool_result_content_variants_as_json_strings ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_fixes_deepinfra_reasoning_totals ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_keeps_groq_prompt_cache_details_raw_only ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_maps_alibaba_cache_creation_tokens ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_maps_alibaba_missing_cache_write_to_zero ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_maps_moonshot_null_fields_to_zero ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_maps_deepseek_prompt_cache_hits ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_maps_xai_chat_reasoning_and_cache_semantics ... ok
[INFO] [stdout] test standards::openai::utils::tests::perplexity_file_provider_reference_is_rejected ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_xai_responses_usage_value_handles_noninclusive_cache_read_tokens ... ok
[INFO] [stdout] test standards::openai::utils::tests::parse_provider_openai_usage_value_prefers_moonshot_top_level_cached_tokens ... ok
[INFO] [stdout] test standards::openai::utils::tests::perplexity_pdf_file_part_maps_to_file_url_content_part ... ok
[INFO] [stdout] test standards::openai::utils::tests::xai_assistant_reasoning_is_not_sent_as_reasoning_content ... ok
[INFO] [stdout] test standards::openai::utils::tests::xai_missing_provider_reference_reports_available_providers ... ok
[INFO] [stdout] test standards::openai::utils::tests::perplexity_text_only_parts_collapse_to_string ... ok
[INFO] [stdout] test standards::openai::utils::tests::xai_provider_reference_file_parts_map_to_file_ids ... ok
[INFO] [stdout] test standards::openai::utils::tests::xai_responses_zero_usage_matches_ai_sdk_missing_usage_fallback ... ok
[INFO] [stdout] test standards::openai::utils::tests::xai_responses_usage_provider_metadata_maps_cost_ticks ... ok
[INFO] [stdout] test standards::tool_name_mapping::tests::creates_mapping_for_provider_defined_tools ... ok
[INFO] [stdout] test standards::tool_name_mapping::tests::handles_empty_tools_array ... ok
[INFO] [stdout] test standards::tool_name_mapping::tests::handles_mixed_function_and_provider_defined_tools ... ok
[INFO] [stdout] test standards::tool_name_mapping::tests::ignores_function_tools ... ok
[INFO] [stdout] test standards::tool_name_mapping::tests::ignores_unrecognized_provider_tool_ids ... ok
[INFO] [stdout] test standards::tool_name_mapping::tests::returns_input_when_no_mapping_exists ... ok
[INFO] [stdout] test streaming::adapters::tests::middleware_json_converter_expands_end_events ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_file_parts_are_promoted_to_runtime_parts ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_custom_parts_are_promoted_to_runtime_parts ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_mcp_tool_events_rebuild_openai_mcp_raw_items ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_raw_parts_are_promoted_to_runtime_parts ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_reasoning_file_parts_are_promoted_to_runtime_parts ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_finish_parts_are_promoted_to_runtime_parts ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_tool_call_from_unknown_prefix_adds_raw_item_and_preserves_provider_metadata ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_tool_input_parts_are_promoted_to_runtime_parts ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_text_and_source_parts_are_promoted_to_runtime_parts ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_tool_result_synthesizes_tool_call_when_missing ... ok
[INFO] [stdout] test streaming::encoder::tests::ensure_stream_end_appends_unknown_finish_reason_on_clean_eof ... ok
[INFO] [stdout] test streaming::bridge::tests::bridge_v3_tool_result_skips_null_result_payload ... ok
[INFO] [stdout] test streaming::encoder::tests::ensure_stream_end_does_not_finalize_error_streams ... ok
[INFO] [stdout] test streaming::encoder::tests::ensure_stream_end_does_not_duplicate_existing_terminal_event ... ok
[INFO] [stdout] test streaming::factory::tests::saw_content_in_events_ignores_legacy_text_deltas ... ok
[INFO] [stdout] test streaming::json_repair::tests::test_parse_empty_array ... ok
[INFO] [stdout] test streaming::factory::tests::saw_content_in_events_accepts_stable_text_parts ... ok
[INFO] [stdout] test streaming::json_repair::tests::test_parse_empty_object ... ok
[INFO] [stdout] test streaming::json_repair::tests::test_parse_invalid_json_without_repair ... ok
[INFO] [stdout] test streaming::json_repair::tests::test_parse_nested_object ... ok
[INFO] [stdout] test streaming::json_repair::tests::test_parse_valid_json ... ok
[INFO] [stdout] test streaming::processor::tests::finish_part_updates_final_usage ... ok
[INFO] [stdout] test streaming::processor::tests::stable_tool_call_parts_survive_final_response_build ... ok
[INFO] [stdout] test streaming::processor::tests::accumulated_tool_calls_preserve_terminal_provider_fields ... ok
[INFO] [stdout] test streaming::processor::tests::stream_end_content_preserves_extra_parts_when_accumulated_text_exists ... ok
[INFO] [stdout] test streaming::processor::tests::stable_tool_input_start_metadata_flows_to_stable_parts ... ok
[INFO] [stdout] test streaming::processor::tests::stream_end_response_preserves_terminal_envelope_fields ... ok
[INFO] [stdout] test streaming::processor::tests::stream_end_response_updates_final_usage_and_provider_metadata ... ok
[INFO] [stdout] test streaming::processor::tests::stream_start_metadata_falls_back_when_stream_end_missing ... ok
[INFO] [stdout] test streaming::processor::tests::tool_arguments_respect_max_size ... ok
[INFO] [stdout] test streaming::sse::tests::test_sse_stream_basic ... ok
[INFO] [stdout] test streaming::sse::tests::test_sse_stream_keep_alive_comments_do_not_break_parsing ... ok
[INFO] [stdout] test streaming::sse::tests::test_sse_stream_utf8_handling ... ok
[INFO] [stdout] test streaming::sse_json::tests::parse_json_event_stream_uses_public_defaults ... ok
[INFO] [stdout] test streaming::sse_json::tests::parses_json_events_and_calls_interceptors ... ok
[INFO] [stdout] test streaming::sse_json::tests::returns_parse_error_on_invalid_json ... ok
[INFO] [stdout] test streaming::state_tracker::tests::test_default ... ok
[INFO] [stdout] test streaming::state_tracker::tests::test_mark_stream_ended ... ok
[INFO] [stdout] test streaming::state_tracker::tests::test_needs_stream_end ... ok
[INFO] [stdout] test streaming::state_tracker::tests::test_needs_stream_start ... ok
[INFO] [stdout] test streaming::state_tracker::tests::test_reset ... ok
[INFO] [stdout] test streaming::stream_part::tests::language_model_v4_stream_projection_filters_non_object_provider_metadata ... ok
[INFO] [stdout] test streaming::state_tracker::tests::test_clone_shares_state ... ok
[INFO] [stdout] test streaming::stream_part::tests::language_model_v4_stream_provider_metadata_requires_object_values ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_finish_reason_accepts_legacy_underscore_values ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_finish_reason_preserves_unknown_unified_value ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_finish_reason_uses_ai_sdk_v4_unified_values ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_formats_as_data_sse_frame ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_formats_reasoning_file_to_openai_protocol_custom_event ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_finish_reason_preserves_stop_sequence_as_raw ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_formats_reasoning_to_anthropic_protocol_custom_event_with_provider_metadata ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_lossy_text_includes_custom_kind_and_reasoning_file_hint ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_formats_to_openai_protocol_custom_event ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_parse_loose_accepts_custom_content ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_parse_loose_accepts_finish_reason_string ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_parses_from_custom_event_payload ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_parse_loose_accepts_tool_call_input_object ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_roundtrips_runtime_tool_call_part ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_part_tool_result_rejects_null_result_payload ... ok
[INFO] [stdout] test streaming::stream_part::tests::stream_usage_omits_unknown_token_fields ... ok
[INFO] [stdout] test structured_output::tests::accepts_complete_json_when_stream_ends_without_stream_end_event ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_markdown_fence ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_plain_text ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_reserved_tool_call_when_text_is_empty ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_response_object ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_stream_text_delta_parts ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_stream_tool_call_deltas_without_stream_end ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_unknown_stream_end_using_accumulated_text_parts ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_unknown_stream_end_when_stream_end_response_has_json_text ... ok
[INFO] [stdout] test structured_output::tests::extracts_json_from_wrapped_text ... ok
[INFO] [stdout] test structured_output::tests::extracts_typed_json_from_response ... ok
[INFO] [stdout] test structured_output::tests::fix_partial_json_matches_ai_sdk_array_and_object_repairs ... ok
[INFO] [stdout] test structured_output::tests::fix_partial_json_matches_ai_sdk_scalar_repairs ... ok
[INFO] [stdout] test structured_output::tests::parse_partial_json_handles_unicode_inside_strings ... ok
[INFO] [stdout] test structured_output::tests::parse_partial_json_reports_state ... ok
[INFO] [stdout] test structured_output::tests::partial_json_value_stream_emits_changed_partials_and_finish ... ok
[INFO] [stdout] test structured_output::tests::partial_json_value_stream_reads_typed_text_delta_parts ... ok
[INFO] [stdout] test structured_output::tests::preserves_complete_json_when_content_filter_finish_reason_is_set ... ok
[INFO] [stdout] test structured_output::tests::rejects_truncated_json_tool_call_deltas_without_stream_end ... ok
[INFO] [stdout] test structured_output::tests::rejects_truncated_json_when_stream_ends_without_stream_end_event ... ok
[INFO] [stdout] test structured_output::tests::rejects_truncated_json_when_unknown_stream_end_uses_accumulated_text_parts ... ok
[INFO] [stdout] test structured_output::tests::returns_content_filter_error_when_no_json_was_produced ... ok
[INFO] [stdout] test structured_output::tests::typed_extraction_reports_target_type_mismatch ... ok
[INFO] [stdout] test text::tests::adapter_generate_calls_chat_request ... ok
[INFO] [stdout] test text::tests::adapter_stream_calls_chat_stream_request ... ok
[INFO] [stdout] test text::tests::adapter_stream_with_cancel_wraps_stream ... ok
[INFO] [stdout] test text::tests::language_model_marker_exposes_metadata ... ok
[INFO] [stdout] test text::tests::language_model_v4_trait_exposes_provider_contract ... ok
[INFO] [stdout] test tooling::tests::callback_contexts_project_from_shared_execution_options ... ok
[INFO] [stdout] test tooling::tests::executable_tool_helpers_match_ai_sdk_style_facade ... ok
[INFO] [stdout] test tooling::tests::execute_tool_emits_single_final_output_for_one_shot_execution ... ok
[INFO] [stdout] test tooling::tests::execute_tool_normalizes_streaming_outputs ... ok
[INFO] [stdout] test tooling::tests::provider_tool_factories_preserve_execution_ownership ... ok
[INFO] [stdout] test tooling::tests::tool_builder_keeps_output_schema_on_portable_function_tool ... ok
[INFO] [stdout] test tooling::tests::tool_execution_options_can_project_chat_messages ... ok
[INFO] [stdout] test tooling::tests::tool_runtime_metadata_supports_callbacks_and_dynamic_flags ... ok
[INFO] [stdout] test tooling::tests::tool_set_executes_by_name ... ok
[INFO] [stdout] test tooling::tests::tool_set_executes_streams_with_options ... ok
[INFO] [stdout] test tooling::tests::tool_set_uses_runtime_model_output_mapper ... ok
[INFO] [stdout] test tooling::tests::typed_tool_parses_args_and_serializes_output ... ok
[INFO] [stdout] test traits::audio::tests::transcribe_file_loads_bytes_into_canonical_audio_input ... ok
[INFO] [stdout] test traits::audio::tests::translate_file_loads_bytes_into_canonical_audio_input ... ok
[INFO] [stdout] test traits::speech::tests::legacy_audio_capability_adapts_into_speech_capability ... ok
[INFO] [stdout] test traits::tests::test_capability_traits_are_send_sync ... ok
[INFO] [stdout] test traits::tests::test_capability_traits_multithreading ... ok
[INFO] [stdout] test traits::tests::test_provider_capabilities ... ok
[INFO] [stdout] test traits::transcription::tests::legacy_audio_capability_adapts_into_transcription_capability ... ok
[INFO] [stdout] test transcription::tests::adapter_transcribe_uses_capability ... ok
[INFO] [stdout] test transcription::tests::transcription_model_trait_includes_metadata ... ok
[INFO] [stdout] test ui::tests::convert_data_parts_with_callback ... ok
[INFO] [stdout] test ui::tests::convert_ignores_incomplete_tool_calls_when_requested ... ok
[INFO] [stdout] test ui::tests::convert_maps_user_provider_reference_file ... ok
[INFO] [stdout] test ui::tests::convert_merges_system_text_parts_and_provider_metadata ... ok
[INFO] [stdout] test ui::tests::convert_splits_assistant_tool_blocks ... ok
[INFO] [stdout] test ui::tests::convert_tool_approval_response_preserves_provider_executed ... ok
[INFO] [stdout] test ui::tests::explicit_tool_result_output_shape_roundtrips_from_ui_output ... ok
[INFO] [stdout] test ui::tests::local_output_error_uses_error_text ... ok
[INFO] [stdout] test streaming::telemetry_wrapper::tests::emits_generation_event_on_stream_end ... ok
[INFO] [stdout] test ui::tests::provider_executed_output_error_uses_error_json ... ok
[INFO] [stdout] test ui::tests::runtime_tool_mapper_overrides_default_ui_tool_output_conversion ... ok
[INFO] [stdout] test ui::tests::safe_schema_validate_preserves_schema_errors ... ok
[INFO] [stdout] test ui::tests::safe_validate_returns_ai_sdk_style_result_union ... ok
[INFO] [stdout] test ui::tests::schema_validation_rejects_data_parts_without_matching_schema ... ok
[INFO] [stdout] test ui::tests::schema_validation_rejects_invalid_tool_output_against_tool_schema ... ok
[INFO] [stdout] test ui::tests::validate_rejects_missing_output_error_text ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_get_api_key_with_env ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_get_api_key_with_envs_falls_back_to_aliases ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_get_api_key_with_envs_uses_primary_env_when_available ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_get_effective_model ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_resolve_base_url ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_normalize_model_id ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_resolve_base_url_with_env_falls_back_to_default ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_resolve_base_url_with_env_falls_back_to_env ... ok
[INFO] [stdout] test utils::cancel::tests::abort_error_detection_matches_ai_sdk_names ... ok
[INFO] [stdout] test utils::builder_helpers::tests::test_resolve_base_url_with_env_prefers_explicit_url ... ok
[INFO] [stdout] test utils::cancel::tests::delay_observes_cancel_handle ... ok
[INFO] [stdout] test utils::cancel::tests::cancel_wakes_pending_next_immediately ... ok
[INFO] [stdout] test utils::cancel::tests::delay_resolves_immediately_when_missing ... ok
[INFO] [stdout] test utils::chat_request::tests::merge_common_params_fills_missing_fields_from_defaults ... ok
[INFO] [stdout] test utils::chat_request::tests::normalize_chat_request_merges_defaults_without_overriding_request_values ... ok
[INFO] [stdout] test utils::data::tests::converts_image_model_file_to_data_uri ... ok
[INFO] [stdout] test utils::data::tests::cosine_similarity_matches_ai_sdk_semantics ... ok
[INFO] [stdout] test utils::data::tests::data_url_text_and_deep_equal_helpers_match_ai_sdk_shape ... ok
[INFO] [stdout] test utils::data::tests::uint8_base64_helpers_match_ai_sdk_shape ... ok
[INFO] [stdout] test utils::cancel::tests::delay_waits_for_duration ... ok
[INFO] [stdout] test streaming::factory::tests::reqwest_json_stream_preserves_typed_textual_parts_without_legacy_shadows ... ok
[INFO] [stdout] test streaming::factory::tests::reqwest_json_stream_emits_multiple_end_events ... ok
[INFO] [stdout] test utils::download::tests::validate_download_url_matches_ai_sdk_safety_rules ... ok
[INFO] [stdout] test utils::error_message::tests::gets_message_from_json_and_errors ... ok
[INFO] [stdout] test utils::error_message::tests::gets_message_from_missing_or_string_values ... ok
[INFO] [stdout] test utils::headers::tests::combine_headers_uses_later_values ... ok
[INFO] [stdout] test utils::headers::tests::extract_response_headers_matches_header_map_normalization ... ok
[INFO] [stdout] test utils::headers::tests::normalize_header_map_filters_non_utf8_values ... ok
[INFO] [stdout] test utils::headers::tests::normalize_headers_lowercases_keys ... ok
[INFO] [stdout] test utils::headers::tests::normalize_optional_headers_removes_missing_values ... ok
[INFO] [stdout] test utils::headers::tests::with_user_agent_suffix_appends_non_empty_parts ... ok
[INFO] [stdout] test utils::id::tests::create_id_generator_rejects_ambiguous_prefixed_separator ... ok
[INFO] [stdout] test utils::id::tests::create_id_generator_rejects_empty_alphabet ... ok
[INFO] [stdout] test utils::id::tests::create_id_generator_supports_prefix_and_custom_alphabet ... ok
[INFO] [stdout] test utils::id::tests::generate_id_uses_default_size ... ok
[INFO] [stdout] test utils::json_instruction::tests::inject_json_instruction_includes_schema_defaults ... ok
[INFO] [stdout] test utils::json_instruction::tests::inject_json_instruction_into_messages_prepends_system_when_missing ... ok
[INFO] [stdout] test utils::json_instruction::tests::inject_json_instruction_into_messages_updates_existing_system ... ok
[INFO] [stdout] test utils::json_instruction::tests::inject_json_instruction_matches_generic_prompt_shape ... ok
[INFO] [stdout] test utils::json_instruction::tests::inject_json_instruction_supports_custom_prefix_and_suffix ... ok
[INFO] [stdout] test utils::json_parse::tests::is_parsable_json_uses_secure_parse_rules ... ok
[INFO] [stdout] test utils::json_parse::tests::parse_json_parses_values_and_safe_result ... ok
[INFO] [stdout] test utils::json_parse::tests::parse_json_rejects_invalid_json_and_forbidden_keys ... ok
[INFO] [stdout] test utils::json_parse::tests::parse_json_with_schema_uses_runtime_validator ... ok
[INFO] [stdout] test utils::mime::tests::media_type_to_extension_matches_ai_sdk_mapping ... ok
[INFO] [stdout] test utils::mime::tests::strip_file_extension_matches_ai_sdk_mapping ... ok
[INFO] [stdout] test utils::mime::tests::test_guess_mime_combined ... ok
[INFO] [stdout] test utils::mime::tests::test_guess_mime_from_path ... ok
[INFO] [stdout] test utils::model_alias::tests::test_deepseek_aliases ... ok
[INFO] [stdout] test utils::model_alias::tests::test_openrouter_aliases ... ok
[INFO] [stdout] test utils::model_alias::tests::test_siliconflow_aliases ... ok
[INFO] [stdout] test utils::model_alias::tests::test_together_and_fireworks_aliases ... ok
[INFO] [stdout] test utils::option::tests::arrayable_deserializes_arrays_before_single_json_values ... ok
[INFO] [stdout] test utils::option::tests::detects_present_option_values ... ok
[INFO] [stdout] test utils::option::tests::filters_missing_values ... ok
[INFO] [stdout] test utils::option::tests::normalizes_arrayable_values ... ok
[INFO] [stdout] test utils::option::tests::removes_undefined_entries ... ok
[INFO] [stdout] test utils::provider_options::tests::parse_provider_options_returns_none_for_missing_or_null_provider ... ok
[INFO] [stdout] test utils::provider_options::tests::parse_provider_options_validates_provider_value ... ok
[INFO] [stdout] test utils::provider_reference::tests::checks_file_part_source_provider_reference ... ok
[INFO] [stdout] test utils::provider_reference::tests::resolves_provider_reference_or_returns_error_carrier ... ok
[INFO] [stdout] test utils::reasoning::tests::budget_missing_percentage_records_warning ... ok
[INFO] [stdout] test utils::reasoning::tests::converts_only_provider_reasoning_levels ... ok
[INFO] [stdout] test utils::reasoning::tests::detects_custom_reasoning_like_ai_sdk ... ok
[INFO] [stdout] test utils::reasoning::tests::maps_budget_with_default_percentages_and_bounds ... ok
[INFO] [stdout] test utils::reasoning::tests::maps_effort_and_records_warnings ... ok
[INFO] [stdout] test utils::runtime::tests::exposes_runtime_user_agent_and_version ... ok
[INFO] [stdout] test utils::serial_job::tests::serial_job_executor_returns_job_errors ... ok
[INFO] [stdout] test utils::download::tests::download_data_url_decodes_percent_payloads ... ok
[INFO] [stdout] test utils::settings::tests::load_api_key_prefers_explicit_value ... ok
[INFO] [stdout] test utils::settings::tests::load_api_key_reads_environment_or_errors ... ok
[INFO] [stdout] test utils::settings::tests::load_optional_setting_returns_none_when_missing ... ok
[INFO] [stdout] test utils::settings::tests::load_setting_prefers_explicit_then_environment ... ok
[INFO] [stdout] test utils::streaming_tool_call::tests::tracker_builds_provider_metadata ... ok
[INFO] [stdout] test utils::streaming_tool_call::tests::tracker_emits_parts_when_arguments_become_parsable_json ... ok
[INFO] [stdout] test utils::streaming_tool_call::tests::tracker_flushes_incomplete_tool_calls ... ok
[INFO] [stdout] test utils::streaming_tool_call::tests::tracker_preserves_empty_provider_id ... ok
[INFO] [stdout] test utils::streaming_tool_call::tests::tracker_requires_id_on_new_tool_call ... ok
[INFO] [stdout] test utils::streaming_tool_call::tests::tracker_validates_new_tool_call_type ... ok
[INFO] [stdout] test utils::serial_job::tests::serial_job_executor_runs_jobs_in_submission_order ... ok
[INFO] [stdout] test utils::download::tests::download_data_url_enforces_size_limit ... ok
[INFO] [stdout] test utils::url::tests::test_join_url ... ok
[INFO] [stdout] test utils::url::tests::is_url_supported_matches_ai_sdk_prefix_and_pattern_rules ... ok
[INFO] [stdout] test utils::url::tests::test_join_url_segments ... ok
[INFO] [stdout] test utils::url::tests::test_normalize_url ... ok
[INFO] [stdout] test utils::url::tests::test_real_world_cases ... ok
[INFO] [stdout] test utils::url::tests::test_without_trailing_slash_matches_ai_sdk_semantics ... ok
[INFO] [stdout] test utils::url::tests::test_with_query_params_replaces_search_string ... ok
[INFO] [stdout] test utils::utf8_decoder::tests::test_complete_utf8_characters ... ok
[INFO] [stdout] test utils::utf8_decoder::tests::test_ascii_characters ... ok
[INFO] [stdout] test utils::utf8_decoder::tests::test_emoji_sequences ... ok
[INFO] [stdout] test utils::utf8_decoder::tests::test_empty_input ... ok
[INFO] [stdout] test utils::utf8_decoder::tests::test_flush ... ok
[INFO] [stdout] test utils::utf8_decoder::tests::test_incomplete_utf8_sequences ... ok
[INFO] [stdout] test utils::utf8_decoder::tests::test_mixed_content ... ok
[INFO] [stdout] test utils::url::tests::is_url_supported_treats_star_like_ai_sdk_replace ... ok
[INFO] [stdout] test utils::utf8_decoder::tests::test_reset ... ok
[INFO] [stdout] test utils::validate_types::tests::safe_validate_types_preserves_raw_value_on_failure ... ok
[INFO] [stdout] test utils::validate_types::tests::schema_without_runtime_validator_is_an_explicit_failure ... ok
[INFO] [stdout] test utils::validate_types::tests::validate_types_returns_typed_value ... ok
[INFO] [stdout] test video::tests::adapter_preserves_supported_metadata_helpers ... ok
[INFO] [stdout] test video::tests::adapter_create_task_uses_capability ... ok
[INFO] [stdout] test video::tests::adapter_materialize_video_reference_uses_capability ... ok
[INFO] [stdout] test video::tests::video_model_trait_includes_metadata ... ok
[INFO] [stdout] test video::tests::adapter_query_task_uses_capability ... ok
[INFO] [stdout] test utils::download::tests::download_data_url_decodes_bytes_and_media_type ... ok
[INFO] [stdout] test retry::backoff::tests::test_retry_success_on_second_attempt ... ok
[INFO] [stdout] test retry::policy::tests::test_retry_exhaustion ... ok
[INFO] [stdout] test retry::policy::tests::test_retry_success_on_second_attempt ... ok
[INFO] [stdout] test retry_api::tests::retry_with_policy_backend_works ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 553 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.19s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/gcp_auth_alignment_test.rs (/opt/rustwide/target/debug/deps/gcp_auth_alignment_test-21023de057910888)
[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" "6411ad398dec158ebc6ba8c2dc1c3e9062ab13e9d4b3bfe4ac91777a0f42bd13", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6411ad398dec158ebc6ba8c2dc1c3e9062ab13e9d4b3bfe4ac91777a0f42bd13", kill_on_drop: false }`
[INFO] [stdout] 6411ad398dec158ebc6ba8c2dc1c3e9062ab13e9d4b3bfe4ac91777a0f42bd13
