[INFO] cloning repository https://github.com/TokenFleet-AI/agent-proxy-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TokenFleet-AI/agent-proxy-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTokenFleet-AI%2Fagent-proxy-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTokenFleet-AI%2Fagent-proxy-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d5b30506e57087ed4b7e7f869394c058238338b9 [INFO] testing TokenFleet-AI/agent-proxy-rust against 1.97.0-beta.6 for beta-1.98-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTokenFleet-AI%2Fagent-proxy-rust" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-1-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/TokenFleet-AI/agent-proxy-rust [INFO] finished tweaking git repo https://github.com/TokenFleet-AI/agent-proxy-rust [INFO] tweaked toml for git repo https://github.com/TokenFleet-AI/agent-proxy-rust written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/TokenFleet-AI/agent-proxy-rust on toolchain 1.97.0-beta.6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/TokenFleet-AI/agent-proxy-rust 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.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded wiremock v0.6.5 [INFO] [stderr] Downloaded axum-macros v0.5.1 [INFO] [stderr] Downloaded quinn-proto v0.11.15 [INFO] [stderr] Downloaded typed-builder v0.20.1 [INFO] [stderr] Downloaded typed-builder-macro v0.20.1 [INFO] [stderr] Downloaded dashmap v6.2.1 [INFO] [stderr] Downloaded r2d2_sqlite v0.25.0 [INFO] [stderr] Downloaded serial_test v3.5.0 [INFO] [stderr] Downloaded rstest v0.26.1 [INFO] [stderr] Downloaded relative-path v1.9.3 [INFO] [stderr] Downloaded futures-timer v3.0.4 [INFO] [stderr] Downloaded rstest_macros v0.26.1 [INFO] [stderr] Downloaded which v7.0.3 [INFO] [stderr] Downloaded serial_test_derive v3.5.0 [INFO] [stderr] Downloaded llm-bridge-core v0.5.0 [INFO] [stderr] Downloaded exception-collector v0.1.0 [INFO] [stderr] Downloaded tokenless-schema v1.3.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df [INFO] running `Command { std: "docker" "start" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df", 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" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df", 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" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling quote v1.0.46 [INFO] [stderr] Compiling memchr v2.8.2 [INFO] [stderr] Compiling smallvec v1.15.2 [INFO] [stderr] Compiling log v0.4.33 [INFO] [stderr] Compiling bytes v1.12.0 [INFO] [stderr] Compiling cc v1.2.65 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling writeable v0.6.3 [INFO] [stderr] Compiling litemap v0.8.2 [INFO] [stderr] Compiling icu_properties_data v2.2.0 [INFO] [stderr] Compiling icu_normalizer_data v2.2.0 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling socket2 v0.6.4 [INFO] [stderr] Compiling mio v1.2.1 [INFO] [stderr] Compiling rustls-pki-types v1.15.0 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling rustls v0.23.41 [INFO] [stderr] Compiling bitflags v2.13.0 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling getrandom v0.4.3 [INFO] [stderr] Compiling webpki-roots v1.0.8 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling chacha20 v0.10.1 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling anyhow v1.0.103 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling syn v2.0.118 [INFO] [stderr] Compiling regex-syntax v0.8.11 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling http v1.4.2 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling serde_json v1.0.150 [INFO] [stderr] Compiling rand v0.10.1 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling simd-adler32 v0.3.9 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling scheduled-thread-pool v0.2.7 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling uuid v1.23.4 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling r2d2 v0.8.10 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling webpki-roots v0.26.11 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Compiling env_home v0.1.0 [INFO] [stderr] Compiling either v1.16.0 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling dashmap v6.2.1 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling arc-swap v1.9.2 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling which v7.0.3 [INFO] [stderr] Compiling synstructure v0.13.2 [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 serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling typed-builder-macro v0.20.1 [INFO] [stderr] Compiling axum-macros v0.5.1 [INFO] [stderr] Compiling regex v1.12.4 [INFO] [stderr] Compiling tokio v1.52.3 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling rustls-webpki v0.103.13 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling axum-core v0.5.6 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling zerofrom v0.1.8 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling typed-builder v0.20.1 [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 tokenless-schema v1.3.0 [INFO] [stderr] Compiling icu_locale_core v2.2.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling chrono v0.4.45 [INFO] [stderr] Compiling secrecy v0.10.3 [INFO] [stderr] Compiling llm-bridge-core v0.5.0 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling icu_provider v2.2.0 [INFO] [stderr] Compiling icu_normalizer v2.2.0 [INFO] [stderr] Compiling icu_properties v2.2.0 [INFO] [stderr] Compiling agent-proxy-rust-storage v1.2.1 (/opt/rustwide/workdir/crates/storage) [INFO] [stderr] Compiling hyper v1.10.1 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling idna_adapter v1.2.2 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tower-http v0.6.11 [INFO] [stderr] Compiling ureq v2.12.1 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling r2d2_sqlite v0.25.0 [INFO] [stderr] Compiling exception-collector v0.1.0 [INFO] [stderr] Compiling hyper-rustls v0.27.9 [INFO] [stderr] Compiling axum v0.8.9 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling agent-proxy-rust-storage-sqlite v1.2.1 (/opt/rustwide/workdir/crates/storage-sqlite) [INFO] [stderr] Compiling agent-proxy-rust-core v1.2.1 (/opt/rustwide/workdir/crates/core) [INFO] [stderr] Compiling agent-proxy-rust-bridge v1.2.1 (/opt/rustwide/workdir/crates/bridge) [INFO] [stderr] Compiling agent-proxy-rust-model-router v1.2.1 (/opt/rustwide/workdir/crates/model-router) [INFO] [stderr] Compiling agent-proxy-rust-compress v1.2.1 (/opt/rustwide/workdir/crates/compress) [INFO] [stderr] Compiling agent-proxy-rust-resilience v1.2.1 (/opt/rustwide/workdir/crates/resilience) [INFO] [stderr] Compiling agent-proxy-e2e-tests v1.2.1 (/opt/rustwide/workdir/tests) [INFO] [stderr] Compiling agent-proxy-rust-cost v1.2.1 (/opt/rustwide/workdir/crates/cost) [INFO] [stderr] Compiling agent-proxy-rust-server v1.2.1 (/opt/rustwide/workdir/apps/server) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 23s [INFO] running `Command { std: "docker" "inspect" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df", 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" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling winnow v1.0.3 [INFO] [stderr] Compiling memchr v2.8.2 [INFO] [stderr] Compiling toml_datetime v1.1.1+spec-1.1.0 [INFO] [stderr] Compiling rstest_macros v0.26.1 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling relative-path v1.9.3 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling futures-timer v3.0.4 [INFO] [stderr] Compiling deadpool-runtime v0.1.4 [INFO] [stderr] Compiling assert-json-diff v2.0.2 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling serial_test_derive v3.5.0 [INFO] [stderr] Compiling agent-proxy-rust-storage v1.2.1 (/opt/rustwide/workdir/crates/storage) [INFO] [stderr] Compiling deadpool v0.12.3 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling h2 v0.4.15 [INFO] [stderr] Compiling toml_parser v1.1.2+spec-1.1.0 [INFO] [stderr] Compiling toml_edit v0.25.12+spec-1.1.0 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling which v7.0.3 [INFO] [stderr] Compiling proc-macro-crate v3.5.0 [INFO] [stderr] Compiling exception-collector v0.1.0 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling serial_test v3.5.0 [INFO] [stderr] Compiling tower-http v0.6.11 [INFO] [stderr] Compiling regex v1.12.4 [INFO] [stderr] Compiling hyper v1.10.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling rstest v0.26.1 [INFO] [stderr] Compiling hyper-rustls v0.27.9 [INFO] [stderr] Compiling axum v0.8.9 [INFO] [stderr] Compiling wiremock v0.6.5 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling agent-proxy-rust-storage-sqlite v1.2.1 (/opt/rustwide/workdir/crates/storage-sqlite) [INFO] [stderr] Compiling agent-proxy-rust-core v1.2.1 (/opt/rustwide/workdir/crates/core) [INFO] [stderr] Compiling agent-proxy-rust-bridge v1.2.1 (/opt/rustwide/workdir/crates/bridge) [INFO] [stderr] Compiling agent-proxy-rust-model-router v1.2.1 (/opt/rustwide/workdir/crates/model-router) [INFO] [stderr] Compiling agent-proxy-rust-compress v1.2.1 (/opt/rustwide/workdir/crates/compress) [INFO] [stderr] Compiling agent-proxy-rust-resilience v1.2.1 (/opt/rustwide/workdir/crates/resilience) [INFO] [stderr] Compiling agent-proxy-e2e-tests v1.2.1 (/opt/rustwide/workdir/tests) [INFO] [stderr] Compiling agent-proxy-rust-cost v1.2.1 (/opt/rustwide/workdir/crates/cost) [INFO] [stderr] Compiling agent-proxy-rust-server v1.2.1 (/opt/rustwide/workdir/apps/server) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 55.63s [INFO] running `Command { std: "docker" "inspect" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df", 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" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.56s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_e2e_tests-f5f7eb91848826e4) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/bridge.rs (/opt/rustwide/target/debug/deps/bridge-aa24bb3ded673c9e) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test test_e2e_reject_invalid_content_type ... ok [INFO] [stdout] test test_e2e_passthrough_same_protocol ... ok [INFO] [stdout] test test_e2e_openai_client_to_anthropic_upstream_roundtrip ... ok [INFO] [stderr] Running tests/compression.rs (/opt/rustwide/target/debug/deps/compression-93eae79393670eb3) [INFO] [stdout] test test_e2e_anthropic_client_to_openai_upstream_roundtrip ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test test_tools_increase_request_size ... ok [INFO] [stdout] test test_should_not_compress_small_requests ... ok [INFO] [stdout] test test_should_compress_request_with_large_tools ... ok [INFO] [stdout] test test_should_skip_compression_when_disabled ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/failover.rs (/opt/rustwide/target/debug/deps/failover-f9ce67d01f735f09) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_should_skip_disabled_channels ... ok [INFO] [stdout] test test_should_error_when_all_channels_unhealthy ... ok [INFO] [stdout] test test_should_failover_to_backup_on_primary_unhealthy ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/passthrough.rs (/opt/rustwide/target/debug/deps/passthrough-babd6b5942052061) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_should_passthrough_anthropic_request_and_track_cost ... ok [INFO] [stdout] test test_should_propagate_upstream_errors ... ok [INFO] [stdout] test test_should_forward_auth_headers_to_upstream ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/streaming.rs (/opt/rustwide/target/debug/deps/streaming-30a40083ad00077c) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_should_parse_usage_from_streaming_response ... ok [INFO] [stdout] test test_should_receive_sse_frames_individually ... ok [INFO] [stdout] test test_should_stream_sse_frames ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_bridge-dd5c8a2e4e88f575) [INFO] [stdout] [INFO] [stdout] running 19 tests [INFO] [stdout] test tests::test_middleware_name ... ok [INFO] [stdout] test tests::test_conversion_direction_openai_to_anthropic ... ok [INFO] [stdout] test tests::test_conversion_direction_same_protocol_is_passthrough ... ok [INFO] [stdout] test tests::test_middleware_debug ... ok [INFO] [stdout] test tests::test_missing_target_protocol_returns_bad_request ... ok [INFO] [stdout] test tests::test_passthrough_openai_same_protocol ... ok [INFO] [stdout] test tests::test_reject_deeply_nested_json ... ok [INFO] [stdout] test tests::test_mismatched_protocol_body_converts_with_warning ... ok [INFO] [stdout] test tests::test_response_reverse_conversion_after_anthropic_to_openai_request ... ok [INFO] [stdout] test tests::test_response_passthrough_without_reverse_flag ... ok [INFO] [stdout] test tests::test_passthrough_anthropic_same_protocol ... ok [INFO] [stdout] test tests::test_invalid_json_body_returns_error ... ok [INFO] [stdout] test tests::test_on_response_streaming_skips_when_no_reverse_needed ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_compress-9daf0c830ad5f3fa) [INFO] [stdout] test tests::test_anthropic_to_openai_chat_request_converts_path_and_body ... ok [INFO] [stdout] test tests::test_openai_to_anthropic_request_converts_path_and_body ... ok [INFO] [stdout] test tests::test_accept_non_json_content_type_validation_moved_upstream ... ok [INFO] [stdout] test tests::test_missing_detected_format_returns_bad_request ... ok [INFO] [stdout] test tests::test_conversion_direction_anthropic_to_openai ... ok [INFO] [stdout] test tests::test_on_response_streaming_converts_openai_sse_to_anthropic_sse ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test token_counter::tests::test_empty ... ok [INFO] [stdout] test token_counter::tests::test_invalid_utf8_falls_back_to_empty ... ok [INFO] [stdout] test token_counter::tests::test_short_text ... ok [INFO] [stdout] test token_counter::tests::test_json_like_body ... ok [INFO] [stdout] test token_counter::tests::test_four_chars_is_one_token ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_core-c19a8125a55350e0) [INFO] [stdout] [INFO] [stdout] running 58 tests [INFO] [stdout] test auth::tests::test_auth_state_has_auth_empty ... ok [INFO] [stdout] test auth::tests::test_auth_state_has_auth_with_key ... ok [INFO] [stdout] test auth::tests::test_extract_api_key_none ... ok [INFO] [stdout] test auth::tests::test_extract_api_key_malformed_bearer ... ok [INFO] [stdout] test auth::tests::test_extract_api_key_bearer ... ok [INFO] [stdout] test auth::tests::test_extract_api_key_x_api_key ... ok [INFO] [stdout] test auth::tests::test_extract_api_key_x_api_key_priority ... ok [INFO] [stdout] test compression::tests::test_default_is_zero ... ok [INFO] [stdout] test compression::tests::test_parse_missing_all_fields_returns_default ... ok [INFO] [stdout] test compression::tests::test_parse_partial_json ... ok [INFO] [stdout] test compression::tests::test_parse_valid_json ... ok [INFO] [stdout] test compression::tests::test_proxy_response_saved ... ok [INFO] [stdout] test compression::tests::test_parse_invalid_json_returns_none ... ok [INFO] [stdout] test compression::tests::test_proxy_schema_saved ... ok [INFO] [stdout] test compression::tests::test_saturating_sub_prevents_underflow ... ok [INFO] [stdout] test compression::tests::test_total_saved_sums_all_layers ... ok [INFO] [stdout] test config::tests::test_default_config_values ... ok [INFO] [stdout] test config::tests::test_has_auth_with_api_key ... ok [INFO] [stdout] test error::tests::test_channel_selection_status ... ok [INFO] [stdout] test error::tests::test_error_to_response_returns_json ... ok [INFO] [stdout] test error::tests::test_internal_from_anyhow ... ok [INFO] [stdout] test error::tests::test_upstream_429_passthrough ... ok [INFO] [stdout] test error::tests::test_upstream_error_status ... ok [INFO] [stdout] test report::tests::test_incremental_empty_returns_none ... ok [INFO] [stdout] test report::tests::test_incremental_first_read ... ok [INFO] [stdout] test middleware::tests::test_on_response_runs_in_reverse_registration_order ... ok [INFO] [stdout] test middleware::tests::test_on_request_runs_in_registration_order ... ok [INFO] [stdout] test middleware::tests::test_on_request_aborts_on_error ... ok [INFO] [stdout] test report::tests::test_per_category_splitting ... ok [INFO] [stdout] test server::tests::test_auth_failure_returns_401 ... ok [INFO] [stdout] test server::tests::test_body_too_large_returns_413 ... ok [INFO] [stdout] test compression::tests::test_tokenless_saved ... ok [INFO] [stdout] test server::tests::test_auth_success_passes_through ... ok [INFO] [stdout] test config::tests::test_has_auth_with_role_mapping ... ok [INFO] [stdout] test server::tests::test_extract_usage_from_sse_mixed_format ... ok [INFO] [stdout] test server::tests::test_normalize_sse_format ... ok [INFO] [stdout] test server::tests::test_extract_usage_from_sse_with_space ... ok [INFO] [stdout] test server::tests::test_extract_usage_from_sse_without_space ... ok [INFO] [stdout] test types::tests::test_api_format_from_path ... ok [INFO] [stdout] test types::tests::test_detect_agent_type_claude ... ok [INFO] [stdout] test types::tests::test_detect_agent_type_codex ... ok [INFO] [stdout] test types::tests::test_connection_context_extensions ... ok [INFO] [stdout] test types::tests::test_detect_agent_type_from_user_agent ... ok [INFO] [stdout] test types::tests::test_detect_agent_type_gemini ... ok [INFO] [stdout] test server::tests::test_unknown_path_returns_404 ... ok [INFO] [stdout] test types::tests::test_detect_agent_type_unknown ... ok [INFO] [stdout] test server::tests::test_health_endpoint_returns_200 ... ok [INFO] [stdout] test server::tests::test_no_channel_returns_503 ... ok [INFO] [stdout] test server::tests::test_successful_proxy_returns_200 ... ok [INFO] [stdout] test config::tests::test_has_auth_with_token ... ok [INFO] [stdout] test error::tests::test_all_variants_have_distinct_codes ... ok [INFO] [stdout] test error::tests::test_bad_request_status_and_code ... ok [INFO] [stdout] test error::tests::test_internal_error_status ... ok [INFO] [stdout] test error::tests::test_rate_limited_status ... ok [INFO] [stdout] test error::tests::test_unauthorized_status ... ok [INFO] [stdout] test report::tests::test_incremental_no_new_data_returns_meta ... ok [INFO] [stdout] test report::tests::test_incremental_second_read_only_new_lines ... ok [INFO] [stdout] test types::tests::test_proxy_request_is_streaming ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 58 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_cost-a1983bd222e55512) [INFO] [stdout] [INFO] [stdout] running 20 tests [INFO] [stdout] test tests::test_calc_cost_per_token ... ok [INFO] [stdout] test tests::test_calc_cost_char_based ... ok [INFO] [stdout] test tests::test_calc_cost_tiered_tokens_with_cache_read ... ok [INFO] [stdout] test tests::test_calc_cost_credits ... ok [INFO] [stdout] test tests::test_calc_subscription_cost_zero ... ok [INFO] [stdout] test tests::test_calc_cost_per_unit ... ok [INFO] [stdout] test tests::test_calc_cost_tiered_tokens_first_tier ... ok [INFO] [stdout] test tests::test_extract_usage_missing_returns_zero ... ok [INFO] [stdout] test tests::test_extract_anthropic_usage ... ok [INFO] [stdout] test tests::test_extract_openai_chat_usage ... ok [INFO] [stdout] test tests::test_extract_usage_none_format_autodetects ... ok [INFO] [stdout] test tests::test_extract_openai_responses_usage ... ok [INFO] [stdout] test tests::test_extract_openai_responses_streaming ... ok [INFO] [stdout] test tests::test_extract_anthropic_streaming_message_delta ... ok [INFO] [stdout] test tests::test_extract_openai_chat_streaming ... ok [INFO] [stdout] test tests::test_pricing_calculation::case_1 ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_model_router-be2a28c470f2874e) [INFO] [stdout] test tests::test_pricing_calculation::case_2 ... ok [INFO] [stdout] test tests::test_pricing_calculation::case_3 ... ok [INFO] [stdout] test tests::test_should_autodetect_openai_responses_via_input_tokens_details ... ok [INFO] [stdout] test tests::test_should_autodetect_anthropic_via_cache_creation_tokens ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 46 tests [INFO] [stdout] test tests::test_all_channels_empty_key_returns_error ... ok [INFO] [stdout] test tests::test_channel_with_empty_api_key_is_skipped ... ok [INFO] [stdout] test tests::test_has_api_key_runtime_override ... ok [INFO] [stdout] test tests::test_health_cooldown_expired ... ok [INFO] [stdout] test tests::test_health_mark_unhealthy_then_healthy ... ok [INFO] [stdout] test tests::test_resolve_target_protocol_fallback_to_first ... ok [INFO] [stdout] test tests::test_resolve_target_protocol_empty_protocols ... ok [INFO] [stdout] test tests::test_resolve_target_protocol_force_not_in_protocols ... ok [INFO] [stdout] test tests::test_resolve_target_protocol_no_client_format ... ok [INFO] [stdout] test tests::test_empty_key_skipped_in_fallback_phase ... ok [INFO] [stdout] test tests::test_resolve_target_protocol_passthrough_client_match ... ok [INFO] [stdout] test tests::test_resolve_upstream_url_empty_base_url ... ok [INFO] [stdout] test tests::test_resolve_upstream_url_no_matching_protocol ... ok [INFO] [stdout] test tests::test_resolve_upstream_url_returns_base_url_and_rewrite_path ... ok [INFO] [stdout] test tests::test_resolve_upstream_url_no_rewrite_path ... ok [INFO] [stdout] test tests::test_select_all_unhealthy_returns_error ... ok [INFO] [stdout] test tests::test_select_flatfee_has_quota_and_healthy ... ok [INFO] [stdout] test tests::test_select_block_when_flatfee_exhausted_block ... ok [INFO] [stdout] test types::tests::test_billing_dimension_serde_tokens ... ok [INFO] [stdout] test types::tests::test_channel_billing_from_storage_unknown_billing ... ok [INFO] [stdout] test types::tests::test_channel_billing_metered_has_pricing ... ok [INFO] [stdout] test types::tests::test_channel_state_cooldown_expired_first_failure ... ok [INFO] [stdout] test types::tests::test_channel_billing_from_storage_flatfee ... ok [INFO] [stdout] test types::tests::test_channel_state_cooldown_not_expired_third_failure ... ok [INFO] [stdout] test types::tests::test_channel_state_mark_unhealthy ... ok [INFO] [stdout] test tests::test_resolve_target_protocol_force_with_empty_protocols ... ok [INFO] [stdout] test types::tests::test_channel_billing_from_storage_metered ... ok [INFO] [stdout] test types::tests::test_channel_state_record_success_clears_failure ... ok [INFO] [stdout] test types::tests::test_exponential_cooldown_first_failure_60s ... ok [INFO] [stdout] test types::tests::test_exponential_cooldown_second_failure_300s ... ok [INFO] [stdout] test tests::test_select_metered_when_flatfee_exhausted_fallback ... ok [INFO] [stdout] test types::tests::test_exponential_cooldown_third_failure_900s ... ok [INFO] [stdout] test tests::test_resolve_target_protocol_force_valid ... ok [INFO] [stdout] test types::tests::test_pricing_serde_char_based ... ok [INFO] [stdout] test types::tests::test_pricing_serde_credits ... ok [INFO] [stdout] test types::tests::test_pricing_serde_per_unit ... ok [INFO] [stdout] test types::tests::test_billing_dimension_serde_images_with_quality ... ok [INFO] [stdout] test types::tests::test_pricing_serde_per_token ... ok [INFO] [stdout] test types::tests::test_pricing_serde_tiered_tokens ... ok [INFO] [stdout] test types::tests::test_channel_state_within_cooldown ... ok [INFO] [stdout] test types::tests::test_tier_price_serde_unit ... ok [INFO] [stdout] test types::tests::test_tier_price_serde_token ... ok [INFO] [stdout] test types::tests::test_channel_billing_is_flat_fee ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_resilience-8f012a96b5c9c34c) [INFO] [stdout] test tests::test_disabled_channel_skipped ... ok [INFO] [stdout] test tests::test_no_candidates_for_unknown_model ... ok [INFO] [stdout] test types::tests::test_channel_state_default_healthy ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 46 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test circuit_breaker::tests::test_circuit_opens_after_threshold ... ok [INFO] [stdout] test circuit_breaker::tests::test_open_circuit_rejects_requests ... ok [INFO] [stdout] test rate_limiter::tests::test_different_channels_independent ... ok [INFO] [stdout] test rate_limiter::tests::test_token_bucket_exhaustion ... ok [INFO] [stdout] test rate_limiter::tests::test_token_bucket_initial_has_tokens ... ok [INFO] [stdout] test rate_limiter::tests::test_rate_limiter_rejects_when_limit_exceeded ... ok [INFO] [stdout] test retry::tests::test_is_not_retryable_client_errors ... ok [INFO] [stdout] test retry::tests::test_is_retryable_server_errors ... ok [INFO] [stdout] test retry::tests::test_is_not_retryable_success ... ok [INFO] [stdout] test circuit_breaker::tests::test_circuit_allows_probe_after_cooldown ... ok [INFO] [stdout] test circuit_breaker::tests::test_success_closes_half_open_circuit ... ok [INFO] [stdout] test retry::tests::test_backoff_delays ... ok [INFO] [stdout] test retry::tests::test_backoff_capped_at_max ... ok [INFO] [stdout] test circuit_breaker::tests::test_circuit_starts_closed ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_server-f985d93e34c61d47) [INFO] [stdout] [INFO] [stdout] running 26 tests [INFO] [stdout] test admin::tests::time_range::test_days_zero_means_only_current_day ... ok [INFO] [stdout] test admin::tests::time_range::test_no_tz_offset_uses_rolling_window ... ok [INFO] [stdout] test admin::tests::time_range::test_tz_offset_beijing_today ... ok [INFO] [stdout] test admin::tests::time_range::test_tz_offset_beijing_two_days ... ok [INFO] [stdout] test admin::tests::time_range::test_tz_offset_negative_west_of_utc ... ok [INFO] [stdout] test admin_auth::tests::test_constant_time_eq_different_length ... ok [INFO] [stdout] test admin_auth::tests::test_constant_time_eq_empty ... ok [INFO] [stdout] test admin_auth::tests::test_constant_time_eq_equal ... ok [INFO] [stdout] test health_probe::tests::test_should_report_healthy_for_healthy ... ok [INFO] [stdout] test health_probe::tests::test_should_report_healthy_for_rate_limited ... ok [INFO] [stdout] test admin_auth::tests::test_resolve_empty_env_generates_key ... ok [INFO] [stdout] test health_probe::tests::test_should_report_unhealthy_for_invalid_key ... ok [INFO] [stdout] test health_probe::tests::test_should_map_health_status_correctly ... ok [INFO] [stdout] test admin_auth::tests::test_resolve_no_env_generates_key ... ok [INFO] [stdout] test health_probe::tests::test_should_report_unhealthy_for_unreachable ... ok [INFO] [stdout] test admin_auth::tests::test_constant_time_eq_different ... ok [INFO] [stdout] test admin::tests::time_range::test_tz_offset_preserves_project_filter ... ok [INFO] [stdout] test admin_auth::tests::test_resolve_from_env ... ok [INFO] [stdout] test admin::tests::test_unauthorized_with_wrong_key ... ok [INFO] [stdout] test admin::tests::test_unauthorized_without_admin_key ... ok [INFO] [stdout] test admin::tests::test_list_projects_returns_array ... ok [INFO] [stdout] test admin::tests::test_list_providers ... ok [INFO] [stdout] test admin::tests::test_get_channel_not_found ... ok [INFO] [stdout] test admin::tests::test_update_channel ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_storage-b3f2141a696d8c64) [INFO] [stdout] test admin::tests::test_admin_health ... ok [INFO] [stdout] test admin::tests::test_list_channels ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test types::tests::test_protocol_entry_deserialize_full ... ok [INFO] [stdout] test types::tests::test_protocol_entry_deserialize_without_rewrite_path ... ok [INFO] [stdout] test types::tests::test_protocol_entry_serialize_skips_none_rewrite_path ... ok [INFO] [stdout] test types::tests::test_protocol_entry_serialize_with_rewrite_path ... ok [INFO] [stdout] test types::tests::test_channel_force_protocol_some ... ok [INFO] [stdout] test types::tests::test_channel_force_protocol_none_by_default ... ok [INFO] [stdout] test types::tests::test_protocols_json_array_deserialize ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_proxy_rust_storage_sqlite-075a8067a64ff818) [INFO] [stdout] test types::tests::test_channel_no_base_url_field ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 23 tests [INFO] [stdout] test tests::test_seed_models_populated ... ok [INFO] [stdout] test tests::test_set_model_alias_enabled ... ok [INFO] [stdout] test tests::test_seed_providers_populated ... ok [INFO] [stdout] test tests::test_get_model_alias_target_returns_correct_model ... ok [INFO] [stdout] test tests::test_seed_models_linked_to_providers ... ok [INFO] [stdout] test tests::test_models_foreign_key_to_providers ... ok [INFO] [stdout] test tests::test_get_model_alias_target_returns_none_for_disabled ... ok [INFO] [stdout] test tests::test_seed_providers_include_deepseek ... ok [INFO] [stdout] test tests::test_providers_table_has_correct_columns ... ok [INFO] [stdout] test tests::test_delete_model_alias ... ok [INFO] [stdout] test tests::test_list_model_aliases ... ok [INFO] [stdout] test tests::test_models_table_exists ... ok [INFO] [stdout] test tests::test_upsert_model_alias_creates_new ... ok [INFO] [stdout] test tests::test_upsert_model_alias_updates_existing ... ok [INFO] [stdout] test tests::test_models_table_has_correct_columns ... ok [INFO] [stdout] test tests::test_storage_get_provider_found ... ok [INFO] [stdout] test tests::test_seed_models_include_deepseek_flash ... ok [INFO] [stdout] test tests::test_storage_get_provider_not_found ... ok [INFO] [stdout] test tests::test_storage_list_models_filtered_by_provider ... ok [INFO] [stdout] test tests::test_storage_list_models_unfiltered ... ok [INFO] [stdout] test tests::test_providers_table_exists ... ok [INFO] [stdout] test tests::test_seed_models_include_deepseek ... ok [INFO] [stdout] test tests::test_storage_list_providers ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.50s [INFO] [stdout] [INFO] [stderr] Running tests/storage_contract.rs (/opt/rustwide/target/debug/deps/storage_contract-c7ac96e9d8823af8) [INFO] [stdout] [INFO] [stdout] running 23 tests [INFO] [stdout] test test_get_channel_fields ... ok [INFO] [stdout] test test_list_channels_filtered_by_model ... ok [INFO] [stdout] test test_max_connections_is_sixteen ... ok [INFO] [stdout] test test_list_channels_all ... ok [INFO] [stdout] test test_list_projects_returns_sorted_unique ... ok [INFO] [stdout] test test_list_projects_empty_returns_empty_vec ... ok [INFO] [stdout] test test_insert_and_query_cost_records ... ok [INFO] [stdout] test test_upsert_channel_preserves_existing_api_key ... ok [INFO] [stdout] test test_delete_channel ... ok [INFO] [stdout] test test_list_models_filtered_by_provider ... ok [INFO] [stdout] test test_insert_and_query_subscription_fees ... ok [INFO] [stdout] test test_get_provider_not_found ... ok [INFO] [stdout] test test_get_model_exists ... ok [INFO] [stdout] test test_health_check_returns_true ... ok [INFO] [stdout] test test_list_providers_after_migration ... ok [INFO] [stdout] test test_mark_channel_healthy ... ok [INFO] [stdout] test test_list_models_all ... ok [INFO] [stdout] test test_record_channel_failure_sequence ... ok [INFO] [stdout] test test_update_channel ... ok [INFO] [stdout] test test_upsert_channel_overwrites_when_new_key_non_empty ... ok [INFO] [stdout] test test_get_provider_exists ... ok [INFO] [stdout] test test_insert_switch_log ... ok [INFO] [stdout] test test_migrate_is_idempotent ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.30s [INFO] [stdout] [INFO] [stderr] Doc-tests agent_proxy_e2e_tests [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests agent_proxy_rust_bridge [INFO] [stdout] [INFO] [stderr] Doc-tests agent_proxy_rust_compress [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests agent_proxy_rust_core [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test crates/core/src/server.rs - server::AgentProxyBuilder (line 146) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.41s; merged doctests compilation took 0.41s [INFO] [stderr] Doc-tests agent_proxy_rust_cost [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests agent_proxy_rust_model_router [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stderr] Doc-tests agent_proxy_rust_resilience [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests agent_proxy_rust_storage [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests agent_proxy_rust_storage_sqlite [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" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df", kill_on_drop: false }` [INFO] [stdout] 8b488cee6a25c78d0c8ad2cef566d5617c1bb34e915f485354b5a36c7537a4df