[INFO] cloning repository https://github.com/kamuimk/agentshield
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kamuimk/agentshield" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkamuimk%2Fagentshield", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkamuimk%2Fagentshield'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d90bc668e7e4b2e9c04462ace9d4959e4c49571f
[INFO] testing kamuimk/agentshield against 1.98.0-beta.6+cargoflags=--release for beta-1.98-release-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkamuimk%2Fagentshield" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/kamuimk/agentshield
[INFO] finished tweaking git repo https://github.com/kamuimk/agentshield
[INFO] tweaked toml for git repo https://github.com/kamuimk/agentshield written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kamuimk/agentshield on toolchain 1.98.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kamuimk/agentshield already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a
[INFO] running `Command { std: "docker" "start" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.181
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.23
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling cc v1.2.55
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling socket2 v0.6.2
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling aws-lc-rs v1.15.4
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling aws-lc-sys v0.37.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling writeable v0.6.2
[INFO] [stderr]    Compiling litemap v0.8.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling zmij v1.0.20
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling webpki-roots v1.0.6
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling futures-util v0.3.31
[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 icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling ipnet v2.11.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling deranged v0.5.6
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling time-core v0.1.7
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]    Compiling time v0.3.45
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling scheduled-thread-pool v0.2.7
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling iri-string v0.7.10
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling utf-8 v0.7.6
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling data-encoding v2.10.0
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling clap_builder v4.5.58
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling inotify v0.10.2
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling notify-types v1.0.1
[INFO] [stderr]    Compiling r2d2 v0.8.10
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling uuid v1.20.0
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling pem v3.0.6
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling matchit v0.8.4
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling notify v7.0.0
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling axum v0.8.8
[INFO] [stderr]    Compiling rcgen v0.13.2
[INFO] [stderr]    Compiling clap v4.5.58
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tungstenite v0.26.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling tokio-tungstenite v0.26.2
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling r2d2_sqlite v0.25.0
[INFO] [stderr]    Compiling agentshield v1.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 38s
[INFO] running `Command { std: "docker" "inspect" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling r2d2_sqlite v0.25.0
[INFO] [stderr]    Compiling tempfile v3.25.0
[INFO] [stderr]    Compiling agentshield v1.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 29.82s
[INFO] running `Command { std: "docker" "inspect" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.26s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/agentshield-a50e7eb260d730ab)
[INFO] [stdout] 
[INFO] [stdout] running 356 tests
[INFO] [stdout] test ask::discord::tests::build_ask_embed_truncates_long_body ... ok
[INFO] [stdout] test ask::discord::tests::build_ask_components_contains_buttons ... ok
[INFO] [stdout] test ask::discord::tests::build_ask_embed_basic ... ok
[INFO] [stdout] test ask::discord::tests::build_ask_embed_with_body ... ok
[INFO] [stdout] test ask::discord::tests::format_ask_content_basic ... ok
[INFO] [stdout] test ask::discord::tests::parse_interaction_event_allow ... ok
[INFO] [stdout] test ask::discord::tests::parse_interaction_event_deny ... ok
[INFO] [stdout] test ask::discord::tests::parse_interaction_event_missing_d ... ok
[INFO] [stdout] test ask::discord::tests::parse_interaction_event_unknown_action ... ok
[INFO] [stdout] test ask::discord::tests::parse_interaction_event_wrong_type ... ok
[INFO] [stdout] test ask::discord::tests::responder_name ... ok
[INFO] [stdout] test ask::slack::tests::build_ask_blocks_contains_buttons ... ok
[INFO] [stdout] test ask::slack::tests::build_ask_blocks_truncates_long_body ... ok
[INFO] [stdout] test ask::slack::tests::build_ask_blocks_with_body ... ok
[INFO] [stdout] test ask::slack::tests::format_ask_text_basic ... ok
[INFO] [stdout] test ask::slack::tests::parse_interaction_payload_allow ... ok
[INFO] [stdout] test ask::slack::tests::parse_interaction_payload_deny ... ok
[INFO] [stdout] test ask::slack::tests::parse_interaction_payload_missing_payload ... ok
[INFO] [stdout] test ask::slack::tests::responder_name ... ok
[INFO] [stdout] test ask::telegram::tests::already_resolved_callback_handled ... ok
[INFO] [stdout] test ask::telegram::tests::format_ask_text_truncates_long_body ... ok
[INFO] [stdout] test ask::slack::tests::parse_interaction_payload_unknown_action ... ok
[INFO] [stdout] test ask::telegram::tests::build_keyboard_contains_allow_deny ... ok
[INFO] [stdout] test ask::telegram::tests::format_ask_text_with_body ... ok
[INFO] [stdout] test ask::telegram::tests::format_ask_text_without_body ... ok
[INFO] [stdout] test ask::slack::tests::notify_resolved_cleans_up_pending ... ok
[INFO] [stdout] test ask::discord::tests::notify_resolved_cleans_up_pending ... ok
[INFO] [stdout] test ask::telegram::tests::parse_callback_data_deny ... ok
[INFO] [stdout] test ask::telegram::tests::parse_callback_data_allow ... ok
[INFO] [stdout] test ask::telegram::tests::parse_callback_data_empty_req_id ... ok
[INFO] [stdout] test ask::telegram::tests::parse_callback_data_empty_string ... ok
[INFO] [stdout] test ask::telegram::tests::parse_callback_data_invalid_action ... ok
[INFO] [stdout] test ask::telegram::tests::parse_callback_data_no_colon ... ok
[INFO] [stdout] test ask::telegram::tests::notify_resolved_cleans_up_pending ... ok
[INFO] [stdout] test ask::telegram::tests::responder_name ... ok
[INFO] [stdout] test ask::telegram::tests::wrong_chat_id_callback_ignored ... ok
[INFO] [stdout] test ask::terminal::tests::terminal_prompt_allow ... ok
[INFO] [stdout] test ask::terminal::tests::terminal_prompt_deny ... ok
[INFO] [stdout] test ask::terminal::tests::terminal_prompt_inspect_then_allow ... ok
[INFO] [stdout] test ask::terminal::tests::terminal_prompt_unknown_defaults_deny ... ok
[INFO] [stdout] test ask::tests::broadcaster_responder_count ... ok
[INFO] [stdout] test ask::terminal::tests::terminal_responder_name ... ok
[INFO] [stdout] test ask::tests::no_responders_returns_deny ... ok
[INFO] [stdout] test ask::terminal::tests::terminal_prompt_add_rule ... ok
[INFO] [stdout] test ask::tests::all_responders_none_returns_deny ... ok
[INFO] [stdout] test ask::tests::ask_request_info_has_uuid ... ok
[INFO] [stdout] test ask::tests::single_responder_deny ... ok
[INFO] [stdout] test ask::tests::single_responder_allow ... ok
[INFO] [stdout] test cli::ca::tests::cmd_ca_export_copies_cert ... ok
[INFO] [stdout] test cli::ca::tests::cmd_ca_export_fails_without_cert ... ok
[INFO] [stdout] test cli::ca::tests::cmd_ca_init_creates_files ... ok
[INFO] [stdout] test cli::ca::tests::cmd_ca_show_fails_without_cert ... ok
[INFO] [stdout] test cli::ca::tests::cmd_ca_init_does_not_overwrite_existing ... ok
[INFO] [stdout] test cli::ca::tests::cmd_ca_trust_fails_without_cert ... ok
[INFO] [stdout] test cli::ca::tests::cmd_ca_show_displays_fingerprint ... ok
[INFO] [stdout] test cli::ca::tests::generate_ca_cert_is_valid_pem ... ok
[INFO] [stdout] test cli::ca::tests::generate_ca_creates_key_and_cert_files ... ok
[INFO] [stdout] test cli::ca::tests::cmd_ca_trust_succeeds_with_cert ... ok
[INFO] [stdout] test cli::integrate::tests::test_detect_openclaw_config_with_custom_home ... ok
[INFO] [stdout] test cli::ca::tests::generate_ca_key_is_valid_pem ... ok
[INFO] [stdout] test cli::integrate::tests::test_remove_claude_code_proxy_file_not_exists ... ok
[INFO] [stdout] test cli::integrate::tests::test_remove_claude_code_proxy ... ok
[INFO] [stdout] test cli::integrate::tests::test_remove_claude_code_proxy_empty_env_removed ... ok
[INFO] [stdout] test cli::integrate::tests::test_remove_openclaw_proxy ... ok
[INFO] [stdout] test cli::integrate::tests::test_remove_openclaw_proxy_when_no_proxy ... ok
[INFO] [stdout] test cli::integrate::tests::test_set_claude_code_proxy_creates_new_file ... ok
[INFO] [stdout] test cli::integrate::tests::test_set_claude_code_proxy_invalid_json ... ok
[INFO] [stdout] test cli::integrate::tests::test_set_claude_code_proxy ... ok
[INFO] [stdout] test cli::integrate::tests::test_set_proxy_missing_telegram_channel ... ok
[INFO] [stdout] test cli::integrate::tests::test_set_claude_code_proxy_with_ca_cert ... ok
[INFO] [stdout] test cli::integrate::tests::test_set_openclaw_proxy ... ok
[INFO] [stdout] test cli::integrate::tests::test_set_openclaw_proxy_overwrites_existing ... ok
[INFO] [stdout] test cli::prompt::tests::ask_request_with_body ... ok
[INFO] [stdout] test cli::prompt::tests::ask_request_without_body ... ok
[INFO] [stdout] test cli::prompt::tests::generate_rule_from_request ... ok
[INFO] [stdout] test cli::prompt::tests::add_rule_generates_valid_config_with_methods ... ok
[INFO] [stdout] test cli::prompt::tests::handle_inspect_does_not_truncate_small_body ... ok
[INFO] [stdout] test cli::prompt::tests::handle_inspect_truncates_large_body ... ok
[INFO] [stdout] test cli::prompt::tests::handle_inspect_with_body ... ok
[INFO] [stdout] test cli::prompt::tests::append_rule_to_config_file ... ok
[INFO] [stdout] test cli::prompt::tests::handle_inspect_without_body ... ok
[INFO] [stdout] test cli::prompt::tests::inspect_then_allow_sequence ... ok
[INFO] [stdout] test cli::prompt::tests::prompt_add_rule ... ok
[INFO] [stdout] test cli::prompt::tests::inspect_then_deny_sequence ... ok
[INFO] [stdout] test cli::prompt::tests::prompt_allow_once ... ok
[INFO] [stdout] test cli::prompt::tests::prompt_deny ... ok
[INFO] [stdout] test cli::prompt::tests::prompt_displays_request_info ... ok
[INFO] [stdout] test cli::prompt::tests::prompt_unknown_defaults_to_deny ... ok
[INFO] [stdout] test cli::prompt::tests::prompt_inspect ... ok
[INFO] [stdout] test cli::quickstart::tests::generate_toml_custom_port ... ok
[INFO] [stdout] test cli::quickstart::tests::cmd_quickstart_abort_on_existing ... ok
[INFO] [stdout] test cli::quickstart::tests::prompt_choice_default_on_empty ... ok
[INFO] [stdout] test cli::quickstart::tests::cmd_quickstart_creates_config_file ... ok
[INFO] [stdout] test cli::quickstart::tests::generate_toml_basic ... ok
[INFO] [stdout] test cli::quickstart::tests::prompt_choice_retry_then_valid ... ok
[INFO] [stdout] test cli::quickstart::tests::generate_toml_mitm_mode ... ok
[INFO] [stdout] test cli::quickstart::tests::prompt_choice_valid_selection ... ok
[INFO] [stdout] test cli::quickstart::tests::prompt_string_custom_value ... ok
[INFO] [stdout] test cli::quickstart::tests::cmd_quickstart_overwrite_existing ... ok
[INFO] [stdout] test cli::quickstart::tests::prompt_string_default ... ok
[INFO] [stdout] test cli::quickstart::tests::prompt_yes_no_default ... ok
[INFO] [stdout] test cli::quickstart::tests::prompt_yes_no_yes ... ok
[INFO] [stdout] test cli::quickstart::tests::prompt_yes_no_no ... ok
[INFO] [stdout] test cli::quickstart::tests::wizard_claude_with_mitm ... ok
[INFO] [stdout] test cli::quickstart::tests::wizard_openclaw_defaults ... ok
[INFO] [stdout] test cli::quickstart::tests::wizard_unknown_custom_port ... ok
[INFO] [stdout] test cli::wrap::tests::build_child_env_mitm ... ok
[INFO] [stdout] test cli::wrap::tests::build_child_env_transparent ... ok
[INFO] [stdout] test cli::wrap::tests::builtin_templates_list_complete ... ok
[INFO] [stdout] test cli::wrap::tests::community_templates_dir_exists ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_aider ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_claude ... ok
[INFO] [stdout] test cli::wrap::tests::all_templates_parse_as_app_config ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_cursor ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_empty ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_full_path ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_claude_code ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_npx_openclaw ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_codex ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_openai ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_openclaw_direct ... ok
[INFO] [stdout] test cli::wrap::tests::detect_agent_unknown ... ok
[INFO] [stdout] test cli::wrap::tests::list_community_templates_empty_dir ... ok
[INFO] [stdout] test cli::wrap::tests::load_community_template_nonexistent ... ok
[INFO] [stdout] test cli::wrap::tests::resolve_config_default_auto_generate ... ok
[INFO] [stdout] test cli::wrap::tests::resolve_config_auto_generate ... ok
[INFO] [stdout] test cli::wrap::tests::load_community_template_from_disk ... ok
[INFO] [stdout] test cli::wrap::tests::resolve_config_nondefault_missing ... ok
[INFO] [stdout] test cli::wrap::tests::resolve_config_existing_file ... ok
[INFO] [stdout] test cli::wrap::tests::resolve_template_nonexistent ... ok
[INFO] [stdout] test cli::wrap::tests::resolve_template_builtin ... ok
[INFO] [stdout] test cli::wrap::tests::template_cursor_has_cursor_domain ... ok
[INFO] [stdout] test cli::wrap::tests::template_content_known ... ok
[INFO] [stdout] test cli::wrap::tests::template_content_unknown ... ok
[INFO] [stdout] test cli::wrap::tests::template_cursor_valid_config ... ok
[INFO] [stdout] test cli::wrap::tests::template_development_general_has_package_registries ... ok
[INFO] [stdout] test cli::wrap::tests::template_minimal_llm_no_github ... ok
[INFO] [stdout] test cli::wrap::tests::template_development_general_valid_config ... ok
[INFO] [stdout] test cli::wrap::tests::template_name_cursor ... ok
[INFO] [stdout] test cli::wrap::tests::template_name_unknown ... ok
[INFO] [stdout] test cli::wrap::tests::template_name_claude_code ... ok
[INFO] [stdout] test cli::wrap::tests::template_minimal_llm_valid_config ... ok
[INFO] [stdout] test ask::tests::multiple_responders_first_wins ... ok
[INFO] [stdout] test ask::tests::responder_returns_none_skipped ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_anthropic_api_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_anthropic_admin_key ... ok
[INFO] [stdout] test dlp::patterns::tests::anthropic_key_not_detected_as_openai ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_cohere_api_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_aws_access_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_fireworks_api_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_email_address ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_fireworks_context_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_google_ai_api_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_huggingface_token ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_generic_api_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_mistral_api_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_github_token ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_groq_api_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_openai_admin_key ... ok
[INFO] [stdout] test dlp::patterns::tests::finding_serializes_to_json ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_openai_none_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_openai_project_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_replicate_api_token ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_openai_api_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_together_alphanumeric_key ... ok
[INFO] [stdout] test dlp::patterns::tests::detects_private_key ... ok
[INFO] [stdout] test error::tests::error_is_send_and_sync ... ok
[INFO] [stdout] test error::tests::config_parse_error_converts ... ok
[INFO] [stdout] test error::tests::io_error_converts ... ok
[INFO] [stdout] test error::tests::proxy_error_displays_message ... ok
[INFO] [stdout] test dlp::patterns::tests::handles_non_utf8_payload ... ok
[INFO] [stdout] test dlp::patterns::tests::no_findings_for_clean_payload ... ok
[INFO] [stdout] test logging::export::tests::export_empty_db ... ok
[INFO] [stdout] test logging::tests::audit_body_none_when_not_provided ... ok
[INFO] [stdout] test dlp::patterns::tests::with_patterns_filters_correctly ... ok
[INFO] [stdout] test logging::export::tests::export_csv_format ... ok
[INFO] [stdout] test logging::export::tests::export_json_format ... ok
[INFO] [stdout] test logging::tests::audit_body_stored_when_provided ... ok
[INFO] [stdout] test logging::tests::db_migration_adds_audit_columns ... ok
[INFO] [stdout] test logging::tests::init_and_insert ... ok
[INFO] [stdout] test logging::tests::open_memory_pool_works ... ok
[INFO] [stdout] test logging::tests::query_filtered_by_action ... ok
[INFO] [stdout] test logging::tests::query_filtered_by_domain ... ok
[INFO] [stdout] test logging::tests::query_filtered_by_since ... ok
[INFO] [stdout] test logging::tests::query_filtered_by_until ... ok
[INFO] [stdout] test logging::tests::query_filtered_combined_domain_and_action ... ok
[INFO] [stdout] test logging::tests::query_filtered_empty_result ... ok
[INFO] [stdout] test logging::tests::query_filtered_respects_limit ... ok
[INFO] [stdout] test logging::tests::query_filtered_search_body ... ok
[INFO] [stdout] test logging::tests::query_filtered_search_reason ... ok
[INFO] [stdout] test logging::tests::query_filtered_search_domain ... ok
[INFO] [stdout] test logging::tests::query_recent_with_limit_larger_than_data ... ok
[INFO] [stdout] test logging::tests::query_recent_returns_in_desc_order ... ok
[INFO] [stdout] test logging::tests::query_stats_counts_rate_limited ... ok
[INFO] [stdout] test logging::tests::query_stats_empty_db ... ok
[INFO] [stdout] test notification::discord::tests::discord_notifier_name ... ok
[INFO] [stdout] test notification::discord::tests::format_discord_embed_ask ... ok
[INFO] [stdout] test notification::discord::tests::format_discord_embed_deny ... ok
[INFO] [stdout] test logging::tests::query_stats_mixed_entries ... ok
[INFO] [stdout] test logging::tests::query_timeline_empty_db ... ok
[INFO] [stdout] test notification::discord::tests::format_discord_embed_dlp ... ok
[INFO] [stdout] test notification::discord::tests::format_discord_embed_rate_limited ... ok
[INFO] [stdout] test notification::discord::tests::format_discord_embed_shutdown ... ok
[INFO] [stdout] test notification::discord::tests::format_discord_embed_start ... ok
[INFO] [stdout] test notification::slack::tests::format_slack_blocks_ask ... ok
[INFO] [stdout] test notification::slack::tests::format_slack_blocks_deny ... ok
[INFO] [stdout] test notification::slack::tests::format_slack_blocks_dlp ... ok
[INFO] [stdout] test logging::tests::query_timeline_returns_buckets ... ok
[INFO] [stdout] test notification::slack::tests::format_slack_blocks_rate_limited ... ok
[INFO] [stdout] test notification::slack::tests::format_slack_blocks_shutdown ... ok
[INFO] [stdout] test notification::slack::tests::format_slack_blocks_start ... ok
[INFO] [stdout] test notification::slack::tests::slack_notifier_name ... ok
[INFO] [stdout] test notification::tests::event_type_rate_limited ... ok
[INFO] [stdout] test notification::tests::event_type_returns_correct_string ... ok
[INFO] [stdout] test notification::tests::filtered_notifier_blocks_non_matching_events ... ok
[INFO] [stdout] test notification::tests::filtered_notifier_empty_events_passes_all ... ok
[INFO] [stdout] test notification::tests::filtered_notifier_passes_ask_events ... ok
[INFO] [stdout] test notification::tests::format_ask_pending_message ... ok
[INFO] [stdout] test notification::tests::filtered_notifier_passes_matching_events ... ok
[INFO] [stdout] test notification::tests::filtered_notifier_passes_rate_limited_events ... ok
[INFO] [stdout] test notification::tests::format_deny_message ... ok
[INFO] [stdout] test notification::tests::format_rate_limited_message ... ok
[INFO] [stdout] test notification::tests::format_dlp_message ... ok
[INFO] [stdout] test notification::tests::format_start_message ... ok
[INFO] [stdout] test notification::tests::format_shutdown_message ... ok
[INFO] [stdout] test notification::tests::mock_notifier_collects_events ... ok
[INFO] [stdout] test notification::tests::mock_notifier_collects_multiple_events ... ok
[INFO] [stdout] test notification::tests::multi_notifier_continues_on_error ... ok
[INFO] [stdout] test notification::tests::multi_notifier_dispatches_to_all ... ok
[INFO] [stdout] test policy::evaluator::tests::allow_matching_domain ... ok
[INFO] [stdout] test policy::evaluator::tests::ask_action_for_write_methods ... ok
[INFO] [stdout] test policy::evaluator::tests::default_deny_when_no_rules ... ok
[INFO] [stdout] test policy::evaluator::tests::deny_non_matching_domain ... ok
[INFO] [stdout] test policy::evaluator::tests::domain_matches_unit_tests ... ok
[INFO] [stdout] test policy::evaluator::tests::eval_default_policy_has_no_rate_limit ... ok
[INFO] [stdout] test policy::evaluator::tests::eval_returns_none_rate_limit_when_not_set ... ok
[INFO] [stdout] test policy::evaluator::tests::eval_returns_rate_limit_from_matched_rule ... ok
[INFO] [stdout] test policy::evaluator::tests::exact_domain_does_not_match_subdomains ... ok
[INFO] [stdout] test policy::evaluator::tests::first_matching_rule_wins ... ok
[INFO] [stdout] test policy::evaluator::tests::method_filtering_allows_get ... ok
[INFO] [stdout] test policy::evaluator::tests::method_filtering_denies_post ... ok
[INFO] [stdout] test policy::evaluator::tests::wildcard_domain_matches_all ... ok
[INFO] [stdout] test policy::evaluator::tests::openclaw_template_scenario ... ok
[INFO] [stdout] test policy::evaluator::tests::wildcard_subdomain_matches_subdomains ... ok
[INFO] [stdout] test policy::evaluator::tests::wildcard_subdomain_does_not_match_similar_domains ... ok
[INFO] [stdout] test policy::reload::tests::file_watcher_starts_without_error ... ok
[INFO] [stdout] test policy::reload::tests::reload_policy_concurrent_reads_safe ... ok
[INFO] [stdout] test policy::reload::tests::reload_policy_invalid_toml_keeps_old ... ok
[INFO] [stdout] test policy::reload::tests::reload_policy_missing_file_keeps_old ... ok
[INFO] [stdout] test proxy::connect::tests::accept_loop_stops_on_shutdown_signal ... ok
[INFO] [stdout] test proxy::connect::tests::decode_chunked_body_exceeds_limit ... ok
[INFO] [stdout] test proxy::connect::tests::decode_chunked_body_multiple_chunks ... ok
[INFO] [stdout] test proxy::connect::tests::decode_chunked_body_simple ... ok
[INFO] [stdout] test proxy::connect::tests::decode_chunked_body_with_extension ... ok
[INFO] [stdout] test proxy::connect::tests::extract_body_from_raw_request ... ok
[INFO] [stdout] test proxy::connect::tests::find_header_end_found ... ok
[INFO] [stdout] test proxy::connect::tests::find_header_end_not_found ... ok
[INFO] [stdout] test proxy::connect::tests::fix_headers_removes_transfer_encoding_adds_content_length ... ok
[INFO] [stdout] test proxy::connect::tests::format_dlp_findings_empty ... ok
[INFO] [stdout] test proxy::connect::tests::format_dlp_findings_escapes_special_chars ... ok
[INFO] [stdout] test proxy::connect::tests::format_dlp_findings_single ... ok
[INFO] [stdout] test proxy::connect::tests::is_chunked_case_insensitive ... ok
[INFO] [stdout] test proxy::connect::tests::is_chunked_mixed_case ... ok
[INFO] [stdout] test proxy::connect::tests::is_chunked_false ... ok
[INFO] [stdout] test proxy::connect::tests::is_chunked_true ... ok
[INFO] [stdout] test proxy::connect::tests::log_event_clone_and_debug ... ok
[INFO] [stdout] test policy::reload::tests::reload_policy_updates_rules ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_audited_no_redact_when_disabled ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_audited_skips_body_when_audit_disabled ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_audited_stores_body_when_audit_enabled ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_broadcasts_event ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_multiple_subscribers_receive_event ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_no_event_tx_does_not_panic ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_no_receivers_does_not_panic ... ok
[INFO] [stdout] test proxy::connect::tests::no_body_in_get_request ... ok
[INFO] [stdout] test proxy::connect::tests::parse_content_length_lowercase ... ok
[INFO] [stdout] test proxy::connect::tests::parse_content_length_missing ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_audited_truncates_body ... ok
[INFO] [stdout] test proxy::connect::tests::log_to_db_audited_stores_dlp_findings ... ok
[INFO] [stdout] test proxy::connect::tests::parse_content_length_mixed_case ... ok
[INFO] [stdout] test proxy::connect::tests::should_audit_disabled_by_default ... ok
[INFO] [stdout] test proxy::connect::tests::parse_content_length_standard ... ok
[INFO] [stdout] test proxy::connect::tests::should_audit_enabled_all_actions ... ok
[INFO] [stdout] test proxy::connect::tests::should_audit_disabled_when_false ... ok
[INFO] [stdout] test proxy::connect::tests::should_audit_filtered_actions ... ok
[INFO] [stdout] test proxy::connect::tests::system_allowlist_match ... ok
[INFO] [stdout] test proxy::connect::tests::system_allowlist_no_match ... ok
[INFO] [stdout] test proxy::connect::tests::system_allowlist_none ... ok
[INFO] [stdout] test proxy::connect::tests::system_allowlist_wildcard_all ... ok
[INFO] [stdout] test proxy::connect::tests::system_allowlist_wildcard_subdomain ... ok
[INFO] [stdout] test proxy::connect::tests::test_parse_host_port_https ... ok
[INFO] [stdout] test proxy::connect::tests::test_parse_host_port_with_explicit_port ... ok
[INFO] [stdout] test proxy::connect::tests::test_parse_host_port_with_scheme ... ok
[INFO] [stdout] test proxy::connect::tests::test_parse_path ... ok
[INFO] [stdout] test proxy::connect::tests::test_validate_domain_invalid ... ok
[INFO] [stdout] test proxy::connect::tests::test_validate_domain_valid ... ok
[INFO] [stdout] test proxy::tls::tests::cache_hit_returns_same_arc ... ok
[INFO] [stdout] test proxy::tls::tests::different_domains_get_separate_configs ... ok
[INFO] [stdout] test proxy::tls::tests::generated_cert_is_valid_tls_config ... ok
[INFO] [stdout] test proxy::tls::tests::load_ca_missing_dir_fails ... ok
[INFO] [stdout] test proxy::tls::tests::get_or_create_generates_config ... ok
[INFO] [stdout] test proxy::tls::tests::load_ca_from_disk ... ok
[INFO] [stdout] test ratelimit::tests::allows_requests_within_limit ... ok
[INFO] [stdout] test ratelimit::tests::concurrent_access_is_safe ... ok
[INFO] [stdout] test ratelimit::tests::current_count_reflects_recorded_requests ... ok
[INFO] [stdout] test ratelimit::tests::denied_requests_are_not_recorded ... ok
[INFO] [stdout] test ratelimit::tests::denies_request_exceeding_limit ... ok
[INFO] [stdout] test ratelimit::tests::independent_counters_per_domain ... ok
[INFO] [stdout] test ratelimit::tests::no_rate_limit_means_unlimited ... ok
[INFO] [stdout] test logging::tests::open_db_from_file ... ok
[INFO] [stdout] test ratelimit::tests::zero_max_requests_always_denies ... ok
[INFO] [stdout] test web::ask::tests::get_pending_empty ... ok
[INFO] [stdout] test web::ask::tests::get_pending_with_entries ... ok
[INFO] [stdout] test web::ask::tests::notify_resolved_broadcasts_sse_event ... ok
[INFO] [stdout] test web::ask::tests::notify_resolved_removes_from_pending ... ok
[INFO] [stdout] test web::ask::tests::post_allow_not_found ... ok
[INFO] [stdout] test web::ask::tests::post_allow_resolves_pending ... ok
[INFO] [stdout] test web::ask::tests::post_deny_not_found ... ok
[INFO] [stdout] test web::ask::tests::post_deny_resolves_pending ... ok
[INFO] [stdout] test web::ask::tests::prompt_broadcasts_new_ask_sse_event ... ok
[INFO] [stdout] test logging::tests::open_pool_creates_table ... ok
[INFO] [stdout] test web::ask::tests::responder_name ... ok
[INFO] [stdout] test web::tests::auth_dashboard_always_accessible ... ok
[INFO] [stdout] test logging::tests::pool_concurrent_writes ... ok
[INFO] [stdout] test web::ask::tests::prompt_stores_in_pending_map ... ok
[INFO] [stdout] test proxy::tls::tests::lru_eviction_at_capacity ... ok
[INFO] [stdout] test web::tests::auth_invalid_token_returns_401 ... ok
[INFO] [stdout] test web::tests::auth_missing_token_returns_401 ... ok
[INFO] [stdout] test web::tests::auth_no_token_configured_passes_all ... ok
[INFO] [stdout] test web::tests::auth_policy_endpoint_protected ... ok
[INFO] [stdout] test web::tests::auth_query_param_token_invalid ... ok
[INFO] [stdout] test web::tests::auth_query_param_token_valid ... ok
[INFO] [stdout] test web::tests::get_logs_no_db_returns_503 ... ok
[INFO] [stdout] test web::tests::auth_status_endpoint_protected ... ok
[INFO] [stdout] test web::tests::auth_valid_token_returns_200 ... ok
[INFO] [stdout] test web::tests::dashboard_returns_html ... ok
[INFO] [stdout] test web::tests::get_policy_no_policy_returns_503 ... ok
[INFO] [stdout] test web::tests::get_logs_returns_empty_array ... ok
[INFO] [stdout] test web::tests::get_logs_returns_entries ... ok
[INFO] [stdout] test web::tests::get_policy_returns_config ... ok
[INFO] [stdout] test web::tests::get_stats_timeline_clamps_minutes ... ok
[INFO] [stdout] test web::tests::get_stats_timeline_empty_db ... ok
[INFO] [stdout] test web::tests::get_stats_timeline_returns_array ... ok
[INFO] [stdout] test web::tests::get_logs_respects_limit ... ok
[INFO] [stdout] test web::tests::token_matches_both_empty ... ok
[INFO] [stdout] test web::tests::token_matches_different_length ... ok
[INFO] [stdout] test web::tests::token_matches_different_same_length ... ok
[INFO] [stdout] test web::tests::token_matches_empty ... ok
[INFO] [stdout] test web::tests::token_matches_identical ... ok
[INFO] [stdout] test web::tests::get_status_empty_db ... ok
[INFO] [stdout] test web::tests::put_policy_updates_config ... ok
[INFO] [stdout] test web::tests::get_status_returns_stats ... ok
[INFO] [stdout] test policy::reload::tests::file_watcher_triggers_reload_on_change ... ok
[INFO] [stdout] test ask::tests::all_timeout_returns_deny ... ok
[INFO] [stdout] test ratelimit::tests::current_count_excludes_expired ... ok
[INFO] [stdout] test ratelimit::tests::window_expiration_allows_again ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 356 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.16s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/agentshield-fd4f868a2a587812)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test tests::expand_tilde_alone ... ok
[INFO] [stdout] test tests::expand_tilde_no_tilde ... ok
[INFO] [stdout] test tests::expand_tilde_with_subpath ... ok
[INFO] [stdout] test tests::graceful_kill_child_terminates_process ... ok
[INFO] [stdout] test tests::graceful_kill_child_already_exited ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/e2e_test.rs (/opt/rustwide/target/release/deps/e2e_test-ba2ee0503740e526)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test e2e_deny_blocks_http_request ... ok
[INFO] [stdout] test e2e_allow_passes_http_request ... ok
[INFO] [stdout] test e2e_catch_all_wildcard_domain ... ok
[INFO] [stdout] test e2e_dlp_blocks_request_with_api_key ... ok
[INFO] [stdout] test e2e_method_filtering ... ok
[INFO] [stdout] test e2e_dlp_allows_clean_request ... ok
[INFO] [stdout] test e2e_multiple_rules_first_match_wins ... ok
[INFO] [stdout] test e2e_system_allowlist_bypasses_deny ... ok
[INFO] [stdout] test e2e_rate_limiting_blocks_after_limit ... ok
[INFO] [stdout] test e2e_policy_hot_reload ... ok
[INFO] [stdout] test e2e_notification_on_deny ... ok
[INFO] [stdout] test e2e_shutdown_stops_accepting ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_test.rs (/opt/rustwide/target/release/deps/integration_test-e16eded19455b165)
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test all_templates_are_valid_toml ... ok
[INFO] [stdout] test evaluator_case_insensitive_method_matching ... ok
[INFO] [stdout] test evaluator_default_allow_policy ... ok
[INFO] [stdout] test evaluator_multiple_domains_in_single_rule ... ok
[INFO] [stdout] test ask_policy_without_channel_defaults_to_deny ... ok
[INFO] [stdout] test ask_channel_deny_returns_403 ... ok
[INFO] [stdout] test e2e_proxy_policy_deny_logs_nothing_yet ... ok
[INFO] [stdout] test openclaw_template_has_required_rules ... ok
[INFO] [stdout] test template_apply_creates_valid_config ... ok
[INFO] [stdout] test logging_full_lifecycle ... ok
[INFO] [stdout] test prompt_add_rule_roundtrip ... ok
[INFO] [stdout] test ask_channel_sends_request_on_ask_policy ... FAILED
[INFO] [stdout] test e2e_openclaw_full_flow ... FAILED
[INFO] [stdout] test proxy_handles_concurrent_connections ... FAILED
[INFO] [stdout] test web_ask_pending_and_resolve ... ok
[INFO] [stdout] test web_dashboard_contains_token_modal ... ok
[INFO] [stdout] test web_dashboard_serves_html ... ok
[INFO] [stdout] test proxy_logs_requests_to_sqlite ... FAILED
[INFO] [stdout] test web_auth_rejects_without_token ... ok
[INFO] [stdout] test web_api_status_endpoint ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- ask_channel_sends_request_on_ask_policy stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'ask_channel_sends_request_on_ask_policy' (6064) panicked at tests/integration_test.rs:570:5:
[INFO] [stdout] Expected 200 after approval, got: HTTP/1.1 502 Bad Gateway
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61790c1c3e21 - <<std[93043b772a62376c]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[812a354ff5be3162]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x61790c1dd1ba - core[812a354ff5be3162]::fmt::write
[INFO] [stdout]    2:     0x61790c1c94fc - <alloc[9902a75dd20b7c99]::vec::Vec<u8> as std[93043b772a62376c]::io::Write>::write_fmt
[INFO] [stdout]    3:     0x61790c19f336 - std[93043b772a62376c]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x61790c1bab29 - std[93043b772a62376c]::panicking::default_hook
[INFO] [stdout]    5:     0x61790bb400b0 - test[8de0c696b8e66f4f]::test_main_inner::<test[8de0c696b8e66f4f]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x61790c1bae52 - std[93043b772a62376c]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x61790c19f3e2 - std[93043b772a62376c]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x61790c196409 - std[93043b772a62376c]::sys::backtrace::__rust_end_short_backtrace::<std[93043b772a62376c]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x61790c1a02dd - __rustc[9fcb67b4460bf95]::rust_begin_unwind
[INFO] [stdout]   10:     0x61790c1dd99c - core[812a354ff5be3162]::panicking::panic_fmt
[INFO] [stdout]   11:     0x61790ba7360d - integration_test[d51e51f2daa2840c]::ask_channel_sends_request_on_ask_policy::{closure#0}
[INFO] [stdout]   12:     0x61790bb00b83 - <tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::Context>::enter::<core[812a354ff5be3162]::task::poll::Poll<()>, <tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[812a354ff5be3162]::pin::Pin<&mut core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]   13:     0x61790bb1853c - <tokio[d1904c8317b844b6]::runtime::context::scoped::Scoped<tokio[d1904c8317b844b6]::runtime::scheduler::Context>>::set::<<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[812a354ff5be3162]::pin::Pin<&mut core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>>::{closure#0}, core[812a354ff5be3162]::option::Option<()>>::{closure#0}, (alloc[9902a75dd20b7c99]::boxed::Box<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::Core>, core[812a354ff5be3162]::option::Option<()>)>
[INFO] [stdout]   14:     0x61790bafb306 - <tokio[d1904c8317b844b6]::runtime::runtime::Runtime>::block_on::<core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>
[INFO] [stdout]   15:     0x61790ba79bbe - <integration_test[d51e51f2daa2840c]::ask_channel_sends_request_on_ask_policy::{closure#0} as core[812a354ff5be3162]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   16:     0x61790bb333eb - test[8de0c696b8e66f4f]::__rust_begin_short_backtrace::<core[812a354ff5be3162]::result::Result<(), alloc[9902a75dd20b7c99]::string::String>, fn() -> core[812a354ff5be3162]::result::Result<(), alloc[9902a75dd20b7c99]::string::String>>
[INFO] [stdout]   17:     0x61790bb40a35 - test[8de0c696b8e66f4f]::run_test::{closure#0}
[INFO] [stdout]   18:     0x61790bb3b4e4 - std[93043b772a62376c]::sys::backtrace::__rust_begin_short_backtrace::<test[8de0c696b8e66f4f]::run_test::{closure#1}, ()>
[INFO] [stdout]   19:     0x61790bb43b82 - <std[93043b772a62376c]::thread::lifecycle::spawn_unchecked<test[8de0c696b8e66f4f]::run_test::{closure#1}, ()>::{closure#1} as core[812a354ff5be3162]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   20:     0x61790c1c2d8f - <std[93043b772a62376c]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   21:     0x70d7acd2207a - <unknown>
[INFO] [stdout]   22:     0x70d7acdb5534 - clone
[INFO] [stdout]   23:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- e2e_openclaw_full_flow stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'e2e_openclaw_full_flow' (6066) panicked at tests/integration_test.rs:163:5:
[INFO] [stdout] CONNECT api.anthropic.com:443 expected 200, got: HTTP/1.1 502 Bad Gateway
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61790c1c3e21 - <<std[93043b772a62376c]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[812a354ff5be3162]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x61790c1dd1ba - core[812a354ff5be3162]::fmt::write
[INFO] [stdout]    2:     0x61790c1c94fc - <alloc[9902a75dd20b7c99]::vec::Vec<u8> as std[93043b772a62376c]::io::Write>::write_fmt
[INFO] [stdout]    3:     0x61790c19f336 - std[93043b772a62376c]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x61790c1bab29 - std[93043b772a62376c]::panicking::default_hook
[INFO] [stdout]    5:     0x61790bb400b0 - test[8de0c696b8e66f4f]::test_main_inner::<test[8de0c696b8e66f4f]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x61790c1bae52 - std[93043b772a62376c]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x61790c19f3e2 - std[93043b772a62376c]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x61790c196409 - std[93043b772a62376c]::sys::backtrace::__rust_end_short_backtrace::<std[93043b772a62376c]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x61790c1a02dd - __rustc[9fcb67b4460bf95]::rust_begin_unwind
[INFO] [stdout]   10:     0x61790c1dd99c - core[812a354ff5be3162]::panicking::panic_fmt
[INFO] [stdout]   11:     0x61790ba68867 - integration_test[d51e51f2daa2840c]::assert_connect_result::{closure#0}
[INFO] [stdout]   12:     0x61790ba68d4d - integration_test[d51e51f2daa2840c]::e2e_openclaw_full_flow::{closure#0}
[INFO] [stdout]   13:     0x61790bb00b83 - <tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::Context>::enter::<core[812a354ff5be3162]::task::poll::Poll<()>, <tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[812a354ff5be3162]::pin::Pin<&mut core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]   14:     0x61790bb1853c - <tokio[d1904c8317b844b6]::runtime::context::scoped::Scoped<tokio[d1904c8317b844b6]::runtime::scheduler::Context>>::set::<<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[812a354ff5be3162]::pin::Pin<&mut core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>>::{closure#0}, core[812a354ff5be3162]::option::Option<()>>::{closure#0}, (alloc[9902a75dd20b7c99]::boxed::Box<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::Core>, core[812a354ff5be3162]::option::Option<()>)>
[INFO] [stdout]   15:     0x61790bafb306 - <tokio[d1904c8317b844b6]::runtime::runtime::Runtime>::block_on::<core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>
[INFO] [stdout]   16:     0x61790ba7656e - <integration_test[d51e51f2daa2840c]::e2e_openclaw_full_flow::{closure#0} as core[812a354ff5be3162]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   17:     0x61790bb333eb - test[8de0c696b8e66f4f]::__rust_begin_short_backtrace::<core[812a354ff5be3162]::result::Result<(), alloc[9902a75dd20b7c99]::string::String>, fn() -> core[812a354ff5be3162]::result::Result<(), alloc[9902a75dd20b7c99]::string::String>>
[INFO] [stdout]   18:     0x61790bb40a35 - test[8de0c696b8e66f4f]::run_test::{closure#0}
[INFO] [stdout]   19:     0x61790bb3b4e4 - std[93043b772a62376c]::sys::backtrace::__rust_begin_short_backtrace::<test[8de0c696b8e66f4f]::run_test::{closure#1}, ()>
[INFO] [stdout]   20:     0x61790bb43b82 - <std[93043b772a62376c]::thread::lifecycle::spawn_unchecked<test[8de0c696b8e66f4f]::run_test::{closure#1}, ()>::{closure#1} as core[812a354ff5be3162]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   21:     0x61790c1c2d8f - <std[93043b772a62376c]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   22:     0x70d7acd2207a - <unknown>
[INFO] [stdout]   23:     0x70d7acdb5534 - clone
[INFO] [stdout]   24:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- proxy_handles_concurrent_connections stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'proxy_handles_concurrent_connections' (6075) panicked at tests/integration_test.rs:453:13:
[INFO] [stdout] Expected 200 for example.com, got: HTTP/1.1 502 Bad Gateway
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61790c1c3e21 - <<std[93043b772a62376c]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[812a354ff5be3162]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x61790c1dd1ba - core[812a354ff5be3162]::fmt::write
[INFO] [stdout]    2:     0x61790c1c94fc - <alloc[9902a75dd20b7c99]::vec::Vec<u8> as std[93043b772a62376c]::io::Write>::write_fmt
[INFO] [stdout]    3:     0x61790c19f336 - std[93043b772a62376c]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x61790c1bab29 - std[93043b772a62376c]::panicking::default_hook
[INFO] [stdout]    5:     0x61790bb400b0 - test[8de0c696b8e66f4f]::test_main_inner::<test[8de0c696b8e66f4f]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x61790c1bae52 - std[93043b772a62376c]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x61790c19f3e2 - std[93043b772a62376c]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x61790c196409 - std[93043b772a62376c]::sys::backtrace::__rust_end_short_backtrace::<std[93043b772a62376c]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x61790c1a02dd - __rustc[9fcb67b4460bf95]::rust_begin_unwind
[INFO] [stdout]   10:     0x61790c1dd99c - core[812a354ff5be3162]::panicking::panic_fmt
[INFO] [stdout]   11:     0x61790ba723da - integration_test[d51e51f2daa2840c]::proxy_handles_concurrent_connections::{closure#0}
[INFO] [stdout]   12:     0x61790bb00b83 - <tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::Context>::enter::<core[812a354ff5be3162]::task::poll::Poll<()>, <tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[812a354ff5be3162]::pin::Pin<&mut core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]   13:     0x61790bb1853c - <tokio[d1904c8317b844b6]::runtime::context::scoped::Scoped<tokio[d1904c8317b844b6]::runtime::scheduler::Context>>::set::<<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[812a354ff5be3162]::pin::Pin<&mut core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>>::{closure#0}, core[812a354ff5be3162]::option::Option<()>>::{closure#0}, (alloc[9902a75dd20b7c99]::boxed::Box<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::Core>, core[812a354ff5be3162]::option::Option<()>)>
[INFO] [stdout]   14:     0x61790bafb306 - <tokio[d1904c8317b844b6]::runtime::runtime::Runtime>::block_on::<core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>
[INFO] [stdout]   15:     0x61790ba798fe - <integration_test[d51e51f2daa2840c]::proxy_handles_concurrent_connections::{closure#0} as core[812a354ff5be3162]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   16:     0x61790bb333eb - test[8de0c696b8e66f4f]::__rust_begin_short_backtrace::<core[812a354ff5be3162]::result::Result<(), alloc[9902a75dd20b7c99]::string::String>, fn() -> core[812a354ff5be3162]::result::Result<(), alloc[9902a75dd20b7c99]::string::String>>
[INFO] [stdout]   17:     0x61790bb40a35 - test[8de0c696b8e66f4f]::run_test::{closure#0}
[INFO] [stdout]   18:     0x61790bb3b4e4 - std[93043b772a62376c]::sys::backtrace::__rust_begin_short_backtrace::<test[8de0c696b8e66f4f]::run_test::{closure#1}, ()>
[INFO] [stdout]   19:     0x61790bb43b82 - <std[93043b772a62376c]::thread::lifecycle::spawn_unchecked<test[8de0c696b8e66f4f]::run_test::{closure#1}, ()>::{closure#1} as core[812a354ff5be3162]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   20:     0x61790c1c2d8f - <std[93043b772a62376c]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   21:     0x70d7acd2207a - <unknown>
[INFO] [stdout]   22:     0x70d7acdb5534 - clone
[INFO] [stdout]   23:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- proxy_logs_requests_to_sqlite stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'proxy_logs_requests_to_sqlite' (6077) panicked at tests/integration_test.rs:503:5:
[INFO] [stdout] assertion failed: response.contains("200")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61790c1c3e21 - <<std[93043b772a62376c]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[812a354ff5be3162]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x61790c1dd1ba - core[812a354ff5be3162]::fmt::write
[INFO] [stdout]    2:     0x61790c1c94fc - <alloc[9902a75dd20b7c99]::vec::Vec<u8> as std[93043b772a62376c]::io::Write>::write_fmt
[INFO] [stdout]    3:     0x61790c19f336 - std[93043b772a62376c]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x61790c1bab29 - std[93043b772a62376c]::panicking::default_hook
[INFO] [stdout]    5:     0x61790bb400b0 - test[8de0c696b8e66f4f]::test_main_inner::<test[8de0c696b8e66f4f]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x61790c1bae52 - std[93043b772a62376c]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x61790c19f414 - std[93043b772a62376c]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x61790c196409 - std[93043b772a62376c]::sys::backtrace::__rust_end_short_backtrace::<std[93043b772a62376c]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x61790c1a02dd - __rustc[9fcb67b4460bf95]::rust_begin_unwind
[INFO] [stdout]   10:     0x61790c1dd99c - core[812a354ff5be3162]::panicking::panic_fmt
[INFO] [stdout]   11:     0x61790c1dd962 - core[812a354ff5be3162]::panicking::panic
[INFO] [stdout]   12:     0x61790ba6eb78 - integration_test[d51e51f2daa2840c]::proxy_logs_requests_to_sqlite::{closure#0}
[INFO] [stdout]   13:     0x61790bb00b83 - <tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::Context>::enter::<core[812a354ff5be3162]::task::poll::Poll<()>, <tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[812a354ff5be3162]::pin::Pin<&mut core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]   14:     0x61790bb1853c - <tokio[d1904c8317b844b6]::runtime::context::scoped::Scoped<tokio[d1904c8317b844b6]::runtime::scheduler::Context>>::set::<<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[812a354ff5be3162]::pin::Pin<&mut core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>>::{closure#0}, core[812a354ff5be3162]::option::Option<()>>::{closure#0}, (alloc[9902a75dd20b7c99]::boxed::Box<tokio[d1904c8317b844b6]::runtime::scheduler::current_thread::Core>, core[812a354ff5be3162]::option::Option<()>)>
[INFO] [stdout]   15:     0x61790bafb306 - <tokio[d1904c8317b844b6]::runtime::runtime::Runtime>::block_on::<core[812a354ff5be3162]::pin::Pin<&mut dyn core[812a354ff5be3162]::future::future::Future<Output = ()>>>
[INFO] [stdout]   16:     0x61790ba7877e - <integration_test[d51e51f2daa2840c]::proxy_logs_requests_to_sqlite::{closure#0} as core[812a354ff5be3162]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   17:     0x61790bb333eb - test[8de0c696b8e66f4f]::__rust_begin_short_backtrace::<core[812a354ff5be3162]::result::Result<(), alloc[9902a75dd20b7c99]::string::String>, fn() -> core[812a354ff5be3162]::result::Result<(), alloc[9902a75dd20b7c99]::string::String>>
[INFO] [stdout]   18:     0x61790bb40a35 - test[8de0c696b8e66f4f]::run_test::{closure#0}
[INFO] [stdout]   19:     0x61790bb3b4e4 - std[93043b772a62376c]::sys::backtrace::__rust_begin_short_backtrace::<test[8de0c696b8e66f4f]::run_test::{closure#1}, ()>
[INFO] [stdout]   20:     0x61790bb43b82 - <std[93043b772a62376c]::thread::lifecycle::spawn_unchecked<test[8de0c696b8e66f4f]::run_test::{closure#1}, ()>::{closure#1} as core[812a354ff5be3162]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   21:     0x61790c1c2d8f - <std[93043b772a62376c]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   22:     0x70d7acd2207a - <unknown>
[INFO] [stdout]   23:     0x70d7acdb5534 - clone
[INFO] [stdout]   24:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     ask_channel_sends_request_on_ask_policy
[INFO] [stdout]     e2e_openclaw_full_flow
[INFO] [stdout]     proxy_handles_concurrent_connections
[INFO] [stdout]     proxy_logs_requests_to_sqlite
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 16 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test integration_test`
[INFO] running `Command { std: "docker" "inspect" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a", kill_on_drop: false }`
[INFO] [stdout] aa171312b89a7e5a706c7c7857860345350f861b35cb519ecd3aedf7a52b626a
