[INFO] cloning repository https://github.com/bug-ops/tap-mcp-bridge [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bug-ops/tap-mcp-bridge" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbug-ops%2Ftap-mcp-bridge", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbug-ops%2Ftap-mcp-bridge'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a780fa1a67b8b97702b40a4a2137742e7f7b781d [INFO] testing bug-ops/tap-mcp-bridge/a780fa1a67b8b97702b40a4a2137742e7f7b781d against try#bd7d74411512a3dd3b35d2f699c51dd2557c7e7e+cargoflags=-Zbuild-dir-new-layout for pr-149852-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbug-ops%2Ftap-mcp-bridge" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-2-tc2/source/.cargo/config.toml [INFO] removed /workspace/builds/worker-2-tc2/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/bug-ops/tap-mcp-bridge [INFO] finished tweaking git repo https://github.com/bug-ops/tap-mcp-bridge [INFO] tweaked toml for git repo https://github.com/bug-ops/tap-mcp-bridge written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/bug-ops/tap-mcp-bridge on toolchain bd7d74411512a3dd3b35d2f699c51dd2557c7e7e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/bug-ops/tap-mcp-bridge 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" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f5a3c913076b870243d174563cc1c50637f34b0421a5d4b5ce803f4aec94a8c3 [INFO] running `Command { std: "docker" "start" "-a" "f5a3c913076b870243d174563cc1c50637f34b0421a5d4b5ce803f4aec94a8c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f5a3c913076b870243d174563cc1c50637f34b0421a5d4b5ce803f4aec94a8c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f5a3c913076b870243d174563cc1c50637f34b0421a5d4b5ce803f4aec94a8c3", kill_on_drop: false }` [INFO] [stdout] f5a3c913076b870243d174563cc1c50637f34b0421a5d4b5ce803f4aec94a8c3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "build" "--frozen" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }` [INFO] [stdout] 30346e331f66fdacd9dd3983f3d3ac22045b54a4df3651296e860896e3287089 [INFO] running `Command { std: "docker" "start" "-a" "30346e331f66fdacd9dd3983f3d3ac22045b54a4df3651296e860896e3287089", kill_on_drop: false }` [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling foldhash v0.2.0 [INFO] [stderr] Compiling bytes v1.11.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling slab v0.4.11 [INFO] [stderr] Compiling zmij v1.0.13 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling indexmap v2.12.1 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling cc v1.2.52 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling rustls-pki-types v1.13.2 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Compiling untrusted v0.9.0 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling time-core v0.1.6 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling rustls v0.23.36 [INFO] [stderr] Compiling cmake v0.1.57 [INFO] [stderr] Compiling openssl-src v300.5.4+3.5.4 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling deranged v0.5.5 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling time-macros v0.2.24 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling aws-lc-sys v0.35.0 [INFO] [stderr] Compiling openssl-sys v0.9.111 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling ref-cast v1.0.25 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling time v0.3.44 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling rustls-webpki v0.103.8 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling ref-cast-impl v1.0.25 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling simd-adler32 v0.3.8 [INFO] [stderr] Compiling ipnet v2.11.0 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling aws-lc-rs v1.15.2 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling openssl v0.10.75 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling schemars_derive v1.2.0 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling hyper-util v0.1.19 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling webpki-roots v1.0.5 [INFO] [stderr] Compiling iri-string v0.7.10 [INFO] [stderr] Compiling rust_decimal v1.39.0 [INFO] [stderr] Compiling ryu v1.0.22 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling dyn-clone v1.0.20 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling schemars v1.2.0 [INFO] [stderr] Compiling flate2 v1.1.5 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling rmcp-macros v0.12.0 [INFO] [stderr] Compiling toml_parser v1.0.6+spec-1.1.0 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling simple_asn1 v0.6.3 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling ed25519 v2.2.3 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling toml_datetime v0.7.5+spec-1.1.0 [INFO] [stderr] Compiling serde_spanned v1.0.4 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling pem v3.0.6 [INFO] [stderr] Compiling toml_writer v1.0.6+spec-1.1.0 [INFO] [stderr] Compiling pastey v0.2.1 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling toml v0.9.11+spec-1.1.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling ed25519-dalek v2.2.0 [INFO] [stderr] Compiling uuid v1.19.0 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling rmcp v0.12.0 [INFO] [stderr] Compiling secrecy v0.10.3 [INFO] [stderr] Compiling tracing-serde v0.2.0 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling lru v0.16.3 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling jsonwebtoken v10.2.0 [INFO] [stderr] Compiling josekit v0.10.3 [INFO] [stderr] Compiling tap-mcp-bridge v0.2.0 (/opt/rustwide/workdir/tap-mcp-bridge) [INFO] [stderr] Compiling tap-mcp-server v0.2.0 (/opt/rustwide/workdir/tap-mcp-server) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8m 56s [INFO] running `Command { std: "docker" "inspect" "30346e331f66fdacd9dd3983f3d3ac22045b54a4df3651296e860896e3287089", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "30346e331f66fdacd9dd3983f3d3ac22045b54a4df3651296e860896e3287089", kill_on_drop: false }` [INFO] [stdout] 30346e331f66fdacd9dd3983f3d3ac22045b54a4df3651296e860896e3287089 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "--no-run" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }` [INFO] [stdout] f002eacda23f84a04338d26d1079b5e95f3af920a76d58122ab6d3a96413a591 [INFO] running `Command { std: "docker" "start" "-a" "f002eacda23f84a04338d26d1079b5e95f3af920a76d58122ab6d3a96413a591", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling zerocopy v0.8.33 [INFO] [stderr] Compiling zerocopy-derive v0.8.33 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling linux-raw-sys v0.11.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling alloca v0.4.0 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling openssl v0.10.75 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling clap_lex v0.7.6 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling clap_builder v4.5.54 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling schemars v1.2.0 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling simple_asn1 v0.6.3 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling rmcp v0.12.0 [INFO] [stderr] Compiling josekit v0.10.3 [INFO] [stderr] Compiling jsonwebtoken v10.2.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rust_decimal v1.39.0 [INFO] [stderr] Compiling uuid v1.19.0 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling criterion-plot v0.8.1 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling clap v4.5.54 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling page_size v0.6.0 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling proptest v1.9.0 [INFO] [stderr] Compiling criterion v0.8.1 [INFO] [stderr] Compiling tap-mcp-bridge v0.2.0 (/opt/rustwide/workdir/tap-mcp-bridge) [INFO] [stderr] Compiling tap-mcp-server v0.2.0 (/opt/rustwide/workdir/tap-mcp-server) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 49s [INFO] running `Command { std: "docker" "inspect" "f002eacda23f84a04338d26d1079b5e95f3af920a76d58122ab6d3a96413a591", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f002eacda23f84a04338d26d1079b5e95f3af920a76d58122ab6d3a96413a591", kill_on_drop: false }` [INFO] [stdout] f002eacda23f84a04338d26d1079b5e95f3af920a76d58122ab6d3a96413a591 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "-Zbuild-dir-new-layout", kill_on_drop: false }` [INFO] [stdout] d087b8cdc946505785a518ec3aa8f7b225f00acf603b4a7b53f4066a99cc234b [INFO] running `Command { std: "docker" "start" "-a" "d087b8cdc946505785a518ec3aa8f7b225f00acf603b4a7b53f4066a99cc234b", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.52s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/build/tap-mcp-bridge/6a07c10a458a62b2/deps/tap_mcp_bridge-6a07c10a458a62b2) [INFO] [stdout] [INFO] [stdout] running 587 tests [INFO] [stdout] test error::tests::test_invalid_merchant_url_error ... ok [INFO] [stdout] test error::tests::test_invalid_consumer_id_error ... ok [INFO] [stdout] test error::tests::test_merchant_error ... ok [INFO] [stdout] test mcp::cart::tests::test_add_to_cart_params_creation ... ok [INFO] [stdout] test mcp::cart::tests::test_add_to_cart_params_new_cart ... ok [INFO] [stdout] test mcp::cart::tests::test_add_to_cart_params_quantity_edge_cases ... ok [INFO] [stdout] test mcp::cart::tests::test_add_to_cart_request_no_cart_id ... ok [INFO] [stdout] test mcp::cart::tests::test_add_to_cart_request_serialization ... ok [INFO] [stdout] test mcp::cart::tests::test_multiple_operations_same_cart ... ok [INFO] [stdout] test mcp::cart::tests::test_remove_from_cart_params_creation ... ok [INFO] [stdout] test mcp::cart::tests::test_update_cart_item_params_creation ... ok [INFO] [stdout] test mcp::cart::tests::test_update_cart_item_params_zero_quantity ... ok [INFO] [stdout] test mcp::cart::tests::test_update_cart_item_request ... ok [INFO] [stdout] test mcp::cart::tests::test_update_cart_item_request_deserialization ... ok [INFO] [stdout] test mcp::cart::tests::test_variant_id_none_vs_some ... ok [INFO] [stdout] test mcp::http::tests::test_build_url_with_query_empty_value ... ok [INFO] [stdout] test mcp::http::tests::test_build_url_with_query_multiple_params ... ok [INFO] [stdout] test mcp::http::tests::test_build_url_with_query_no_params ... ok [INFO] [stdout] test mcp::http::tests::test_build_url_with_query_path_with_segments ... ok [INFO] [stdout] test mcp::http::tests::test_build_url_with_query_simple ... ok [INFO] [stdout] test mcp::cart::tests::test_add_to_cart_request_with_variant ... ok [INFO] [stdout] test mcp::cart::tests::test_cart_id_formats ... ok [INFO] [stdout] test mcp::cart::tests::test_get_cart_params_creation ... ok [INFO] [stdout] test mcp::http::tests::test_http_method_clone ... ok [INFO] [stdout] test mcp::http::tests::test_create_http_client ... ok [INFO] [stdout] test mcp::http::tests::test_http_method_as_str ... ok [INFO] [stdout] test mcp::http::tests::test_http_method_eq ... ok [INFO] [stdout] test mcp::http::tests::test_build_url_with_query_unicode ... ok [INFO] [stdout] test mcp::http::tests::test_validate_search_param_empty ... ok [INFO] [stdout] test mcp::http::tests::test_validate_search_param_max_length ... ok [INFO] [stdout] test mcp::http::tests::test_validate_search_param_null_bytes ... ok [INFO] [stdout] test mcp::http::tests::test_validate_search_param_valid ... ok [INFO] [stdout] test mcp::http::tests::test_validate_search_param_non_ascii ... ok [INFO] [stdout] test mcp::models::tests::test_address_without_phone ... ok [INFO] [stdout] test mcp::models::tests::test_cart_item_serialization ... ok [INFO] [stdout] test mcp::models::tests::test_address_creation ... ok [INFO] [stdout] test mcp::models::tests::test_address_serialization ... ok [INFO] [stdout] test mcp::models::tests::test_cart_item_creation ... ok [INFO] [stdout] test mcp::models::tests::test_cart_state_creation ... ok [INFO] [stdout] test mcp::models::tests::test_cart_state_with_items ... ok [INFO] [stdout] test mcp::models::tests::test_currency_codes ... ok [INFO] [stdout] test mcp::models::tests::test_decimal_zero_edge_case ... ok [INFO] [stdout] test mcp::models::tests::test_empty_string_fields ... ok [INFO] [stdout] test mcp::models::tests::test_order_creation ... ok [INFO] [stdout] test mcp::models::tests::test_order_line_item_serialization ... ok [INFO] [stdout] test mcp::models::tests::test_large_quantity_edge_case ... ok [INFO] [stdout] test mcp::models::tests::test_order_status_all_variants ... ok [INFO] [stdout] test mcp::models::tests::test_order_status_deserialization ... ok [INFO] [stdout] test mcp::models::tests::test_order_line_item ... ok [INFO] [stdout] test mcp::models::tests::test_payment_result_creation ... ok [INFO] [stdout] test mcp::models::tests::test_order_status_serialization ... ok [INFO] [stdout] test mcp::models::tests::test_payment_result_serialization ... ok [INFO] [stdout] test mcp::models::tests::test_payment_result_declined ... ok [INFO] [stdout] test mcp::models::tests::test_payment_status_all_variants ... ok [INFO] [stdout] test mcp::models::tests::test_payment_status_equality ... ok [INFO] [stdout] test mcp::models::tests::test_product_catalog_serialization ... ok [INFO] [stdout] test mcp::models::tests::test_product_creation ... ok [INFO] [stdout] test mcp::models::tests::test_product_serialization ... ok [INFO] [stdout] test mcp::models::tests::test_product_with_variants ... ok [INFO] [stdout] test mcp::orders::tests::test_create_order_params ... ok [INFO] [stdout] test mcp::orders::tests::test_create_order_params_no_options ... ok [INFO] [stdout] test mcp::orders::tests::test_create_order_params_separate_billing ... ok [INFO] [stdout] test mcp::orders::tests::test_create_order_request_no_optionals ... ok [INFO] [stdout] test mcp::orders::tests::test_delivery_options ... ok [INFO] [stdout] test mcp::orders::tests::test_create_order_request_serialization ... ok [INFO] [stdout] test mcp::orders::tests::test_get_order_params_creation ... ok [INFO] [stdout] test mcp::orders::tests::test_order_id_formats ... ok [INFO] [stdout] test mcp::payment::tests::test_bank_account_data_conversion ... ok [INFO] [stdout] test mcp::orders::tests::test_promo_codes ... ok [INFO] [stdout] test mcp::payment::tests::test_card_data_conversion ... ok [INFO] [stdout] test mcp::payment::tests::test_digital_wallet_data_conversion ... ok [INFO] [stdout] test mcp::payment::tests::test_empty_cvv ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_deserialization_bank_account ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_deserialization_card ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_deserialization_digital_wallet ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_params_card ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_params_bank_account ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_params_bank_account_types ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_params_card_various_formats ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_params_digital_wallet ... ok [INFO] [stdout] test mcp::payment::tests::test_payment_method_params_wallet_types ... ok [INFO] [stdout] test mcp::payment::tests::test_process_payment_params_creation ... ok [INFO] [stdout] test mcp::payment::tests::test_process_payment_params_with_digital_wallet ... ok [INFO] [stdout] test mcp::payment::tests::test_process_payment_params_with_bank_account ... ok [INFO] [stdout] test mcp::payment::tests::test_various_expiry_year_formats ... ok [INFO] [stdout] test mcp::payment::tests::test_process_payment_request_serialization ... ok [INFO] [stdout] test mcp::payment::tests::test_process_payment_request_deserialization ... ok [INFO] [stdout] test mcp::products::tests::test_contextual_data_country_codes ... ok [INFO] [stdout] test mcp::products::tests::test_empty_search_query ... ok [INFO] [stdout] test mcp::products::tests::test_get_product_params_creation ... ok [INFO] [stdout] test mcp::products::tests::test_get_products_params_creation ... ok [INFO] [stdout] test mcp::products::tests::test_get_products_params_no_filters ... ok [INFO] [stdout] test mcp::products::tests::test_get_products_params_with_search ... ok [INFO] [stdout] test mcp::products::tests::test_get_product_params_various_ids ... ok [INFO] [stdout] test mcp::products::tests::test_get_products_params_edge_case_large_page ... ok [INFO] [stdout] test mcp::products::tests::test_ip_address_formats ... ok [INFO] [stdout] test mcp::products::tests::test_pagination_edge_cases ... ok [INFO] [stdout] test mcp::products::tests::test_platform_values ... ok [INFO] [stdout] test mcp::products::tests::test_product_catalog_response_with_products ... ok [INFO] [stdout] test mcp::products::tests::test_user_agent_strings ... ok [INFO] [stdout] test mcp::products::tests::test_product_catalog_response_deserialization ... ok [INFO] [stdout] test mcp::products::tests::test_zip_code_formats ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_active_to_canceled_at_period_end ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_active_to_paused_transition ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_active_update_quantity ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_past_due_failure_count ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_past_due_grace_period_expiration ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_past_due_record_failure ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_past_due_to_active_recovery ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_paused_resume_at ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_paused_to_active_transition ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_paused_to_canceled_transition ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_state_data_active_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_state_data_paused_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_state_data_canceled_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_state_data_trial_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_response_from_active ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_response_from_trial ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_response_roundtrip ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_status_active_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_status_canceled_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_status_expired_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_status_past_due_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_status_trial_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_subscription_status_paused_serialization ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_trial_ends_at ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_trial_is_expired ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_trial_not_expired ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_trial_to_active_transition ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_trial_to_canceled_transition ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_billing_cycle_annual_display ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_billing_cycle_custom_multi_day_display ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_billing_cycle_custom_single_day_display ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_billing_cycle_deserialization ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_billing_cycle_monthly_display ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_billing_cycle_onetime_display ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_billing_cycle_serialization ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_billing_cycle_weekly_display ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_plan_id_accepts_valid_chars ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_plan_id_empty_rejected ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_plan_id_exactly_64_chars_accepted ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_plan_id_rejects_path_traversal ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_plan_id_rejects_slash ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_plan_id_single_char_accepted ... ok [INFO] [stdout] test error::tests::test_error_display ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_active_to_canceled_immediate ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_plan_id_valid ... ok [INFO] [stdout] test mcp::subscriptions::lifecycle::tests::test_active_to_past_due_transition ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_subscription_id_empty_rejected ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_subscription_id_exactly_64_chars_accepted ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_subscription_id_rejects_special_chars ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_subscription_id_rejects_whitespace ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_subscription_id_too_long_rejected ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_subscription_id_valid ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_usage_action_deserialization ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_usage_action_increment_serialization ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_usage_action_set_serialization ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_flat_rate_minimum_price ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_flat_rate_with_setup_fee ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_hybrid_minimum_price ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_hybrid_zero_base_price ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_per_seat_minimum_price_no_minimum ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_per_seat_minimum_price_with_minimum ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_per_seat_minimum_price_zero_seats ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_pricing_model_serialization_flat_rate ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_pricing_model_serialization_tiered ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_tier_mode_graduated_serialization ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_tier_mode_volume_serialization ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_tiered_minimum_price_single_tier ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_tiered_minimum_price_empty_tiers ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_usage_aggregation_average_serialization ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_tiered_minimum_price_multiple_tiers ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_usage_aggregation_last_value_serialization ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_usage_aggregation_max_serialization ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_usage_aggregation_sum_serialization ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_usage_based_minimum_price_with_commitment ... ok [INFO] [stdout] test mcp::subscriptions::pricing::tests::test_usage_based_minimum_price_no_commitment ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_charge_half_period ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_charge_end_of_period ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_charge_invalid_date_before_start ... ok [INFO] [stdout] test mcp::cart::tests::test_item_id_formats ... ok [INFO] [stdout] test mcp::models::tests::test_cart_state_empty ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_credit_invalid_date_after_end ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_credit_invalid_date_before_start ... ok [INFO] [stdout] test mcp::http::tests::test_build_url_with_query_special_chars ... ok [INFO] [stdout] test mcp::subscriptions::models::tests::test_plan_id_too_long_rejected ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_charge_invalid_date_after_end ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_charge_start_of_period ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_charge_zero_duration_period ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_credit_end_of_period ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_credit_half_period ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_credit_start_of_period ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_credit_zero_duration_period ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_annual_day_clamped ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_custom_interval ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_custom_single_day ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_custom_large_interval ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_monthly_anchor_day_28 ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_monthly_anchor_day_clamped ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_onetime_no_validity ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_monthly ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_annual ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_onetime_with_validity ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_annual_month_clamped ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_weekly_monday ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_weekly_anchor_clamped ... ok [INFO] [stdout] test mcp::subscriptions::tools::tests::test_proration_behavior_create_prorations_serialization ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_weekly_saturday ... ok [INFO] [stdout] test mcp::subscriptions::proration::tests::test_calculate_next_billing_date_weekly_sunday ... ok [INFO] [stdout] test mcp::subscriptions::tools::tests::test_proration_behavior_all_variants ... ok [INFO] [stdout] test mcp::subscriptions::tools::tests::test_proration_behavior_always_invoice_serialization ... ok [INFO] [stdout] test mcp::subscriptions::tools::tests::test_proration_behavior_none_serialization ... ok [INFO] [stdout] test mcp::tools::tests::test_compute_content_digest_known_value ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_empty ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_rejects_127_0_0_1 ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_requires_https ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_ftp_rejected ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_invalid ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_rejects_localhost ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_rejects_localhost_plain ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_valid ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_with_path ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_with_port ... ok [INFO] [stdout] test mcp::tools::tests::test_validate_consumer_id_empty ... ok [INFO] [stdout] test mcp::tools::tests::test_validate_consumer_id_max_length ... ok [INFO] [stdout] test mcp::tools::tests::test_validate_consumer_id_valid ... ok [INFO] [stdout] test mcp::tools::tests::test_parse_merchant_url_ws_rejected ... ok [INFO] [stdout] test mcp::tools::tests::test_validate_consumer_id_alphanumeric_only ... ok [INFO] [stdout] test mcp::tools::tests::test_validate_consumer_id_invalid_characters ... ok [INFO] [stdout] test merchant::config::tests::test_auth_config_api_key ... ok [INFO] [stdout] test merchant::config::tests::test_all_endpoints_configured ... ok [INFO] [stdout] test mcp::tools::tests::test_validate_consumer_id_too_long ... ok [INFO] [stdout] test merchant::config::tests::test_auth_config_bearer ... ok [INFO] [stdout] test merchant::config::tests::test_auth_config_oauth2 ... ok [INFO] [stdout] test merchant::config::tests::test_endpoint_config_from_toml ... ok [INFO] [stdout] test merchant::config::tests::test_complete_config ... ok [INFO] [stdout] test merchant::config::tests::test_empty_api_prefix_default ... ok [INFO] [stdout] test merchant::config::tests::test_empty_field_mappings ... ok [INFO] [stdout] test merchant::config::tests::test_endpoint_config_default ... ok [INFO] [stdout] test merchant::config::tests::test_field_mappings_from_toml ... ok [INFO] [stdout] test merchant::config::tests::test_invalid_toml_syntax ... ok [INFO] [stdout] test merchant::config::tests::test_missing_required_base_url ... ok [INFO] [stdout] test merchant::config::tests::test_pagination_cursor_based ... ok [INFO] [stdout] test merchant::config::tests::test_merchant_config_default ... ok [INFO] [stdout] test merchant::config::tests::test_merchant_config_from_toml ... ok [INFO] [stdout] test merchant::config::tests::test_missing_required_name ... ok [INFO] [stdout] test merchant::config::tests::test_none_auth_config ... ok [INFO] [stdout] test merchant::config::tests::test_pagination_style ... ok [INFO] [stdout] test merchant::config::tests::test_pagination_style_default ... ok [INFO] [stdout] test merchant::config::tests::test_validate_double_slash_endpoint_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_env_var_starts_with_number_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_localhost_base_url_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_empty_base_url_allowed ... ok [INFO] [stdout] test merchant::config::tests::test_validate_endpoint_must_start_with_slash ... ok [INFO] [stdout] test merchant::config::tests::test_validate_loopback_base_url_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_env_var_name_invalid_chars ... ok [INFO] [stdout] test merchant::config::tests::test_validate_header_name_invalid_chars ... ok [INFO] [stdout] test merchant::config::tests::test_validate_http_base_url_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_null_byte_field_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_path_traversal_endpoint_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_oauth2_http_token_url_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_oauth2_localhost_token_url_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_prototype_pollution_field_rejected ... ok [INFO] [stdout] test merchant::config::tests::test_validate_sql_injection_field_rejected ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_clone ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_endpoint_resolver ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_from_file_not_found ... ok [INFO] [stdout] test merchant::config::tests::test_validate_valid_auth_configs ... ok [INFO] [stdout] test merchant::config::tests::test_validate_valid_config ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_config_accessor ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_default ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_field_mapper ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_from_toml ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_from_toml_empty ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_identity_conversion_with_empty_collections ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_minimal_config ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_from_toml_invalid ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_from_toml_missing_name ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_identity_conversions ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_new ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_with_all_auth_types ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_no_transformers ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_with_config ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_with_all_pagination_styles ... ok [INFO] [stdout] test merchant::endpoint::tests::test_configurable_clone ... ok [INFO] [stdout] test merchant::endpoint::tests::test_configurable_endpoint_resolver_defaults ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_with_custom_endpoints ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_with_field_mappings ... ok [INFO] [stdout] test merchant::default::tests::test_default_merchant_with_unicode_config ... ok [INFO] [stdout] test merchant::endpoint::tests::test_all_endpoints_with_same_resolver ... ok [INFO] [stdout] test merchant::endpoint::tests::test_configurable_endpoint_resolver_custom ... ok [INFO] [stdout] test merchant::endpoint::tests::test_configurable_endpoint_resolver_partial ... ok [INFO] [stdout] test merchant::endpoint::tests::test_configurable_multiple_template_placeholders ... ok [INFO] [stdout] test merchant::endpoint::tests::test_default_endpoint_resolver ... ok [INFO] [stdout] test merchant::endpoint::tests::test_empty_order_id ... ok [INFO] [stdout] test merchant::endpoint::tests::test_empty_product_id ... ok [INFO] [stdout] test merchant::endpoint::tests::test_remove_cart_item_with_long_id ... ok [INFO] [stdout] test merchant::endpoint::tests::test_configurable_no_template_placeholder ... ok [INFO] [stdout] test merchant::endpoint::tests::test_configurable_template_with_special_chars ... ok [INFO] [stdout] test merchant::endpoint::tests::test_default_endpoint_resolver_default_trait ... ok [INFO] [stdout] test merchant::endpoint::tests::test_empty_cart_id ... ok [INFO] [stdout] test merchant::endpoint::tests::test_product_endpoint_with_special_characters ... ok [INFO] [stdout] test merchant::endpoint::tests::test_product_endpoint_with_unicode ... ok [INFO] [stdout] test merchant::endpoint::tests::test_template_substitution ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_field_mapper_default ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_field_mapper_request_mapping ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_field_mapper_response_mapping ... ok [INFO] [stdout] test merchant::endpoint::tests::test_update_cart_item_with_empty_id ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_field_mapper_bidirectional ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_field_mapper_empty ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_field_mapper_multiple_mappings ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_case_sensitivity ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_clone ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_cow_borrowed_when_not_mapped ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_response_only_mappings ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_unicode_field_names ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_with_empty_string_key ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_with_empty_string_value ... ok [INFO] [stdout] test merchant::field_map::tests::test_identity_field_mapper ... ok [INFO] [stdout] test merchant::field_map::tests::test_identity_field_mapper_default ... ok [INFO] [stdout] test merchant::field_map::tests::test_identity_mapper_with_unicode ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_cow_owned_when_mapped ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_special_characters ... ok [INFO] [stdout] test merchant::field_map::tests::test_configurable_mapper_very_long_field_names ... ok [INFO] [stdout] test merchant::field_map::tests::test_has_mappings ... ok [INFO] [stdout] test merchant::field_map::tests::test_identity_mapper_cow_borrowed ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_endpoint_config_default ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_endpoint_config_validate_double_slash ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_field_mapping_config_validate_null_byte ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_endpoint_config_validate_path_traversal ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_endpoint_config_validate_valid ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_field_mapping_config_default ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_field_mapping_config_validate_forbidden_field_name ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_field_mapping_config_validate_valid ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_merchant_config_default ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_merchant_config_from_toml_basic ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_merchant_config_default_values ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_merchant_config_validate_invalid_endpoint ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_merchant_config_from_toml_full ... ok [INFO] [stdout] test merchant::field_map::tests::test_identity_mapper_with_empty_string ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_cancel ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_pause ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_payment_method ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_merchant_config_validate_success ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_settings_custom ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_settings_default ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_plan ... ok [INFO] [stdout] test merchant::subscription_config::tests::test_subscription_merchant_config_validate_invalid_field_mapping ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_usage ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_plans ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_plans_with_filters ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_proration_preview ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_resume ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_subscription ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_subscriptions ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_merchant_plan_catalog_passthrough ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_plan_query_params_custom ... ok [INFO] [stdout] test merchant::transform::tests::test_operation_all_variants ... ok [INFO] [stdout] test merchant::transform::tests::test_operation_clone ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_endpoint_resolver_usage_summary ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_circuit_breaker_error_display ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_merchant_creation ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_default_subscription_merchant_subscription_passthrough ... ok [INFO] [stdout] test merchant::subscription_traits::tests::test_plan_query_params_default ... ok [INFO] [stdout] test merchant::transform::tests::test_operation_debug ... ok [INFO] [stdout] test merchant::transform::tests::test_operation_equality ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_circuit_breaker_zero_reset_timeout ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_circuit_breaker_very_long_timeout ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_default_config ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_circuit_opens_after_threshold ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_error_propagation ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_failed_operation ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_circuit_breaker_high_failure_count ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_initial_state ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_successful_operation ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_thread_safety ... ok [INFO] [stdout] test reliability::retry::tests::test_delay_capped_at_max ... ok [INFO] [stdout] test reliability::retry::tests::test_delay_for_attempt ... ok [INFO] [stdout] test reliability::retry::tests::test_delay_for_attempt_large_values ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_circuit_open ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_crypto_error ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_invalid_consumer_id ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_invalid_url ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_merchant_error ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_rate_limit_exceeded ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_replay_attack ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_request_too_old ... ok [INFO] [stdout] test reliability::retry::tests::test_is_not_retryable_signature_error ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_policy_default ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_policy_new ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_policy_with_max_attempts ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_with_backoff_immediate_success ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_with_backoff_single_attempt ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_with_backoff_success_first_attempt ... ok [INFO] [stdout] test mcp::tools::tests::test_compute_content_digest_empty ... ok [INFO] [stdout] test security::audit::tests::test_audit_event_builder ... ok [INFO] [stdout] test security::audit::tests::test_audit_event_serialization ... ok [INFO] [stdout] test security::audit::tests::test_audit_event_with_error ... ok [INFO] [stdout] test security::audit::tests::test_audit_event_with_very_long_error ... ok [INFO] [stdout] test security::audit::tests::test_redact_consumer_id ... ok [INFO] [stdout] test security::audit::tests::test_redact_consumer_id_edge_cases ... ok [INFO] [stdout] test security::audit::tests::test_redact_credit_card ... ok [INFO] [stdout] test security::audit::tests::test_redact_credit_card_with_spaces ... ok [INFO] [stdout] test security::audit::tests::test_redact_credit_card_without_separators ... ok [INFO] [stdout] test security::audit::tests::test_redact_cvv ... ok [INFO] [stdout] test security::audit::tests::test_redact_cvv_no_space ... ok [INFO] [stdout] test security::audit::tests::test_redact_multiple_credit_cards ... ok [INFO] [stdout] test security::audit::tests::test_redact_sensitive_empty_string ... ok [INFO] [stdout] test security::audit::tests::test_redact_sensitive_preserves_safe_data ... ok [INFO] [stdout] test security::audit::tests::test_redact_sensitive_with_multiple_patterns ... ok [INFO] [stdout] test security::audit::tests::test_redact_ssn ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limit_config_default ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_with_backoff_timing ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limited_signer_enforces_limit ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limited_signer_preserves_signature_correctness ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_allows_requests_within_limit ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limited_signer_blocking_waits ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_circuit_closes_after_success_threshold ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_blocking_waits ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_circuit_half_open_after_timeout ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_concurrent_access ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_half_open_reopens_on_failure ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_rejects_excess_requests ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_very_high_rate ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_with_burst_size_one ... ok [INFO] [stdout] test tap::acro::tests::test_acro_creation ... ok [INFO] [stdout] test tap::acro::tests::test_acro_deserialization ... ok [INFO] [stdout] test tap::acro::tests::test_acro_different_data_different_signatures ... ok [INFO] [stdout] test tap::acro::tests::test_acro_different_keys_different_signatures ... ok [INFO] [stdout] test tap::acro::tests::test_acro_kid_matches_requirement ... ok [INFO] [stdout] test tap::acro::tests::test_acro_nonce_matches_requirement ... ok [INFO] [stdout] test tap::acro::tests::test_acro_serialization ... ok [INFO] [stdout] test tap::acro::tests::test_acro_signature_not_empty ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_precision_with_small_intervals ... ok [INFO] [stdout] test tap::acro::tests::test_contextual_data_creation ... ok [INFO] [stdout] test tap::acro::tests::test_device_data_creation ... ok [INFO] [stdout] test tap::acro::tests::test_signature_base_excludes_signature ... ok [INFO] [stdout] test tap::apc::tests::test_apc_creation ... ok [INFO] [stdout] test tap::apc::tests::test_apc_deserialization ... ok [INFO] [stdout] test tap::apc::tests::test_apc_different_data_different_signatures ... ok [INFO] [stdout] test tap::apc::tests::test_apc_different_keys_different_signatures ... ok [INFO] [stdout] test tap::apc::tests::test_apc_kid_matches_requirement ... ok [INFO] [stdout] test tap::apc::tests::test_apc_nonce_matches_requirement ... ok [INFO] [stdout] test tap::apc::tests::test_apc_serialization ... ok [INFO] [stdout] test tap::apc::tests::test_apc_signature_not_empty ... ok [INFO] [stdout] test tap::apc::tests::test_apc_signature_verifiable ... ok [INFO] [stdout] test tap::apc::tests::test_bank_account_creation ... ok [INFO] [stdout] test tap::apc::tests::test_bank_account_data_debug_does_not_leak_sensitive_data ... ok [INFO] [stdout] test tap::apc::tests::test_bank_account_last_four ... ok [INFO] [stdout] test tap::acro::tests::test_acro_signature_verifiable ... ok [INFO] [stdout] test tap::apc::tests::test_card_credential_hash_consistency ... ok [INFO] [stdout] test tap::apc::tests::test_card_data_creation ... ok [INFO] [stdout] test tap::apc::tests::test_card_credential_hash ... ok [INFO] [stdout] test tap::apc::tests::test_card_data_debug_does_not_leak_sensitive_data ... ok [INFO] [stdout] test tap::apc::tests::test_card_last_four ... ok [INFO] [stdout] test tap::apc::tests::test_digital_wallet_creation ... ok [INFO] [stdout] test tap::apc::tests::test_payment_method_card_encryption ... ok [INFO] [stdout] test tap::apc::tests::test_payment_method_bank_account_encryption ... ok [INFO] [stdout] test tap::apc::tests::test_payment_method_digital_wallet_encryption ... ok [INFO] [stdout] test tap::apc::tests::test_signature_base_excludes_signature ... ok [INFO] [stdout] test tap::jwk::tests::test_jwk_compute_thumbprint ... ok [INFO] [stdout] test tap::jwk::tests::test_jwk_from_verifying_key ... ok [INFO] [stdout] test tap::jwk::tests::test_jwk_thumbprint_canonical_json ... ok [INFO] [stdout] test tap::jwk::tests::test_jwk_thumbprint_matches_keyid ... ok [INFO] [stdout] test tap::jwk::tests::test_jwks_deserialization ... ok [INFO] [stdout] test tap::jwk::tests::test_jwks_roundtrip ... ok [INFO] [stdout] test tap::jwk::tests::test_different_keys_different_thumbprints ... ok [INFO] [stdout] test tap::jwk::tests::test_same_key_same_thumbprint ... ok [INFO] [stdout] test tap::jwk::tests::test_jwks_serialization ... ok [INFO] [stdout] test tap::jwt::tests::test_base64_url_encode ... ok [INFO] [stdout] test tap::jwt::tests::test_claims_serialization ... ok [INFO] [stdout] test tap::jwt::tests::test_claims_with_agent_directory_serialization ... ok [INFO] [stdout] test tap::jwt::tests::test_different_keys_different_signatures ... ok [INFO] [stdout] test tap::jwt::tests::test_id_token_claims_creation ... ok [INFO] [stdout] test tap::jwt::tests::test_different_claims_different_tokens ... ok [INFO] [stdout] test tap::jwt::tests::test_id_token_claims_creation_without_agent_directory ... ok [INFO] [stdout] test tap::jwt::tests::test_id_token_format ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_refills_over_time ... ok [INFO] [stdout] test tap::jwt::tests::test_id_token_creation ... ok [INFO] [stdout] test tap::jwt::tests::test_jwt_signature_length ... ok [INFO] [stdout] test tap::jwt::tests::test_jwt_header_format ... ok [INFO] [stdout] test tap::jwt::tests::test_token_expiration_time ... ok [INFO] [stdout] test tap::jwt::tests::test_jwt_payload_format ... ok [INFO] [stdout] test tap::signer::tests::test_build_signature_base_component_order ... ok [INFO] [stdout] test tap::signer::tests::test_build_signature_base_format ... ok [INFO] [stdout] test tap::signer::tests::test_compute_content_digest ... ok [INFO] [stdout] test tap::signer::tests::test_compute_content_digest_empty_body ... ok [INFO] [stdout] test tap::signer::tests::test_compute_content_digest_known_value ... ok [INFO] [stdout] test tap::signer::tests::test_compute_keyid ... ok [INFO] [stdout] test tap::signer::tests::test_compute_keyid_rfc7638_test_vector ... ok [INFO] [stdout] test tap::signer::tests::test_compute_keyid_different_keys_different_thumbprints ... ok [INFO] [stdout] test tap::signer::tests::test_generate_acro ... ok [INFO] [stdout] test tap::signer::tests::test_different_requests_produce_different_signatures ... ok [INFO] [stdout] test tap::signer::tests::test_generate_acro_kid_matches_signature_keyid ... ok [INFO] [stdout] test tap::signer::tests::test_generate_acro_nonce_correlation ... ok [INFO] [stdout] test tap::signer::tests::test_generate_id_token ... ok [INFO] [stdout] test tap::signer::tests::test_generate_id_token_format ... ok [INFO] [stdout] test tap::signer::tests::test_generate_jwks ... ok [INFO] [stdout] test tap::signer::tests::test_generate_id_token_nonce_matches_signature ... ok [INFO] [stdout] test tap::signer::tests::test_generate_jwks_kid_matches_signature_keyid ... ok [INFO] [stdout] test tap::signer::tests::test_sign_request ... ok [INFO] [stdout] test tap::jwt::tests::test_jwt_signature_verifiable ... ok [INFO] [stdout] test tap::signer::tests::test_sign_request_keyid_consistent ... ok [INFO] [stdout] test tap::signer::tests::test_sign_request_signature_format ... ok [INFO] [stdout] test tap::signer::tests::test_signature_input_format ... ok [INFO] [stdout] test tap::signer::tests::test_sign_request_signature_verifiable ... ok [INFO] [stdout] test reliability::circuit_breaker::tests::test_circuit_breaker_multiple_half_open_failures ... ok [INFO] [stdout] test tap::verifier::tests::test_verify_valid_signature ... ok [INFO] [stdout] test tests::test_library_exports ... ok [INFO] [stdout] test transport::config::tests::test_http_config_default ... ok [INFO] [stdout] test transport::config::tests::test_http_config_empty_toml ... ok [INFO] [stdout] test transport::config::tests::test_http_config_from_toml ... ok [INFO] [stdout] test transport::config::tests::test_http_config_invalid_toml ... ok [INFO] [stdout] test transport::config::tests::test_http_config_large_pool_size ... ok [INFO] [stdout] test transport::config::tests::test_http_config_large_timeout ... ok [INFO] [stdout] test transport::config::tests::test_http_config_partial_fields ... ok [INFO] [stdout] test transport::config::tests::test_http_config_timeout ... ok [INFO] [stdout] test transport::config::tests::test_http_config_validate_connect_timeout_too_large ... ok [INFO] [stdout] test transport::config::tests::test_http_config_validate_connect_timeout_zero ... ok [INFO] [stdout] test transport::config::tests::test_http_config_validate_default ... ok [INFO] [stdout] test transport::config::tests::test_http_config_validate_timeout_too_large ... ok [INFO] [stdout] test transport::config::tests::test_http_config_validate_timeout_zero ... ok [INFO] [stdout] test transport::config::tests::test_http_config_validate_valid_bounds ... ok [INFO] [stdout] test transport::config::tests::test_http_config_with_defaults ... ok [INFO] [stdout] test transport::config::tests::test_http_config_zero_pool_size ... ok [INFO] [stdout] test transport::config::tests::test_http_config_zero_timeout ... ok [INFO] [stdout] test transport::config::tests::test_http_version_all_variants ... ok [INFO] [stdout] test transport::config::tests::test_http_version_default ... ok [INFO] [stdout] test transport::config::tests::test_http_version_from_toml ... ok [INFO] [stdout] test transport::config::tests::test_http_version_invalid_value ... ok [INFO] [stdout] test transport::config::tests::test_transport_config_default ... ok [INFO] [stdout] test transport::config::tests::test_transport_config_from_toml ... ok [INFO] [stdout] test transport::config::tests::test_transport_config_http2 ... ok [INFO] [stdout] test transport::config::tests::test_transport_config_invalid_protocol ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_with_backoff_success_after_retries ... ok [INFO] [stdout] test reliability::retry::tests::test_retry_with_backoff_all_attempts_fail ... ok [INFO] [stdout] test transport::config::tests::test_transport_config_missing_protocol ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_default_config ... ok [INFO] [stdout] test tap::verifier::tests::test_replay_protection ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_get_invalid_url ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_delete_request ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_http1_only ... ok [INFO] [stdout] test transport::http::tests::test_default_http_client_is_singleton ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_debug_format ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_new ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_protocol_name ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_post_with_content_type ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_rejects_crlf_header ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_post_empty_body ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_rejects_http_url ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_rejects_path_traversal ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_rejects_localhost ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_url_missing_host ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_with_config ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_url_with_trailing_slash ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_with_large_pool_size ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_with_custom_headers ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_with_large_timeout ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_path_without_leading_slash ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_with_zero_pool_size ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_with_zero_timeout ... ok [INFO] [stdout] test transport::http::tests::test_sanitize_path_leading_slash_required ... ok [INFO] [stdout] test transport::http::tests::test_sanitize_path_traversal_blocked ... ok [INFO] [stdout] test transport::http::tests::test_sanitize_path_valid ... ok [INFO] [stdout] test transport::http::tests::test_validate_header_crlf_injection_blocked ... ok [INFO] [stdout] test transport::http::tests::test_validate_header_valid ... ok [INFO] [stdout] test transport::http::tests::test_validate_url_https_required ... ok [INFO] [stdout] test transport::tests::test_request_context_creation ... ok [INFO] [stdout] test transport::http::tests::test_validate_url_localhost_blocked ... ok [INFO] [stdout] test transport::tests::test_request_context_clone ... ok [INFO] [stdout] test transport::tests::test_request_context_debug ... ok [INFO] [stdout] test transport::tests::test_request_context_with_empty_path ... ok [INFO] [stdout] test transport::tests::test_request_context_multiple_headers ... ok [INFO] [stdout] test transport::tests::test_request_context_no_headers ... ok [INFO] [stdout] test transport::tests::test_transport_response_creation ... ok [INFO] [stdout] test transport::tests::test_request_context_with_query_params ... ok [INFO] [stdout] test transport::tests::test_transport_response_binary_body ... ok [INFO] [stdout] test transport::tests::test_transport_response_error_status ... ok [INFO] [stdout] test transport::tests::test_transport_response_debug ... ok [INFO] [stdout] test transport::tests::test_transport_response_empty_body ... ok [INFO] [stdout] test transport::tests::test_transport_response_large_body ... ok [INFO] [stdout] test transport::tests::test_transport_response_multiple_headers ... ok [INFO] [stdout] test transport::http::tests::test_http_transport_put_request ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_fractional_refill ... ok [INFO] [stdout] test security::rate_limit::tests::test_rate_limiter_caps_at_burst_size ... ok [INFO] [stdout] test tap::tests::proptest_signatures::test_replay_protection_property ... ok [INFO] [stdout] test tap::tests::proptest_signatures::test_signature_verification_roundtrip ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 587 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.02s [INFO] [stdout] [INFO] [stderr] Running tests/integration_test.rs (/opt/rustwide/target/debug/build/tap-mcp-bridge/c247e1a0eaf00a0d/deps/integration_test-c247e1a0eaf00a0d) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_signature_generation_end_to_end ... ok [INFO] [stdout] test test_checkout_params_validation ... ok [INFO] [stdout] test test_checkout_with_invalid_url ... 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/merchant_integration_test.rs (/opt/rustwide/target/debug/build/tap-mcp-bridge/a413e7438b679316/deps/merchant_integration_test-a413e7438b679316) [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test test_merchant_endpoint_resolver_integration ... ok [INFO] [stdout] test test_merchant_identity_conversions ... ok [INFO] [stdout] test test_merchant_with_product_query_params ... ok [INFO] [stdout] test test_merchant_config_roundtrip ... ok [INFO] [stdout] test test_full_merchant_configuration_flow ... ok [INFO] [stdout] test test_multiple_merchants_isolation ... ok [INFO] [stdout] test test_merchant_with_minimal_configuration ... ok [INFO] [stdout] test test_merchant_field_mapper_integration ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 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/build/tap-mcp-server/70f7ae22c949f198/deps/tap_mcp_server-70f7ae22c949f198) [INFO] [stdout] [INFO] [stdout] running 32 tests [INFO] [stdout] test observability::tests::test_health_check_status_as_str ... ok [INFO] [stdout] test observability::tests::test_health_check_pass_with_message ... ok [INFO] [stdout] test observability::tests::test_health_check_fail ... ok [INFO] [stdout] test observability::tests::test_health_check_warn ... ok [INFO] [stdout] test observability::tests::test_health_status_as_str ... ok [INFO] [stdout] test observability::tests::test_health_status_compute_all_pass ... ok [INFO] [stdout] test observability::tests::test_health_status_compute_empty ... ok [INFO] [stdout] test observability::tests::test_health_report_without_metrics ... ok [INFO] [stdout] test observability::tests::test_health_status_compute_with_fail ... ok [INFO] [stdout] test observability::tests::test_health_status_compute_with_warn ... ok [INFO] [stdout] test observability::tests::test_health_report_with_metrics ... ok [INFO] [stdout] test observability::tests::test_health_report_to_json ... ok [INFO] [stdout] test observability::tests::test_metrics_default ... ok [INFO] [stdout] test observability::tests::test_log_format_from_env ... ok [INFO] [stdout] test observability::tests::test_metrics_record_browse ... ok [INFO] [stdout] test observability::tests::test_metrics_record_checkout_mixed ... ok [INFO] [stdout] test observability::tests::test_health_report_to_json_with_failures ... ok [INFO] [stdout] test observability::tests::test_health_check_pass ... ok [INFO] [stdout] test observability::tests::test_metrics_record_checkout_failure ... ok [INFO] [stdout] test observability::tests::test_metrics_record_signature_generation ... ok [INFO] [stdout] test observability::tests::test_metrics_snapshot_clone ... ok [INFO] [stdout] test observability::tests::test_metrics_snapshot_multiple_times ... ok [INFO] [stdout] test observability::tests::test_metrics_to_prometheus_zero_values ... ok [INFO] [stdout] test observability::tests::test_metrics_record_checkout_success ... ok [INFO] [stdout] test observability::tests::test_metrics_to_prometheus ... ok [INFO] [stdout] test observability::tests::test_metrics_record_http_error ... ok [INFO] [stdout] test observability::tests::test_metrics_snapshot_equality ... ok [INFO] [stdout] test tests::test_create_signer_with_invalid_key ... ok [INFO] [stdout] test tests::test_validate_agent_id ... ok [INFO] [stdout] test tests::test_validate_signing_key ... ok [INFO] [stdout] test tests::test_create_signer_with_valid_key ... ok [INFO] [stdout] test tests::test_validate_agent_directory ... ok [INFO] [stderr] Doc-tests tap_mcp_bridge [INFO] [stdout] [INFO] [stdout] test result: ok. 32 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 101 tests [INFO] [stdout] test tap-mcp-bridge/src/lib.rs - (line 81) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/lib.rs - (line 46) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/error.rs - error (line 16) ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/mod.rs - mcp (line 49) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/orders.rs - mcp::orders::create_order (line 94) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/error.rs - error::BridgeError::InvalidMerchantUrl (line 141) ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/orders.rs - mcp::orders::get_order (line 196) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/payment.rs - mcp::payment::process_payment (line 170) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/products.rs - mcp::products::get_products (line 107) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/payment.rs - mcp::payment::process_payment_rate_limited (line 318) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/products.rs - mcp::products::get_product (line 236) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/tools.rs - mcp::tools::browse_merchant (line 193) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/http.rs - mcp::http::build_url_with_query (line 265) ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/tools.rs - mcp::tools::checkout_with_tap (line 117) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/circuit_breaker.rs - reliability::circuit_breaker::CircuitBreaker (line 181) ... ok [INFO] [stdout] test tap-mcp-bridge/src/mcp/subscriptions/proration.rs - mcp::subscriptions::proration::calculate_credit (line 31) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/circuit_breaker.rs - reliability::circuit_breaker::CircuitBreaker::new (line 231) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/circuit_breaker.rs - reliability::circuit_breaker (line 26) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/circuit_breaker.rs - reliability::circuit_breaker::CircuitBreaker::call (line 304) ... ok [INFO] [stdout] test tap-mcp-bridge/src/merchant/config.rs - merchant::config::MerchantConfig::validate (line 73) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/circuit_breaker.rs - reliability::circuit_breaker::CircuitBreakerError (line 429) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/circuit_breaker.rs - reliability::circuit_breaker::CircuitBreaker::state (line 261) ... ok [INFO] [stdout] test tap-mcp-bridge/src/lib.rs - (line 111) ... ok [INFO] [stdout] test tap-mcp-bridge/src/lib.rs - (line 245) ... ok [INFO] [stdout] test tap-mcp-bridge/src/lib.rs - (line 139) ... ok [INFO] [stdout] test tap-mcp-bridge/src/error.rs - error::BridgeError::InvalidConsumerId (line 171) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/retry.rs - reliability::retry::RetryPolicy::with_max_attempts (line 76) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/retry.rs - reliability::retry::RetryPolicy::new (line 61) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/circuit_breaker.rs - reliability::circuit_breaker::CircuitBreakerConfig (line 96) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/retry.rs - reliability::retry::retry_with_backoff (line 118) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/retry.rs - reliability::retry::is_retryable (line 212) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::AuditEvent (line 69) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::AuditEvent::with_nonce (line 170) ... ok [INFO] [stdout] test tap-mcp-bridge/src/reliability/retry.rs - reliability::retry::RetryPolicy (line 17) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::AuditEvent::new (line 99) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::AuditEvent::with_duration (line 215) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::AuditEvent::with_consumer_id (line 148) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::AuditEvent::with_merchant_url (line 124) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::AuditEvent::with_error (line 193) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::audit (line 439) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit (line 36) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit::RateLimitedSigner (line 304) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::redact_sensitive (line 277) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit::RateLimitedSigner::sign_request (line 366) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit::RateLimitedSigner::sign_request_blocking (line 414) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit (line 18) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit::RateLimitedSigner::new (line 337) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/mod.rs - security (line 11) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit::RateLimiter::acquire_blocking (line 229) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/mod.rs - security (line 31) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/mod.rs - security (line 44) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit::RateLimiter (line 115) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::redact_consumer_id (line 398) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit::RateLimiter::new (line 147) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/acro.rs - tap::acro (line 25) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/acro.rs - tap::acro::Acro (line 79) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/audit.rs - security::audit::audit_log (line 242) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/acro.rs - tap::acro::Acro::create (line 146) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc (line 24) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/acro.rs - tap::acro::ContextualData (line 254) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::BankAccountData (line 603) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::CardData (line 486) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::Apc::create (line 227) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::CardData::credential_hash (line 559) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::RsaPublicKey (line 82) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::Apc (line 156) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::RsaPublicKey::from_pem (line 113) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::PaymentMethod::encrypt (line 384) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::CardData::last_four (line 530) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::DigitalWalletData (line 665) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/acro.rs - tap::acro::DeviceData (line 305) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwk.rs - tap::jwk::Jwk::from_verifying_key (line 134) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwk.rs - tap::jwk::Jwks (line 218) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwk.rs - tap::jwk::Jwks::new (line 242) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwk.rs - tap::jwk::Jwks::to_json (line 266) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwk.rs - tap::jwk (line 64) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwk.rs - tap::jwk::Jwk::compute_thumbprint (line 183) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwk.rs - tap::jwk (line 48) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/apc.rs - tap::apc::PaymentMethod (line 326) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwt.rs - tap::jwt (line 29) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwk.rs - tap::jwk::Jwk (line 89) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwt.rs - tap::jwt::IdToken (line 221) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwt.rs - tap::jwt::IdTokenClaims::new (line 160) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwt.rs - tap::jwt::IdToken::create (line 274) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/mod.rs - tap (line 44) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/mod.rs - tap (line 121) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/jwt.rs - tap::jwt::IdTokenClaims (line 74) ... ok [INFO] [stdout] test tap-mcp-bridge/src/security/rate_limit.rs - security::rate_limit::RateLimiter::acquire (line 174) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/mod.rs - tap (line 95) ... ok [INFO] [stdout] test tap-mcp-bridge/src/transport/http/mod.rs - transport::http::HttpTransport (line 86) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/signer.rs - tap::signer::TapSigner::compute_content_digest (line 169) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/signer.rs - tap::signer::TapSigner::generate_apc (line 337) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/signer.rs - tap::signer::TapSigner::sign_request (line 89) ... ok [INFO] [stdout] test tap-mcp-bridge/src/transport/http/mod.rs - transport::http::HttpTransport::new (line 140) ... ok [INFO] [stdout] test tap-mcp-bridge/src/transport/mod.rs - transport (line 15) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/transport/mod.rs - transport::Transport (line 118) - compile ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/signer.rs - tap::signer::TapSigner::generate_id_token (line 226) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/signer.rs - tap::signer::TapSigner::new (line 62) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/signer.rs - tap::signer::TapSigner::generate_acro (line 278) ... ok [INFO] [stdout] test tap-mcp-bridge/src/transport/http/mod.rs - transport::http::HttpTransport::with_config (line 157) ... ok [INFO] [stdout] test tap-mcp-bridge/src/tap/signer.rs - tap::signer::TapSigner::generate_jwks (line 190) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 101 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s [INFO] [stdout] [INFO] [stdout] all doctests ran in 3.13s; merged doctests compilation took 2.90s [INFO] running `Command { std: "docker" "inspect" "d087b8cdc946505785a518ec3aa8f7b225f00acf603b4a7b53f4066a99cc234b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d087b8cdc946505785a518ec3aa8f7b225f00acf603b4a7b53f4066a99cc234b", kill_on_drop: false }` [INFO] [stdout] d087b8cdc946505785a518ec3aa8f7b225f00acf603b4a7b53f4066a99cc234b