[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
