[INFO] cloning repository https://github.com/doublewordai/onwards [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/doublewordai/onwards" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoublewordai%2Fonwards", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoublewordai%2Fonwards'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 05db8d4049b60260192993a94885140fd92de048 [INFO] testing doublewordai/onwards against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoublewordai%2Fonwards" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/doublewordai/onwards [INFO] finished tweaking git repo https://github.com/doublewordai/onwards [INFO] tweaked toml for git repo https://github.com/doublewordai/onwards written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/doublewordai/onwards on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/doublewordai/onwards 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded notify-types v2.0.0 [INFO] [stderr] Downloaded rstest v0.26.1 [INFO] [stderr] Downloaded auto-future v1.0.0 [INFO] [stderr] Downloaded async-trait v0.1.89 [INFO] [stderr] Downloaded reserve-port v2.3.0 [INFO] [stderr] Downloaded rand_xoshiro v0.7.0 [INFO] [stderr] Downloaded rust-multipart-rfc7578_2 v0.8.0 [INFO] [stderr] Downloaded darling_macro v0.21.0 [INFO] [stderr] Downloaded anstyle-wincon v3.0.9 [INFO] [stderr] Downloaded metrics-exporter-prometheus v0.16.2 [INFO] [stderr] Downloaded metrics-util v0.19.1 [INFO] [stderr] Downloaded metrics v0.24.2 [INFO] [stderr] Downloaded bon-macros v3.6.5 [INFO] [stderr] Downloaded cc v1.2.30 [INFO] [stderr] Downloaded raw-cpuid v11.5.0 [INFO] [stderr] Downloaded serde_json v1.0.141 [INFO] [stderr] Downloaded governor v0.10.1 [INFO] [stderr] Downloaded clap_builder v4.5.41 [INFO] [stderr] Downloaded axum-test v17.3.0 [INFO] [stderr] Downloaded darling_core v0.21.0 [INFO] [stderr] Downloaded prettyplease v0.2.36 [INFO] [stderr] Downloaded spinning_top v0.3.0 [INFO] [stderr] Downloaded rstest_macros v0.26.1 [INFO] [stderr] Downloaded anyhow v1.0.100 [INFO] [stderr] Downloaded darling v0.21.0 [INFO] [stderr] Downloaded clap_derive v4.5.41 [INFO] [stderr] Downloaded clap v4.5.41 [INFO] [stderr] Downloaded quanta v0.12.6 [INFO] [stderr] Downloaded axum-prometheus v0.8.0 [INFO] [stderr] Downloaded bon v3.6.5 [INFO] [stderr] Downloaded anstream v0.6.19 [INFO] [stderr] Downloaded nonzero_ext v0.3.0 [INFO] [stderr] Downloaded bytesize v2.0.1 [INFO] [stderr] Downloaded anstyle-query v1.1.3 [INFO] [stderr] Downloaded kqueue v1.1.1 [INFO] [stderr] Downloaded notify v8.1.0 [INFO] [stderr] Downloaded relative-path v1.9.3 [INFO] [stderr] Downloaded tokio v1.47.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b4189e520383327629dccadbbd5311bd5a22509c411da55f2c75a7fc35274c6c [INFO] running `Command { std: "docker" "start" "-a" "b4189e520383327629dccadbbd5311bd5a22509c411da55f2c75a7fc35274c6c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b4189e520383327629dccadbbd5311bd5a22509c411da55f2c75a7fc35274c6c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b4189e520383327629dccadbbd5311bd5a22509c411da55f2c75a7fc35274c6c", kill_on_drop: false }` [INFO] [stdout] b4189e520383327629dccadbbd5311bd5a22509c411da55f2c75a7fc35274c6c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ded1d733f12317094d75ec0e49c6d882905674063a0e28c217c865e2d12f53c9 [INFO] running `Command { std: "docker" "start" "-a" "ded1d733f12317094d75ec0e49c6d882905674063a0e28c217c865e2d12f53c9", kill_on_drop: false }` [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling tracing-core v0.1.34 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling socket2 v0.6.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling mio v1.0.4 [INFO] [stderr] Compiling cc v1.2.30 [INFO] [stderr] Compiling raw-cpuid v11.5.0 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling openssl v0.10.73 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling darling_core v0.21.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling tokio v1.47.0 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling prettyplease v0.2.36 [INFO] [stderr] Compiling serde_json v1.0.141 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Compiling rand_xoshiro v0.7.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling sketches-ddsketch v0.3.0 [INFO] [stderr] Compiling mime v0.3.17 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling anstyle-query v1.1.3 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling gimli v0.31.1 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.1 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling openssl-probe v0.1.6 [INFO] [stderr] Compiling portable-atomic v1.11.1 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling anstream v0.6.19 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling axum-core v0.5.2 [INFO] [stderr] Compiling serde_path_to_error v0.1.17 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling openssl-sys v0.9.109 [INFO] [stderr] Compiling quanta v0.12.6 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling rustc-demangle v0.1.26 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling clap_lex v0.7.5 [INFO] [stderr] Compiling matchit v0.8.4 [INFO] [stderr] Compiling metrics v0.24.2 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling clap_builder v4.5.41 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling darling_macro v0.21.0 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling clap_derive v4.5.41 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling darling v0.21.0 [INFO] [stderr] Compiling bon-macros v3.6.5 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling inotify v0.11.0 [INFO] [stderr] Compiling addr2line v0.24.2 [INFO] [stderr] Compiling metrics-util v0.19.1 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling metrics-exporter-prometheus v0.16.2 [INFO] [stderr] Compiling hyper v1.6.0 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling tokio-util v0.7.15 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling spinning_top v0.3.0 [INFO] [stderr] Compiling tower-http v0.6.6 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling web-time v1.1.0 [INFO] [stderr] Compiling futures-timer v3.0.3 [INFO] [stderr] Compiling notify-types v2.0.0 [INFO] [stderr] Compiling nonzero_ext v0.3.0 [INFO] [stderr] Compiling tokio-stream v0.1.17 [INFO] [stderr] Compiling governor v0.10.1 [INFO] [stderr] Compiling tracing-subscriber v0.3.19 [INFO] [stderr] Compiling notify v8.1.0 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling clap v4.5.41 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling hyper-util v0.1.16 [INFO] [stderr] Compiling backtrace v0.3.75 [INFO] [stderr] Compiling bon v3.6.5 [INFO] [stderr] Compiling axum v0.8.4 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling axum-prometheus v0.8.0 [INFO] [stderr] Compiling onwards v0.9.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 08s [INFO] running `Command { std: "docker" "inspect" "ded1d733f12317094d75ec0e49c6d882905674063a0e28c217c865e2d12f53c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ded1d733f12317094d75ec0e49c6d882905674063a0e28c217c865e2d12f53c9", kill_on_drop: false }` [INFO] [stdout] ded1d733f12317094d75ec0e49c6d882905674063a0e28c217c865e2d12f53c9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c309739053214e0debb9c759cffc394cc8aa7301311d022df412d69dc99e61bf [INFO] running `Command { std: "docker" "start" "-a" "c309739053214e0debb9c759cffc394cc8aa7301311d022df412d69dc99e61bf", kill_on_drop: false }` [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling time-core v0.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling winnow v0.7.12 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling cookie v0.18.1 [INFO] [stderr] Compiling diff v0.1.13 [INFO] [stderr] Compiling relative-path v1.9.3 [INFO] [stderr] Compiling glob v0.3.2 [INFO] [stderr] Compiling yansi v1.0.1 [INFO] [stderr] Compiling reserve-port v2.3.0 [INFO] [stderr] Compiling assert-json-diff v2.0.2 [INFO] [stderr] Compiling bytesize v2.0.1 [INFO] [stderr] Compiling auto-future v1.0.0 [INFO] [stderr] Compiling time-macros v0.2.22 [INFO] [stderr] Compiling deranged v0.4.0 [INFO] [stderr] Compiling pretty_assertions v1.4.1 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Compiling rstest_macros v0.26.1 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling time v0.3.41 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling hyper v1.6.0 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling governor v0.10.1 [INFO] [stderr] Compiling rust-multipart-rfc7578_2 v0.8.0 [INFO] [stderr] Compiling proc-macro-crate v3.3.0 [INFO] [stderr] Compiling hyper-util v0.1.16 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling axum v0.8.4 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling rstest v0.26.1 [INFO] [stderr] Compiling axum-prometheus v0.8.0 [INFO] [stderr] Compiling axum-test v17.3.0 [INFO] [stderr] Compiling onwards v0.9.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 34.68s [INFO] running `Command { std: "docker" "inspect" "c309739053214e0debb9c759cffc394cc8aa7301311d022df412d69dc99e61bf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c309739053214e0debb9c759cffc394cc8aa7301311d022df412d69dc99e61bf", kill_on_drop: false }` [INFO] [stdout] c309739053214e0debb9c759cffc394cc8aa7301311d022df412d69dc99e61bf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] f6009d3706e9f98eb7f40ec42cc36f3f09c36746f489724f8bbe932720104539 [INFO] running `Command { std: "docker" "start" "-a" "f6009d3706e9f98eb7f40ec42cc36f3f09c36746f489724f8bbe932720104539", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/onwards-9a9f38a5cd094075) [INFO] [stdout] [INFO] [stdout] running 75 tests [INFO] [stdout] test handlers::tests::test_filter_headers_adds_x_forwarded_proto ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_custom_auth_header_prefix ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_adds_authorization_when_onwards_key_present ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_comprehensive_browser_request ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_custom_auth_header_name ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_keeps_safe_headers ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_custom_header_name_and_prefix ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_empty_auth_header_prefix ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_no_authorization_when_onwards_key_absent ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_preserves_provider_specific_headers ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_strips_all_sec_ch_ua_variants ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_strips_browser_context_headers ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_strips_auth_headers ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_strips_browser_security_headers ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_strips_caching_headers ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_strips_model_override_header ... ok [INFO] [stdout] test handlers::tests::test_filter_headers_strips_hop_by_hop_headers ... ok [INFO] [stdout] test handlers::tests::test_path_stripping_false_positive ... ok [INFO] [stdout] test handlers::tests::test_path_stripping_with_duplicate_prefix ... ok [INFO] [stdout] test handlers::tests::test_path_stripping_with_actual_duplicate_paths ... ok [INFO] [stdout] test handlers::tests::test_path_stripping_with_query_params ... ok [INFO] [stdout] test handlers::tests::test_path_stripping_without_duplicate ... ok [INFO] [stdout] test target::tests::test_concurrency_limiter_allows_requests ... ok [INFO] [stdout] test target::tests::test_concurrency_limiter_releases_on_drop ... ok [INFO] [stdout] test handlers::tests::test_path_stripping_with_different_prefix ... ok [INFO] [stdout] test target::tests::test_from_config_merges_global_keys_with_target_keys ... ok [INFO] [stdout] test target::tests::test_from_config_no_global_keys ... ok [INFO] [stdout] test target::tests::test_normalize_url_adds_trailing_slash ... ok [INFO] [stdout] test target::tests::test_per_key_concurrency_limiting_not_configured ... ok [INFO] [stdout] test target::tests::test_concurrency_limiter_blocks_at_capacity ... ok [INFO] [stdout] test target::tests::test_from_config_target_without_keys_gets_global_keys ... ok [INFO] [stdout] test target::tests::test_per_key_concurrency_limiting_configured ... ok [INFO] [stdout] test target::tests::test_per_key_rate_limiting_with_literal_key ... ok [INFO] [stdout] test target::tests::test_rate_limiter_trait_allows_requests ... ok [INFO] [stdout] test target::tests::test_rate_limiter_trait_can_change_state ... ok [INFO] [stdout] test target::tests::test_target_spec_conversion_normalizes_url ... ok [INFO] [stdout] test target::tests::test_rate_limiter_trait_blocks_requests ... ok [INFO] [stdout] test target::tests::test_per_key_rate_limiting_with_actual_key ... ok [INFO] [stdout] test target::tests::test_per_key_rate_limiting_no_rate_limit_configured ... ok [INFO] [stdout] test target::tests::test_target_without_concurrency_limit_config ... ok [INFO] [stdout] test target::tests::test_target_with_rate_limit_config ... ok [INFO] [stdout] test target::tests::test_target_without_rate_limit_config ... ok [INFO] [stdout] test target::tests::test_url_joining_after_normalization ... ok [INFO] [stdout] test target::tests::test_target_with_concurrency_limit_config ... ok [INFO] [stdout] test tests::response_headers_pricing::test_no_pricing_headers_when_not_configured ... ok [INFO] [stdout] test tests::response_headers_pricing::test_pricing_preserved_in_error_response_headers ... ok [INFO] [stdout] test tests::response_headers_pricing::test_pricing_header_with_only_input_price ... ok [INFO] [stdout] test tests::test_body_transformation_returns_none ... ok [INFO] [stdout] test tests::response_headers_pricing::test_pricing_added_to_response_headers_when_configured ... ok [INFO] [stdout] test tests::test_body_transformation_applied ... ok [INFO] [stdout] test tests::response_headers_pricing::test_pricing_header_with_only_output_price ... ok [INFO] [stdout] test tests::test_body_transformation_not_applied_when_none ... ok [INFO] [stdout] test tests::response_headers_pricing::test_pricing_headers_with_different_models ... ok [INFO] [stdout] test tests::test_empty_targets_returns_404 ... ok [INFO] [stdout] test tests::test_concurrency_limiting_below_limits ... ok [INFO] [stdout] test tests::test_model_override_header_takes_precedence ... ok [INFO] [stdout] test tests::test_models_endpoint_returns_proper_model_list ... ok [INFO] [stdout] test tests::test_openai_non_streaming_not_transformed ... ok [INFO] [stdout] test tests::test_openai_streaming_include_usage_transformation ... ok [INFO] [stdout] test tests::test_models_endpoint_filters_by_bearer_token ... ok [INFO] [stdout] test tests::test_multiple_targets_routing ... ok [INFO] [stdout] test tests::test_rate_limiting_blocks_requests ... ok [INFO] [stdout] test tests::test_rate_limiting_allows_requests ... ok [INFO] [stdout] test tests::test_request_and_response_details ... ok [INFO] [stdout] test tests::test_rate_limiting_with_mixed_targets ... ok [INFO] [stdout] test tests::test_transformation_path_filtering ... ok [INFO] [stdout] test tests::test_concurrency_limiting_at_limits ... ok [INFO] [stdout] test tests::test_per_key_concurrency_limiting ... ok [INFO] [stdout] test target::tests::test_config_watcher_handles_errors ... ok [INFO] [stdout] test target::tests::test_config_watcher_updates_target_properties ... ok [INFO] [stdout] test target::tests::test_config_watcher_updates_targets ... ok [INFO] [stdout] test target::tests::test_config_watcher_removes_deleted_targets ... ok [INFO] [stdout] test tests::metrics::test_metrics_server_for_missing_targets ... ok [INFO] [stdout] test tests::metrics::test_metrics_server_for_v1_models ... ok [INFO] [stdout] test target::tests::test_config_watcher_multiple_updates ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 75 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/onwards-df0e6c8c575cc31e) [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 onwards [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test src/lib.rs - (line 8) - compile ... ok [INFO] [stdout] test src/lib.rs - build_metrics_router (line 317) - compile ... ok [INFO] [stdout] test src/lib.rs - build_router (line 279) - compile ... ok [INFO] [stdout] test src/lib.rs - extract_model_from_request (line 232) ... ok [INFO] [stdout] test src/lib.rs - extract_model_from_request (line 219) ... ok [INFO] [stdout] test src/lib.rs - AppState (line 117) - compile ... ok [INFO] [stdout] test src/lib.rs - build_metrics_layer_and_handle (line 361) - compile ... ok [INFO] [stdout] test src/lib.rs - AppState (line 106) - compile ... ok [INFO] [stdout] test src/lib.rs - BodyTransformFn (line 72) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] all doctests ran in 2.47s; merged doctests compilation took 2.43s [INFO] running `Command { std: "docker" "inspect" "f6009d3706e9f98eb7f40ec42cc36f3f09c36746f489724f8bbe932720104539", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f6009d3706e9f98eb7f40ec42cc36f3f09c36746f489724f8bbe932720104539", kill_on_drop: false }` [INFO] [stdout] f6009d3706e9f98eb7f40ec42cc36f3f09c36746f489724f8bbe932720104539