[INFO] cloning repository https://github.com/rysweet/Powderfinger
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rysweet/Powderfinger" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frysweet%2FPowderfinger", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frysweet%2FPowderfinger'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 97a48f9447a4d9a77b39babaa36c8ad22a351752
[INFO] testing rysweet/Powderfinger against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frysweet%2FPowderfinger" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/rysweet/Powderfinger
[INFO] finished tweaking git repo https://github.com/rysweet/Powderfinger
[INFO] tweaked toml for git repo https://github.com/rysweet/Powderfinger written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/rysweet/Powderfinger on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/rysweet/Powderfinger already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating git repository `https://github.com/rysweet/rustyclawd.git`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tracing-opentelemetry v0.29.0
[INFO] [stderr]   Downloaded secrecy v0.10.3
[INFO] [stderr]   Downloaded opentelemetry-http v0.28.0
[INFO] [stderr]   Downloaded opentelemetry-otlp v0.28.0
[INFO] [stderr]   Downloaded opentelemetry v0.28.0
[INFO] [stderr]   Downloaded num-cmp v0.1.0
[INFO] [stderr]   Downloaded openssl-sys v0.9.115
[INFO] [stderr]   Downloaded deadpool v0.12.3
[INFO] [stderr]   Downloaded iso8601 v0.6.3
[INFO] [stderr]   Downloaded bytecount v0.6.9
[INFO] [stderr]   Downloaded wiremock v0.6.5
[INFO] [stderr]   Downloaded assert_cmd v2.2.0
[INFO] [stderr]   Downloaded prometheus v0.13.4
[INFO] [stderr]   Downloaded jsonschema v0.17.1
[INFO] [stderr]   Downloaded fraction v0.13.1
[INFO] [stderr]   Downloaded opentelemetry-proto v0.28.0
[INFO] [stderr]   Downloaded rusqlite v0.32.1
[INFO] [stderr]   Downloaded protobuf v2.28.0
[INFO] [stderr]   Downloaded opentelemetry_sdk v0.28.0
[INFO] [stderr]   Downloaded openssl v0.10.79
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493
[INFO] running `Command { std: "docker" "start" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493", 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" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493", 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" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]    Compiling sha1_smol v1.0.1
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling indexmap v2.13.1
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling openssl v0.10.79
[INFO] [stderr]    Compiling aws-lc-rs v1.16.2
[INFO] [stderr]    Compiling foreign-types v0.3.2
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling iri-string v0.7.12
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling cc v1.2.59
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling matchit v0.7.3
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling pf-prompts v0.2.0 (/opt/rustwide/workdir/crates/pf-prompts)
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling protobuf v2.28.0
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling openssl-sys v0.9.115
[INFO] [stderr]    Compiling aws-lc-sys v0.39.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling prometheus v0.13.4
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tokio v1.51.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.11
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling prost-derive v0.13.5
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling zerofrom v0.1.7
[INFO] [stderr]    Compiling opentelemetry v0.28.0
[INFO] [stderr]    Compiling secrecy v0.10.3
[INFO] [stderr]    Compiling yoke v0.8.2
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling pin-project v1.1.11
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling prost v0.13.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling dialoguer v0.11.0
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling pf-types v0.2.0 (/opt/rustwide/workdir/crates/pf-types)
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling pf-watcher v0.2.0 (/opt/rustwide/workdir/crates/pf-watcher)
[INFO] [stderr]    Compiling pf-cwe v0.2.0 (/opt/rustwide/workdir/crates/pf-cwe)
[INFO] [stderr]    Compiling pf-deployer v0.2.0 (/opt/rustwide/workdir/crates/pf-deployer)
[INFO] [stderr]    Compiling pf-aws v0.2.0 (/opt/rustwide/workdir/crates/pf-aws)
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling opentelemetry_sdk v0.28.0
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling pf-terrain v0.2.0 (/opt/rustwide/workdir/crates/pf-terrain)
[INFO] [stderr]    Compiling pf-rule-scaffold v0.2.0 (/opt/rustwide/workdir/crates/pf-rule-scaffold)
[INFO] [stderr]    Compiling pf-terraform v0.2.0 (/opt/rustwide/workdir/crates/pf-terraform)
[INFO] [stderr]    Compiling pf-catalog v0.2.0 (/opt/rustwide/workdir/crates/pf-catalog)
[INFO] [stderr]    Compiling pf-validator v0.2.0 (/opt/rustwide/workdir/crates/pf-validator)
[INFO] [stderr]    Compiling pf-composer v0.2.0 (/opt/rustwide/workdir/crates/pf-composer)
[INFO] [stderr]    Compiling tracing-opentelemetry v0.29.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling pf-eval v0.2.0 (/opt/rustwide/workdir/crates/pf-eval)
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling hyper-timeout v0.5.2
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling opentelemetry-http v0.28.0
[INFO] [stderr]    Compiling pf-runtime v0.2.0 (/opt/rustwide/workdir/crates/pf-runtime)
[INFO] [stderr]    Compiling rustyclawd-core v0.1.1 (https://github.com/rysweet/rustyclawd.git?rev=43ebaa1#43ebaa1c)
[INFO] [stderr]    Compiling tonic v0.12.3
[INFO] [stderr]    Compiling opentelemetry-proto v0.28.0
[INFO] [stderr]    Compiling opentelemetry-otlp v0.28.0
[INFO] [stderr]    Compiling pf-otel v0.2.0 (/opt/rustwide/workdir/crates/pf-otel)
[INFO] [stderr]    Compiling pf-agent v0.2.0 (/opt/rustwide/workdir/crates/pf-agent)
[INFO] [stderr]    Compiling pf-gym v0.2.0 (/opt/rustwide/workdir/crates/pf-gym)
[INFO] [stderr]    Compiling pf-workflow v0.2.0 (/opt/rustwide/workdir/crates/pf-workflow)
[INFO] [stderr]    Compiling pf-investigate v0.2.0 (/opt/rustwide/workdir/crates/pf-investigate)
[INFO] [stderr]    Compiling pf-improve v0.2.0 (/opt/rustwide/workdir/crates/pf-improve)
[INFO] [stderr]    Compiling pf-shift-left v0.2.0 (/opt/rustwide/workdir/crates/pf-shift-left)
[INFO] [stderr]    Compiling promote-rules v0.2.0 (/opt/rustwide/workdir/tools/promote-rules)
[INFO] [stderr]    Compiling pf-cli v0.2.0 (/opt/rustwide/workdir/crates/pf-cli)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 32s
[INFO] running `Command { std: "docker" "inspect" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493", 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" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling tokio v1.51.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling pf-prompts v0.2.0 (/opt/rustwide/workdir/crates/pf-prompts)
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling assert_cmd v2.2.0
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling num-cmp v0.1.0
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]    Compiling bytecount v0.6.9
[INFO] [stderr]    Compiling predicates-tree v1.0.13
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling fancy-regex v0.11.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling predicates v3.1.4
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling pf-types v0.2.0 (/opt/rustwide/workdir/crates/pf-types)
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling fraction v0.13.1
[INFO] [stderr]    Compiling pf-cwe v0.2.0 (/opt/rustwide/workdir/crates/pf-cwe)
[INFO] [stderr]    Compiling pf-aws v0.2.0 (/opt/rustwide/workdir/crates/pf-aws)
[INFO] [stderr]    Compiling iso8601 v0.6.3
[INFO] [stderr]    Compiling pf-terrain v0.2.0 (/opt/rustwide/workdir/crates/pf-terrain)
[INFO] [stderr]    Compiling pf-rule-scaffold v0.2.0 (/opt/rustwide/workdir/crates/pf-rule-scaffold)
[INFO] [stderr]    Compiling jsonschema v0.17.1
[INFO] [stderr]    Compiling pf-terraform v0.2.0 (/opt/rustwide/workdir/crates/pf-terraform)
[INFO] [stderr]    Compiling pf-catalog v0.2.0 (/opt/rustwide/workdir/crates/pf-catalog)
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling pf-deployer v0.2.0 (/opt/rustwide/workdir/crates/pf-deployer)
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling pf-watcher v0.2.0 (/opt/rustwide/workdir/crates/pf-watcher)
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling pf-composer v0.2.0 (/opt/rustwide/workdir/crates/pf-composer)
[INFO] [stderr]    Compiling pf-validator v0.2.0 (/opt/rustwide/workdir/crates/pf-validator)
[INFO] [stderr]    Compiling opentelemetry_sdk v0.28.0
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling pf-eval v0.2.0 (/opt/rustwide/workdir/crates/pf-eval)
[INFO] [stderr]    Compiling tracing-opentelemetry v0.29.0
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling hyper-timeout v0.5.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling opentelemetry-http v0.28.0
[INFO] [stderr]    Compiling pf-runtime v0.2.0 (/opt/rustwide/workdir/crates/pf-runtime)
[INFO] [stderr]    Compiling rustyclawd-core v0.1.1 (https://github.com/rysweet/rustyclawd.git?rev=43ebaa1#43ebaa1c)
[INFO] [stderr]    Compiling tonic v0.12.3
[INFO] [stderr]    Compiling opentelemetry-proto v0.28.0
[INFO] [stderr]    Compiling opentelemetry-otlp v0.28.0
[INFO] [stderr]    Compiling pf-otel v0.2.0 (/opt/rustwide/workdir/crates/pf-otel)
[INFO] [stderr]    Compiling pf-agent v0.2.0 (/opt/rustwide/workdir/crates/pf-agent)
[INFO] [stderr]    Compiling pf-workflow v0.2.0 (/opt/rustwide/workdir/crates/pf-workflow)
[INFO] [stderr]    Compiling pf-gym v0.2.0 (/opt/rustwide/workdir/crates/pf-gym)
[INFO] [stderr]    Compiling pf-investigate v0.2.0 (/opt/rustwide/workdir/crates/pf-investigate)
[INFO] [stderr]    Compiling pf-shift-left v0.2.0 (/opt/rustwide/workdir/crates/pf-shift-left)
[INFO] [stderr]    Compiling pf-improve v0.2.0 (/opt/rustwide/workdir/crates/pf-improve)
[INFO] [stderr]    Compiling promote-rules v0.2.0 (/opt/rustwide/workdir/tools/promote-rules)
[INFO] [stderr]    Compiling pf-cli v0.2.0 (/opt/rustwide/workdir/crates/pf-cli)
[INFO] [stderr]     Finished `test` profile [unoptimized] target(s) in 1m 49s
[INFO] running `Command { std: "docker" "inspect" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493", 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" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized] target(s) in 0.71s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_agent-9e08e53b09b0e316)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/dispatch.rs (/opt/rustwide/target/debug/deps/dispatch-625092084bbd898f)
[INFO] [stdout] running 63 tests
[INFO] [stdout] test azure_tool::tests::test_azure_tool_debug_clone ... ok
[INFO] [stdout] test azure_tool::tests::test_all_action_names_documented ... ok
[INFO] [stdout] test azure_tool::tests::test_azure_tool_new_with_config ... ok
[INFO] [stdout] test azure_tool::tests::test_azure_tool_new_default ... ok
[INFO] [stdout] test card::tests::test_extract_frontmatter_none ... ok
[INFO] [stdout] test card::tests::test_extract_heading ... ok
[INFO] [stdout] test card::tests::test_parse_without_frontmatter ... ok
[INFO] [stdout] test card::tests::test_extract_frontmatter ... ok
[INFO] [stdout] test card::tests::test_agent_card_serde_roundtrip ... ok
[INFO] [stdout] test card::tests::test_parse_frontmatter_defaults ... ok
[INFO] [stdout] test card::tests::test_parse_with_frontmatter ... ok
[INFO] [stdout] test azure_tool::tests::test_get_nsg_rules_missing_args ... ok
[INFO] [stdout] test context::tests::finding_compliance_defaults_to_empty ... ok
[INFO] [stdout] test azure_tool::tests::test_show_resource_missing_arg ... ok
[INFO] [stdout] test azure_tool::tests::test_missing_required_arg ... ok
[INFO] [stdout] test azure_tool::tests::test_action_dispatch_unknown ... ok
[INFO] [stdout] test context::tests::enrich_compliance_populates_known_cwe ... ok
[INFO] [stdout] test context::tests::enrich_compliance_unknown_cwe_stays_empty ... ok
[INFO] [stdout] test azure_tool::tests::test_get_role_assignments_missing_arg ... ok
[INFO] [stdout] test context::tests::finding_without_compliance_omits_field_in_json ... ok
[INFO] [stdout] test context::tests::finding_with_compliance_serde_roundtrip ... ok
[INFO] [stdout] test card::tests::test_load_all_with_temp_dir ... ok
[INFO] [stdout] test context::tests::test_finding_serde_roundtrip ... ok
[INFO] [stdout] test context::tests::test_investigation_context_serde_roundtrip ... ok
[INFO] [stdout] test context::tests::test_add_finding ... ok
[INFO] [stdout] test context::tests::test_new_context ... ok
[INFO] [stdout] test context::tests::test_azure_resource_serde_roundtrip ... ok
[INFO] [stdout] test executor_helpers::tests::test_normalize_model_strips_date_suffix ... ok
[INFO] [stdout] test executor_parsing::tests::test_build_user_prompt ... ok
[INFO] [stdout] test context::tests::test_findings_by_severity_multiple ... ok
[INFO] [stdout] test executor_parsing::tests::test_confidence_clamped_to_valid_range ... ok
[INFO] [stdout] test executor_parsing::tests::test_findings_format_instruction_contains_schema ... ok
[INFO] [stdout] test azure_tool::tests::test_action_dispatch_list_subscriptions ... ok
[INFO] [stdout] test executor_parsing::tests::test_infinity_confidence_defaults ... ok
[INFO] [stdout] test context::tests::test_add_resource_to_context ... ok
[INFO] [stdout] test executor_parsing::tests::test_nan_confidence_defaults ... ok
[INFO] [stdout] test executor_helpers::tests::test_strip_date_suffix ... ok
[INFO] [stdout] test executor_parsing::tests::test_parse_findings_bare_json ... ok
[INFO] [stdout] test executor_parsing::tests::test_parse_findings_json_block ... ok
[INFO] [stdout] test executor_parsing::tests::test_unknown_severity_defaults_to_low ... ok
[INFO] [stdout] test result::tests::test_agent_status_serde_all_variants ... ok
[INFO] [stdout] test result::tests::test_empty_result ... ok
[INFO] [stdout] test result::tests::test_critical_findings ... ok
[INFO] [stdout] test result::tests::test_total_tokens_with_values ... ok
[INFO] [stdout] test executor_parsing::tests::test_parse_findings_empty ... ok
[INFO] [stdout] test result::tests::test_agent_result_serde_roundtrip ... ok
[INFO] [stdout] test result::tests::test_agent_finding_serde_roundtrip ... ok
[INFO] [stdout] test executor_helpers::tests::test_tool_schema_azure ... ok
[INFO] [stdout] test card::tests::test_load_all_empty_dir ... ok
[INFO] [stdout] test tests::test_agent_error_display ... ok
[INFO] [stdout] test tools::tests::test_registry_not_found ... ok
[INFO] [stdout] test tests::test_tool_error_display ... ok
[INFO] [stdout] test tools::tests::test_cwe_lookup_missing_arg ... ok
[INFO] [stdout] test tools::tests::test_registry_operations ... ok
[INFO] [stdout] test tools::tests::test_tool_params_serde_roundtrip ... ok
[INFO] [stdout] test tools::tests::test_tool_result_serde_roundtrip ... ok
[INFO] [stdout] test tools::tests::test_tool_error_display_variants ... ok
[INFO] [stdout] test azure_tool::tests::test_action_requires_both_args ... ok
[INFO] [stdout] test context::tests::enrich_compliance_is_idempotent ... ok
[INFO] [stdout] test azure_tool::tests::test_run_az_version ... ok
[INFO] [stdout] test tools::tests::test_cwe_lookup_not_found ... ok
[INFO] [stdout] test tools::tests::test_registry_execute ... ok
[INFO] [stdout] test tools::tests::test_cwe_lookup_tool ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 63 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test generated_fallback_returns_none_for_missing_cwe ... ok
[INFO] [stdout] test generated_fallback_loads_when_no_handcrafted_match ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_aws-fe4936eb12a03f4e)
[INFO] [stdout] test generated_catalog_covers_expected_cwe_volume ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 33 tests
[INFO] [stdout] test scanner::tests::cloudtrail_ok_no_finding ... ok
[INFO] [stdout] test scanner::tests::ec2_imdsv2_required_no_finding ... ok
[INFO] [stdout] test rules::tests::default_rules_has_10_rules ... ok
[INFO] [stdout] test rules::tests::all_rules_have_descriptions ... ok
[INFO] [stdout] test rules::tests::all_rules_have_cwe_ids ... ok
[INFO] [stdout] test scanner::tests::empty_resources_no_findings ... ok
[INFO] [stdout] test rules::tests::rule_debug_format ... ok
[INFO] [stdout] test scanner::tests::ec2_no_imdsv2_detected ... ok
[INFO] [stdout] test scanner::tests::cloudtrail_not_multiregion_detected ... ok
[INFO] [stdout] test rules::tests::all_rules_have_titles ... ok
[INFO] [stdout] test rules::tests::all_rules_have_resource_patterns ... ok
[INFO] [stdout] test scanner::tests::finding_ids_are_unique ... ok
[INFO] [stdout] test scanner::tests::iam_admin_policy_detected ... ok
[INFO] [stdout] test rules::tests::all_rules_have_remediation ... ok
[INFO] [stdout] test resource::tests::resource_roundtrip_json ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_catalog-0451f8095778c241)
[INFO] [stdout] test scanner::tests::iam_user_inline_policies_detected ... ok
[INFO] [stdout] test scanner::tests::rds_no_encryption_detected ... ok
[INFO] [stdout] test scanner::tests::iam_scoped_policy_no_finding ... ok
[INFO] [stdout] test resource::tests::finding_roundtrip_json ... ok
[INFO] [stdout] test scanner::tests::rds_private_no_finding ... ok
[INFO] [stdout] test scanner::tests::resource_matches_case_insensitive ... ok
[INFO] [stdout] test scanner::tests::resource_matches_wildcard ... ok
[INFO] [stdout] test scanner::tests::root_no_access_keys_no_finding ... ok
[INFO] [stdout] test scanner::tests::s3_no_encryption_detected ... ok
[INFO] [stdout] test scanner::tests::s3_public_acl_detected ... ok
[INFO] [stdout] test scanner::tests::s3_private_no_finding ... ok
[INFO] [stdout] test scanner::tests::scanner_default_trait ... ok
[INFO] [stdout] test scanner::tests::security_group_open_ssh_detected ... ok
[INFO] [stdout] test scanner::tests::root_access_keys_detected ... ok
[INFO] [stdout] test scanner::tests::scanner_debug_format ... ok
[INFO] [stdout] test scanner::tests::security_group_restricted_no_finding ... ok
[INFO] [stdout] test scanner::tests::scanner_has_rules ... ok
[INFO] [stdout] test scanner::tests::rds_public_detected ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test catalog::tests::test_content_hash_deterministic ... ok
[INFO] [stdout] test catalog::tests::test_different_content_different_hash ... ok
[INFO] [stdout] test catalog::tests::test_catalog_dedup ... ok
[INFO] [stdout] test catalog::tests::test_catalog_insert_and_get ... ok
[INFO] [stdout] test catalog::tests::test_catalog_cwe_index ... ok
[INFO] [stdout] test catalog::tests::test_find_by_kind ... ok
[INFO] [stdout] test catalog::tests::test_catalog_json_roundtrip ... ok
[INFO] [stdout] test flashcard_gen::tests::test_flashcard_tags_include_category ... ok
[INFO] [stdout] test flashcard_gen::tests::test_flashcard_has_valid_template ... ok
[INFO] [stdout] test storage::tests::test_file_storage_roundtrip ... ok
[INFO] [stdout] test flashcard_gen::tests::test_generate_flashcard_known_cwe ... ok
[INFO] [stdout] test flashcard_gen::tests::test_difficulty_estimation ... ok
[INFO] [stdout] test flashcard_gen::tests::test_generate_flashcard_unknown_cwe ... ok
[INFO] [stdout] test flashcard_gen::tests::test_generate_all_flashcards ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_cli-ab17c59c3ee62edd)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 67 tests
[INFO] [stdout] test commands::tests::test_generate_aws ... ok
[INFO] [stdout] test cost_cmd::tests::gate_is_noop_when_no_flags ... ok
[INFO] [stdout] test cost_cmd::tests::gate_estimate_only_returns_early ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_normalize_cwe_id ... ok
[INFO] [stdout] test commands::tests::test_compose_aws ... ok
[INFO] [stdout] test deploy_cmd::tests::test_copy_dir_recursive ... ok
[INFO] [stdout] test deploy_cmd::tests::test_plan_needs_identity_infra_only ... ok
[INFO] [stdout] test deploy_cmd::tests::test_generate_run_id_uniqueness ... ok
[INFO] [stdout] test deploy_cmd::tests::test_validate_chain_id ... ok
[INFO] [stdout] test deploy_cmd::tests::test_validate_run_id ... ok
[INFO] [stdout] test feedback_cmd::tests::test_feedback_known_cwe ... ok
[INFO] [stdout] test deploy_cmd::tests::test_deploy_pipeline_generates_terraform ... ok
[INFO] [stdout] test deploy_cmd::tests::test_deploy_pipeline_run_id_creates_unique_dir ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_tf_content_valid ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_numeric_id ... ok
[INFO] [stdout] test commands::tests::test_analyze_cwe ... ok
[INFO] [stdout] test commands::tests::test_generate ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_list_chains ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_known_cwe ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_default_output_dir ... ok
[INFO] [stdout] test commands::tests::test_analyze_keyword ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_unknown_cwe ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_validators ... ok
[INFO] [stdout] test probe_cmd::tests::test_rebuild_unknown_chain ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_resolve_chain_ids ... ok
[INFO] [stdout] test probe_cmd::tests::test_truncate_long ... ok
[INFO] [stdout] test probe_cmd::tests::test_rebuild_known_chain ... ok
[INFO] [stdout] test recipe_agents::tests::test_azure_expert ... ok
[INFO] [stdout] test commands::tests::test_compose ... ok
[INFO] [stdout] test probe_cmd::tests::test_truncate_multibyte_utf8 ... ok
[INFO] [stdout] test probe_cmd::tests::test_truncate_short ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_build_steps_from_template ... ok
[INFO] [stdout] test recipe_agents::tests::test_dispatch_known_agent ... ok
[INFO] [stdout] test recipe_agents::tests::test_dispatch_unknown_agent ... ok
[INFO] [stdout] test recipe_agents::tests::test_extract_cwe_ids ... ok
[INFO] [stdout] test recipe_agents::tests::test_extract_cwe_ids_empty ... ok
[INFO] [stdout] test recipe_agents::tests::test_investigation_agents_require_async ... ok
[INFO] [stdout] test recipe_agents::tests::test_is_investigation_agent ... ok
[INFO] [stdout] test recipe_agents::tests::test_killchain_composer ... ok
[INFO] [stdout] test recipe_agents::tests::test_security_configurator ... ok
[INFO] [stdout] test recipe_agents::tests::test_template_validator ... ok
[INFO] [stdout] test recipe_agents::tests::test_terraform_generator_empty_context_errors ... ok
[INFO] [stdout] test recipe_agents::tests::test_template_validator_generated_templates_key ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_dry_run_full_recipe ... ok
[INFO] [stdout] test recipe_agents::tests::test_terraform_expert_alias ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_expand_template_no_vars ... ok
[INFO] [stdout] test commands::tests::test_eval ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_dry_run_bash_step ... ok
[INFO] [stdout] test deploy_cmd::tests::test_deploy_dry_run ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_evaluate_condition_true ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_expand_template ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_evaluate_condition_false ... ok
[INFO] [stdout] test tests::test_generate_known_cwe_succeeds ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_validate_bash_rejects_injection ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_execute_bash_step_real ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_list_recipes ... ok
[INFO] [stdout] test cost_cmd::tests::gate_proceeds_when_under_budget ... ok
[INFO] [stdout] test feedback_cmd::tests::test_feedback_unknown_cwe ... ok
[INFO] [stdout] test recipe_agents::tests::test_cwe_analyst_with_known_cwe ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_load_recipe_yaml ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_skipped_condition ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_deploy_dry_run ... ok
[INFO] [stdout] test semantic_cmd::tests::test_analyze_semantic_json ... ok
[INFO] [stdout] test semantic_cmd::tests::test_analyze_semantic_table ... ok
[INFO] [stdout] test semantic_cmd::tests::test_analyze_semantic_bad_format ... ok
[INFO] [stdout] test flashcard_cmd::tests::test_flashcard_stats_runs ... ok
[INFO] [stdout] test flashcard_cmd::tests::test_generate_to_tempdir ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 67 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.30s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/powderfinger-372d47613ec43644)
[INFO] [stdout] 
[INFO] [stdout] running 166 tests
[INFO] [stdout] test attack_path_cmd::tests::test_attack_paths_empty_cwe_ids ... ok
[INFO] [stdout] test commands::tests::test_compose_aws ... ok
[INFO] [stdout] test attack_path_cmd::tests::test_graph_format_parsing ... ok
[INFO] [stdout] test cost_cmd::tests::gate_is_noop_when_no_flags ... ok
[INFO] [stdout] test commands::tests::test_generate_aws ... ok
[INFO] [stdout] test cost_cmd::tests::gate_proceeds_when_under_budget ... ok
[INFO] [stdout] test cost_cmd::tests::gate_estimate_only_returns_early ... ok
[INFO] [stdout] test dashboard_cmd::tests::test_create_default_compose ... ok
[INFO] [stdout] test attack_path_cmd::tests::test_attack_paths_unknown_cwe_errors ... ok
[INFO] [stdout] test coverage_cmd::tests::test_coverage_runs ... ok
[INFO] [stdout] test commands::tests::test_generate ... ok
[INFO] [stdout] test attack_path_cmd::tests::test_build_killchain_produces_connections ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_numeric_id ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_default_output_dir ... ok
[INFO] [stdout] test attack_path_cmd::tests::test_attack_paths_multi_cwe_mermaid ... ok
[INFO] [stdout] test attack_path_cmd::tests::test_attack_paths_multi_cwe_dot ... ok
[INFO] [stdout] test commands::tests::test_analyze_cwe ... ok
[INFO] [stdout] test commands::tests::test_compose ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_known_cwe ... ok
[INFO] [stdout] test deploy_cmd::tests::test_plan_needs_identity_infra_only ... ok
[INFO] [stdout] test deploy_cmd::tests::test_validate_chain_id ... ok
[INFO] [stdout] test explore_cmd::tests::has_rule_uses_set ... ok
[INFO] [stdout] test deploy_cmd::tests::test_validate_run_id ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_tf_content_valid ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_deploy_cwe_unknown_cwe ... ok
[INFO] [stdout] test deploy_cmd::tests::test_generate_run_id_uniqueness ... ok
[INFO] [stdout] test commands::tests::test_analyze_keyword ... ok
[INFO] [stdout] test explore_data::tests::classify_known_labels ... ok
[INFO] [stdout] test explore_cmd::tests::wrap_plain_respects_width ... ok
[INFO] [stdout] test explore_data::tests::format_entry_label_marks_missing_rule ... ok
[INFO] [stdout] test deploy_cmd::tests::test_deploy_dry_run ... ok
[INFO] [stdout] test explore_data::tests::sort_key_orders_numerically ... ok
[INFO] [stdout] test explore_data::tests::top_level_menu_all_classify ... ok
[INFO] [stdout] test feedback_cmd::tests::test_feedback_unknown_cwe ... ok
[INFO] [stdout] test coverage_cmd::tests::test_agent_cwes_in_catalog ... ok
[INFO] [stdout] test explore_data::tests::owasp_top_10_resolves ... ok
[INFO] [stdout] test explore_data::tests::injection_keyword_hits_known_cwes ... ok
[INFO] [stdout] test feedback_cmd::tests::test_feedback_known_cwe ... ok
[INFO] [stdout] test improve_cmd::tests::test_show_history_no_file ... ok
[INFO] [stdout] test deploy_cmd::tests::test_deploy_pipeline_run_id_creates_unique_dir ... ok
[INFO] [stdout] test attack_path_cmd::tests::test_attack_paths_single_cwe ... ok
[INFO] [stdout] test investigate_aws_cmd::tests::render_text_output ... ok
[INFO] [stdout] test deploy_cmd::deploy_cwe_tests::tests::test_normalize_cwe_id ... ok
[INFO] [stdout] test deploy_cmd::tests::test_deploy_pipeline_generates_terraform ... ok
[INFO] [stdout] test investigate_aws_cmd::tests::demo_resources_non_empty ... ok
[INFO] [stdout] test investigate_chains_cmd::tests::chains_table_runs_without_error ... ok
[INFO] [stdout] test investigate_cmd_tests::tests::test_list_patterns ... ok
[INFO] [stdout] test investigate_cmd_tests::tests::test_parse_pattern ... ok
[INFO] [stdout] test investigate_chains_cmd::tests::errors_on_missing_dir ... ok
[INFO] [stdout] test investigate_aws_cmd::tests::demo_scan_finds_issues ... ok
[INFO] [stdout] test investigate_chains_cmd::tests::loads_from_findings_json ... ok
[INFO] [stdout] test deploy_cmd::tests::test_copy_dir_recursive ... ok
[INFO] [stdout] test probe_cmd::tests::test_truncate_long ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_validators ... ok
[INFO] [stdout] test probe_cmd::tests::test_rebuild_unknown_chain ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_build_steps_from_template ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_resolve_chain_ids ... ok
[INFO] [stdout] test probe_cmd::tests::test_rebuild_known_chain ... ok
[INFO] [stdout] test probe_cmd::tests::test_truncate_multibyte_utf8 ... ok
[INFO] [stdout] test probe_cmd::tests::test_truncate_short ... ok
[INFO] [stdout] test recipe_agents::tests::test_azure_expert ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_list_chains ... ok
[INFO] [stdout] test recipe_agents::tests::test_cwe_analyst_with_known_cwe ... ok
[INFO] [stdout] test recipe_agents::tests::test_dispatch_known_agent ... ok
[INFO] [stdout] test recipe_agents::tests::test_dispatch_unknown_agent ... ok
[INFO] [stdout] test recipe_agents::tests::test_investigation_agents_require_async ... ok
[INFO] [stdout] test recipe_agents::tests::test_extract_cwe_ids_empty ... ok
[INFO] [stdout] test recipe_agents::tests::test_extract_cwe_ids ... ok
[INFO] [stdout] test recipe_agents::tests::test_killchain_composer ... ok
[INFO] [stdout] test recipe_agents::tests::test_template_validator_generated_templates_key ... ok
[INFO] [stdout] test recipe_agents::tests::test_security_configurator ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_dry_run_bash_step ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_evaluate_condition_false ... ok
[INFO] [stdout] test recipe_agents::tests::test_terraform_generator_empty_context_errors ... ok
[INFO] [stdout] test recipe_agents::tests::test_terraform_expert_alias ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_dry_run_full_recipe ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_evaluate_condition_true ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_expand_template ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_expand_template_no_vars ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_load_recipe_yaml ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_skipped_condition ... ok
[INFO] [stdout] test remediate_cmd::tests::build_report_sorts_and_counts ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_validate_bash_rejects_injection ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_execute_bash_step_real ... ok
[INFO] [stdout] test remediate_cmd::tests::discover_errors_on_ambiguous ... ok
[INFO] [stdout] test remediate_cmd::tests::discover_picks_correct_sibling ... ok
[INFO] [stdout] test remediate_cmd::tests::load_findings_fails_when_absent ... ok
[INFO] [stdout] test remediate_cmd::tests::compose_hcl_emits_covered_and_tracks_uncovered ... ok
[INFO] [stdout] test remediate_cmd::tests::synthetic_after_drops_covered_findings ... ok
[INFO] [stdout] test remediate_cmd::tests::discover_errors_on_no_match ... ok
[INFO] [stdout] test remediate_cmd::tests::load_findings_falls_back_to_investigation_report ... ok
[INFO] [stdout] test remediate_cmd::tests::validate_run_id_rejects_traversal ... ok
[INFO] [stdout] test remediate_cmd::tests::load_findings_prefers_findings_json ... ok
[INFO] [stdout] test remediate_cmd::tests::validate_run_id_accepts_alphanum_and_dash ... ok
[INFO] [stdout] test remediate_history::tests::hash_is_deterministic_and_different ... ok
[INFO] [stdout] test remediate_propose_cmd_tests::build_prompt_contains_exemplars_and_target_id ... ok
[INFO] [stdout] test remediate_propose_cmd_tests::default_output_path_lives_in_workflow_crate ... ok
[INFO] [stdout] test remediate_propose_cmd_tests::discover_exemplars_returns_known_cwes ... ok
[INFO] [stdout] test remediate_propose_cmd_tests::extract_hcl_strips_code_fence ... ok
[INFO] [stdout] test remediate_propose_cmd_tests::rank_exemplars_skips_target_and_picks_top_n ... ok
[INFO] [stdout] test remediate_propose_cmd_tests::similarity_score_rewards_category_and_resource_overlap ... ok
[INFO] [stdout] test remediate_propose_cmd_tests::validate_cwe_id_rejects_bogus ... ok
[INFO] [stdout] test recipe_cmd::tests::recipe_cmd_tests::test_list_recipes ... ok
[INFO] [stdout] test recipe_agents::tests::test_is_investigation_agent ... ok
[INFO] [stdout] test recipe_agents::tests::test_template_validator ... ok
[INFO] [stdout] test report_cmd::tests::test_dashboard_generates_html ... ok
[INFO] [stdout] test report_cmd::tests::test_dashboard_invalid_json ... ok
[INFO] [stdout] test report_cmd::tests::test_dashboard_missing_sarif ... ok
[INFO] [stdout] test report_dashboard::tests::test_render_contains_structure ... ok
[INFO] [stdout] test multi_chain_cmd::tests::test_deploy_dry_run ... ok
[INFO] [stdout] test report_dashboard::tests::test_render_empty_runs ... ok
[INFO] [stdout] test report_dashboard::tests::test_render_escapes_json_in_html ... ok
[INFO] [stdout] test report_dashboard::tests::test_view_model_counts ... ok
[INFO] [stdout] test remediate_history::tests::schema_creates_expected_tables ... ok
[INFO] [stdout] test report_dashboard::tests::test_view_model_finding_with_properties ... ok
[INFO] [stdout] test report_dashboard::tests::test_view_model_finding_without_properties ... ok
[INFO] [stdout] test report_dashboard::tests::test_view_model_multiple_runs ... ok
[INFO] [stdout] test remediate_stats_cmd::tests::empty_db_renders_without_panic ... ok
[INFO] [stdout] test report_dashboard::tests::test_render_embeds_valid_json ... ok
[INFO] [stdout] test report_dashboard::tests::test_view_model_rule_metadata ... ok
[INFO] [stdout] test report_dashboard::tests::test_view_model_rule_with_full_description ... ok
[INFO] [stdout] test report_dashboard::tests::test_view_model_tool_info_from_first_run ... ok
[INFO] [stdout] test scenario_cmd::tests::test_run_resolve ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_bad_cwe ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_bad_name_not_kebab ... ok
[INFO] [stdout] test commands::tests::test_eval ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_empty_cwes ... ok
[INFO] [stdout] test scenario_cmd::tests::test_run_aws_generate ... ok
[INFO] [stdout] test scenario_cmd::tests::test_generate_scenario ... ok
[INFO] [stdout] test remediate_cmd::tests::remediate_writes_history_row ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_malformed_yaml ... ok
[INFO] [stdout] test remediate_stats_cmd::tests::rejects_unknown_format ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_missing_required_field ... ok
[INFO] [stdout] test scenario_packs::tests::test_builtin_packs_nonempty ... ok
[INFO] [stdout] test scenario_packs::tests::test_find_pack ... ok
[INFO] [stdout] test scenario_packs::tests::test_invalid_pack_name_errors ... ok
[INFO] [stdout] test scenario_packs::tests::test_owasp_top10_pack_has_16_entries ... ok
[INFO] [stdout] test remediate_history::tests::cwes_with_templates_and_latest_template ... ok
[INFO] [stdout] test remediate_history::tests::record_run_inserts_and_dedupes_template ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_bad_semver ... ok
[INFO] [stdout] test scenario_resolver::tests::test_resolve_concepts ... ok
[INFO] [stdout] test scenario_resolver::tests::test_resolve_attack_narrative ... ok
[INFO] [stdout] test scenario_resolver::tests::test_resolve_deduplicates ... ok
[INFO] [stdout] test scenario_resolver::tests::test_resolve_direct_cwes ... ok
[INFO] [stdout] test scenario_resolver::tests::test_only_deployable_cwes ... ok
[INFO] [stdout] test scenario_resolver::tests::test_resolve_owasp_category ... ok
[INFO] [stdout] test scenario_resolver::tests::test_resolve_empty_input ... ok
[INFO] [stdout] test remediate_history::tests::stats_by_template_groups_by_hash ... ok
[INFO] [stdout] test scenario_packs::tests::test_scenario_deploy_generates_all_tf_files ... ok
[INFO] [stdout] test scenario_resolver::tests::test_resolve_orders_by_phase ... ok
[INFO] [stdout] test validate_cmd::tests::test_validate_all_missing_dir ... ok
[INFO] [stdout] test validate_cmd::tests::test_validate_missing_dir ... ok
[INFO] [stdout] test remediate_stats_cmd::tests::build_report_is_filtered_by_cwe ... ok
[INFO] [stdout] test report_dashboard::tests::test_view_model_empty_location ... ok
[INFO] [stdout] test remediate_history::tests::stats_by_cwe_aggregates_success_rate ... ok
[INFO] [stdout] test coverage_cmd::tests::test_json_output ... ok
[INFO] [stdout] test remediate_cmd::tests::end_to_end_remediate_writes_tf_and_returns_report ... ok
[INFO] [stdout] test semantic_cmd::tests::test_analyze_semantic_json ... ok
[INFO] [stdout] test semantic_cmd::tests::test_analyze_semantic_bad_format ... ok
[INFO] [stdout] test semantic_cmd::tests::test_analyze_semantic_table ... ok
[INFO] [stdout] test flashcard_cmd::tests::test_flashcard_stats_runs ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_install_rejects_builtin_name_collision ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_load_and_duplicate_detection ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_install_and_uninstall_roundtrip ... ok
[INFO] [stdout] test scenario_pack_loader::tests::test_parse_valid ... ok
[INFO] [stdout] test flashcard_cmd::tests::test_generate_to_tempdir ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 166 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.61s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/e2e_pipeline.rs (/opt/rustwide/target/debug/deps/e2e_pipeline-598114d062dc65d4)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test e2e_cwe_522_key_vault_protection ... ok
[INFO] [stdout] test e2e_cwe_798_hardcoded_credentials ... ok
[INFO] [stdout] test e2e_batch_three_cwes ... ok
[INFO] [stdout] test e2e_overlap_exists ... ok
[INFO] [stdout] test e2e_cwe_532_log_retention ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/scan_plan_cli_tests.rs (/opt/rustwide/target/debug/deps/scan_plan_cli_tests-71f3cd261c703d43)
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test cli_github_pr_comment_format_emits_markdown_table ... ok
[INFO] [stdout] test fixture_hardcoded_creds_plan_detects_cwe_798 ... ok
[INFO] [stdout] test fixture_clean_plan_yields_no_findings ... ok
[INFO] [stdout] test snake_to_camel_basic ... ok
[INFO] [stdout] test cli_hardcoded_creds_plan_exits_nonzero ... ok
[INFO] [stdout] test fixture_missing_encryption_plan_detects_cwe_311 ... ok
[INFO] [stdout] test fixture_severities_align_with_design ... ok
[INFO] [stdout] test fixture_sqli_plan_detects_cwe_89 ... ok
[INFO] [stdout] test cli_sqli_plan_exits_nonzero_on_default_fail_on ... ok
[INFO] [stdout] test cli_clean_plan_text_says_no_findings ... ok
[INFO] [stdout] test cli_missing_plan_file_returns_error ... ok
[INFO] [stdout] test cli_text_format_includes_finding_count ... ok
[INFO] [stdout] test cli_output_flag_writes_to_file ... ok
[INFO] [stdout] test cli_sqli_plan_exits_zero_when_fail_on_critical ... ok
[INFO] [stdout] test cli_invalid_format_returns_error ... ok
[INFO] [stdout] test cli_missing_encryption_plan_detects_cwe_311 ... ok
[INFO] [stdout] test cli_sarif_format_emits_sarif_log ... ok
[INFO] [stdout] test cli_json_format_emits_array ... ok
[INFO] [stderr]      Running tests/scan_plan_unit_tests.rs (/opt/rustwide/target/debug/deps/scan_plan_unit_tests-ca2e64ec44271a70)
[INFO] [stdout] test cli_clean_plan_exits_zero ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test alias_table_maps_known_terraform_to_arm ... ok
[INFO] [stdout] test change_to_resource_skips_delete ... ok
[INFO] [stdout] test alias_table_returns_none_for_unknown ... ok
[INFO] [stdout] test action_filter_includes_create_and_update ... ok
[INFO] [stdout] test render_pr_comment_has_markdown_table_header ... ok
[INFO] [stdout] test render_text_lists_each_finding ... ok
[INFO] [stdout] test plan_to_resources_missing_resource_changes_errors ... ok
[INFO] [stdout] test render_pr_comment_truncates_at_max_findings ... ok
[INFO] [stdout] test output_format_from_str_accepts_all_variants ... ok
[INFO] [stdout] test render_text_clean_says_no_findings ... ok
[INFO] [stdout] test rekey_preserves_snake_and_adds_camel ... ok
[INFO] [stdout] test plan_to_resources_filters_no_op_changes ... ok
[INFO] [stdout] test rekey_recurses_into_nested_objects ... ok
[INFO] [stdout] test render_json_is_valid_array ... ok
[INFO] [stdout] test snake_to_camel_idempotent_on_already_camel ... ok
[INFO] [stdout] test format_dispatch_routes_to_correct_renderer ... ok
[INFO] [stdout] test change_to_resource_emits_for_create ... ok
[INFO] [stdout] test empty_findings_sarif_is_still_schema_valid ... ok
[INFO] [stdout] test sarif_output_validates_against_vendored_schema ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/tutorial_doctest.rs (/opt/rustwide/target/debug/deps/tutorial_doctest-b8ae3aa4f076f7b9)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test extract_subcommands_parses_correctly ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_composer-ea3b49e6494efe4c)
[INFO] [stdout] test tutorial_subcommands_respond_to_help ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.77s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 34 tests
[INFO] [stdout] test composer::tests::test_compose_empty_fails ... ok
[INFO] [stdout] test composer::tests::test_default_and_new_produce_equivalent_composer ... ok
[INFO] [stdout] test killchain_library::tests::test_library_has_at_least_25_chains ... ok
[INFO] [stdout] test killchain_library::tests::test_steps_have_3_to_6_entries ... ok
[INFO] [stdout] test killchain_library::tests::test_no_empty_steps ... ok
[INFO] [stdout] test killchain_library::tests::test_all_cwe_ids_are_supported ... ok
[INFO] [stdout] test merger::tests::test_extract_block_name_valid ... ok
[INFO] [stdout] test merger::tests::test_merge_empty_fails ... ok
[INFO] [stdout] test composer::tests::test_compose_multi_step_chain ... ok
[INFO] [stdout] test killchain_library::tests::test_unique_chain_ids ... ok
[INFO] [stdout] test killchain_library::tests::test_all_categories_present ... ok
[INFO] [stdout] test composer::tests::test_validate_ordering_detects_cycle ... ok
[INFO] [stdout] test composer::tests::test_merge_templates_missing_template_errors ... ok
[INFO] [stdout] test merger::tests::test_dedup_variables_removes_duplicates ... ok
[INFO] [stdout] test composer::tests::test_compose_single_step ... ok
[INFO] [stdout] test merger::tests::test_merge_deduplicates_variables ... ok
[INFO] [stdout] test merger::tests::test_dedup_resources_removes_duplicates ... ok
[INFO] [stdout] test merger::tests::test_merge_providers_tf_not_empty ... ok
[INFO] [stdout] test merger::tests::test_merge_multiple ... ok
[INFO] [stdout] test composer::tests::test_merge_templates ... ok
[INFO] [stdout] test composer::tests::test_validate_ordering_valid_chain ... ok
[INFO] [stdout] test merger::tests::test_merge_dedup_shared_cwe_resources ... ok
[INFO] [stdout] test merger::tests::test_dedup_resources_keeps_different_names ... ok
[INFO] [stdout] test merger::tests::test_merge_preserves_tfvars ... ok
[INFO] [stdout] test merger::tests::test_merge_picks_longest_providers_tf ... ok
[INFO] [stdout] test merger::tests::test_merge_scopes_resource_names ... ok
[INFO] [stdout] test merger::tests::test_extract_resource_key ... ok
[INFO] [stdout] test merger::tests::test_scope_resource_names_step1_unchanged ... ok
[INFO] [stdout] test merger::tests::test_scope_resource_names_step2_scoped ... ok
[INFO] [stdout] test merger::tests::test_merge_single ... ok
[INFO] [stdout] test merger::tests::test_merger_debug_clone ... ok
[INFO] [stdout] test killchain_library::tests::test_serialization_roundtrip ... ok
[INFO] [stdout] test tests::enriched_chains_have_mitre_techniques ... ok
[INFO] [stdout] test tests::enriched_ct01_has_techniques ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_cwe-aaba3cb63e9722c6)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 73 tests
[INFO] [stdout] test catalog::tests::test_catalog_debug_impl ... ok
[INFO] [stdout] test catalog::tests::test_catalog_categories ... ok
[INFO] [stdout] test catalog::tests::test_catalog_all_ids_and_entries ... ok
[INFO] [stdout] test attack::tests::collect_tactics_deduplicates ... ok
[INFO] [stdout] test catalog::tests::test_catalog_nonexistent_cwe ... ok
[INFO] [stdout] test catalog::tests::test_catalog_from_invalid_json ... ok
[INFO] [stdout] test catalog::tests::test_catalog_insert_and_get ... ok
[INFO] [stdout] test catalog::tests::test_catalog_empty_json_array ... ok
[INFO] [stdout] test catalog::tests::test_catalog_merge_json ... ok
[INFO] [stdout] test catalog::tests::test_catalog_from_json ... ok
[INFO] [stdout] test catalog::tests::test_insert_same_id_keeps_last_value ... ok
[INFO] [stdout] test compliance::tests::compliance_for_cwe_798_has_key_vault_control ... ok
[INFO] [stdout] test compliance::tests::at_least_10_cwes_have_compliance_mappings ... ok
[INFO] [stdout] test compliance::tests::compliance_for_cwe_79_has_cis_azure_9_1 ... ok
[INFO] [stdout] test compliance::tests::compliance_for_empty_string_returns_empty ... ok
[INFO] [stdout] test compliance::tests::compliance_for_cwe_returns_correct_control_ids ... ok
[INFO] [stdout] test compliance::tests::compliance_for_unknown_cwe_returns_empty ... ok
[INFO] [stdout] test compliance::tests::cwes_for_cis_azure_contains_known_cwes ... ok
[INFO] [stdout] test compliance::tests::compliance_map_is_bidirectionally_consistent ... ok
[INFO] [stdout] test compliance::tests::cwes_for_framework_has_no_duplicates ... ok
[INFO] [stdout] test compliance::tests::cwes_for_nist_returns_nonempty ... ok
[INFO] [stdout] test compliance::tests::cwes_for_framework_are_sorted ... ok
[INFO] [stdout] test compliance::tests::compliance_for_known_cwe_returns_three_frameworks ... ok
[INFO] [stdout] test compliance::tests::cwes_for_soc2_returns_nonempty ... ok
[INFO] [stdout] test compliance::tests::summarize_deduplicates_cwe_ids_in_controls ... ok
[INFO] [stdout] test compliance::tests::summarize_empty_findings_returns_zero_controls_with_findings ... ok
[INFO] [stdout] test compliance::tests::summarize_framework_field_matches_input ... ok
[INFO] [stdout] test compliance::tests::summarize_unknown_cwes_returns_empty_controls ... ok
[INFO] [stdout] test compliance::tests::summarize_with_findings_counts_correctly ... ok
[INFO] [stdout] test embed::tests::embedder_is_normalized ... ok
[INFO] [stdout] test embed::tests::tokenize_basic ... ok
[INFO] [stdout] test embed::tests::similar_texts_score_higher ... ok
[INFO] [stdout] test graph::tests::test_ancestors ... ok
[INFO] [stdout] test graph::tests::test_azure_resource_types ... ok
[INFO] [stdout] test graph::tests::test_ancestors_of_root ... ok
[INFO] [stdout] test graph::tests::test_by_azure_resource ... ok
[INFO] [stdout] test graph::tests::test_by_category ... ok
[INFO] [stdout] test graph::tests::test_descendants ... ok
[INFO] [stdout] test graph::tests::test_descendants_leaf ... ok
[INFO] [stdout] test graph::tests::test_reachable ... ok
[INFO] [stdout] test graph::tests::test_reachable_zero_hops ... ok
[INFO] [stdout] test graph::tests::test_roots ... ok
[INFO] [stdout] test graph::tests::test_category_names ... ok
[INFO] [stdout] test attack::tests::unknown_cwe_returns_empty ... ok
[INFO] [stdout] test embedded::tests::test_core_entries_have_all_fields_populated ... ok
[INFO] [stdout] test embedded::tests::test_embedded_catalog_has_all_959_entries ... ok
[INFO] [stdout] test attack::tests::cwe_798_has_multiple_techniques ... ok
[INFO] [stdout] test attack::tests::cwe_89_resolves_techniques ... ok
[INFO] [stdout] test attack::tests::cwe_79_resolves_to_execution ... ok
[INFO] [stdout] test embedded::tests::test_required_cwes_present ... ok
[INFO] [stdout] test embedded::tests::test_specific_entry_data_accuracy ... ok
[INFO] [stdout] test embedded::tests::test_search_by_severity ... ok
[INFO] [stdout] test embedded::tests::test_all_entries_have_severity ... ok
[INFO] [stdout] test embedded::tests::test_search_by_related ... ok
[INFO] [stdout] test embedded::tests::test_keyword_search_on_embedded ... ok
[INFO] [stdout] test search::tests::test_search_by_keyword ... ok
[INFO] [stdout] test semantic::tests::top_k_zero_returns_empty ... ok
[INFO] [stdout] test tests::test_crate_modules_accessible ... ok
[INFO] [stdout] test types::tests::test_cwe_serialization ... ok
[INFO] [stdout] test hierarchy::tests::test_azure_resources_applied ... ok
[INFO] [stdout] test types::tests::test_cwe_entry_creation ... ok
[INFO] [stdout] test hierarchy::tests::test_ancestors_after_enrichment ... ok
[INFO] [stdout] test hierarchy::tests::test_enrich_preserves_existing_data ... ok
[INFO] [stdout] test hierarchy::tests::test_hierarchy_applied ... ok
[INFO] [stdout] test hierarchy::tests::test_categories_applied ... ok
[INFO] [stdout] test hierarchy::tests::test_by_azure_resource ... ok
[INFO] [stdout] test hierarchy::tests::test_children_populated ... ok
[INFO] [stdout] test hierarchy::tests::test_descendants_after_enrichment ... ok
[INFO] [stdout] test hierarchy::tests::test_by_category_after_enrichment ... ok
[INFO] [stdout] test semantic::tests::corpus_matches_catalog ... ok
[INFO] [stdout] test semantic::tests::results_sorted_descending ... ok
[INFO] [stdout] test semantic::tests::sql_injection_returns_cwe_89_in_top5 ... ok
[INFO] [stdout] test embedded::tests::test_categories_cover_all_entries ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 73 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/build_embeddings.rs (/opt/rustwide/target/debug/deps/build_embeddings-5be6aa5dcb54db38)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_deployer-8cfb48330cb0df71)
[INFO] [stdout] 
[INFO] [stdout] running 32 tests
[INFO] [stdout] test cost_estimator::tests::buffer_is_20_percent ... ok
[INFO] [stdout] test cost_estimator::tests::fixture_cosmos_function ... ok
[INFO] [stdout] test cost_estimator::tests::exceeds_threshold_triggers ... ok
[INFO] [stdout] test cost_estimator::tests::estimate_for_dir_prefers_plan_json ... ok
[INFO] [stdout] test cost_estimator::tests::fixture_single_storage ... ok
[INFO] [stdout] test cost_estimator::tests::fixture_sqli_ignores_comments ... ok
[INFO] [stdout] test cost_estimator::tests::plan_json_counts_nested_modules ... ok
[INFO] [stdout] test cost_estimator::tests::unknown_resource_uses_default ... ok
[INFO] [stdout] test cost_estimator::tests::report_includes_estimate_line ... ok
[INFO] [stdout] test cost_estimator::tests::fixture_web_app ... ok
[INFO] [stdout] test cost_estimator::tests::estimate_for_dir_reads_tf_files ... ok
[INFO] [stdout] test deployer::tests::test_count_resources ... ok
[INFO] [stdout] test cost_estimator::tests::fixture_vm_farm_counts_pairs ... ok
[INFO] [stdout] test deployer::tests::test_deploy_status_all_variants ... ok
[INFO] [stdout] test deployer::tests::test_deploy_status_serialization ... ok
[INFO] [stdout] test deployer::tests::test_extract_rg ... ok
[INFO] [stdout] test deployer::tests::test_extract_rg_missing ... ok
[INFO] [stdout] test deployer::tests::test_manifest_serialization ... ok
[INFO] [stdout] test pricing::tests::lookup_known_resources_have_nonnegative_prices ... ok
[INFO] [stdout] test pricing::tests::lookup_unknown_falls_back_to_default ... ok
[INFO] [stdout] test deployer::tests::test_deployer_debug_clone ... ok
[INFO] [stdout] test terraform_cli::tests::test_cli_creation ... ok
[INFO] [stdout] test pricing::tests::table_contains_all_required_logical_buckets ... ok
[INFO] [stdout] test deployer::tests::test_empty_template_fails ... ok
[INFO] [stdout] test terraform_cli::tests::test_custom_binary ... ok
[INFO] [stdout] test pricing::tests::vm_price_is_in_sane_range ... ok
[INFO] [stdout] test deployer::tests::test_write_template_no_providers_when_empty ... ok
[INFO] [stdout] test deployer::tests::test_write_template_with_providers ... ok
[INFO] [stdout] test deployer::tests::test_write_template ... ok
[INFO] [stdout] test deployer::tests::test_dry_run ... ok
[INFO] [stdout] test deployer::tests::test_count_resources_empty ... ok
[INFO] [stdout] test terraform_cli::tests::test_output_with_missing_binary ... ok
[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] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_eval-fa45fb0eb2a278da)
[INFO] [stdout] 
[INFO] [stdout] running 38 tests
[INFO] [stdout] test benchmark_index::tests::test_sql_injection_range ... ok
[INFO] [stdout] test benchmark_index::tests::test_all_categories_have_ranges ... ok
[INFO] [stdout] test benchmark_index::tests::test_category_lookup ... ok
[INFO] [stdout] test benchmark_index::tests::test_tp_fp_sum_equals_total ... ok
[INFO] [stdout] test benchmark_index::tests::test_search_by_cwe ... ok
[INFO] [stdout] test benchmark_index::tests::test_total_cases_sum_to_2740 ... ok
[INFO] [stdout] test benchmark_index::tests::test_search_by_name ... ok
[INFO] [stdout] test benchmark_index::tests::test_no_overlapping_ranges ... ok
[INFO] [stdout] test benchmark_index::tests::test_unknown_cwe_empty ... ok
[INFO] [stdout] test levels::tests::test_level_ordering ... ok
[INFO] [stdout] test owasp::tests::test_all_categories_have_cwe ... ok
[INFO] [stdout] test owasp::tests::test_resolve_query_cwe_id ... ok
[INFO] [stdout] test owasp::tests::test_resolve_query_name ... ok
[INFO] [stdout] test owasp::tests::test_ground_truth_totals ... ok
[INFO] [stdout] test levels::tests::test_level_display ... ok
[INFO] [stdout] test owasp::tests::test_from_cwe_roundtrip ... ok
[INFO] [stdout] test owasp::tests::test_category_stats_serialization ... ok
[INFO] [stdout] test benchmark_index::tests::test_benchmark_summary ... ok
[INFO] [stdout] test owasp::tests::test_resolve_query_number ... ok
[INFO] [stdout] test owasp_top10::tests::test_cwe_mappings_nonempty ... ok
[INFO] [stdout] test owasp_top10::tests::test_all_categories_present ... ok
[INFO] [stdout] test owasp::tests::test_resolve_query_unknown ... ok
[INFO] [stdout] test owasp::tests::test_generate_template_sql_injection ... ok
[INFO] [stdout] test owasp_top10::tests::test_total_unique_cwes ... ok
[INFO] [stdout] test owasp_top10::tests::test_for_cwe_lookup ... ok
[INFO] [stdout] test runner::tests::test_eval_runner ... ok
[INFO] [stdout] test tests::test_crate_modules_accessible ... ok
[INFO] [stdout] test owasp_top10::tests::test_from_query ... ok
[INFO] [stdout] test owasp::tests::test_generate_template_all_categories ... ok
[INFO] [stdout] test eval_history::tests::test_eval_history_count ... ok
[INFO] [stdout] test eval_history::tests::test_eval_history_insert_and_query ... ok
[INFO] [stdout] test eval_history::tests::test_eval_history_highest_passing ... ok
[INFO] [stdout] test eval_history::tests::test_eval_history_compare_runs ... ok
[INFO] [stdout] test eval_history::tests::test_eval_history_run_ids ... ok
[INFO] [stdout] test owasp_top10::tests::test_coverage_analysis_runs ... ok
[INFO] [stdout] test owasp_top10::tests::test_a05_injection_has_good_coverage ... ok
[INFO] [stdout] test owasp_top10::tests::test_a09_logging_fully_covered ... ok
[INFO] [stdout] test owasp::tests::test_coverage_analysis ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 38 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/e2e_feedback.rs (/opt/rustwide/target/debug/deps/e2e_feedback-b3e1283b28012d99)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test feedback_batch_consistency ... ok
[INFO] [stdout] test feedback_pipeline_multi_cwe ... ok
[INFO] [stderr]      Running tests/eval_chains.rs (/opt/rustwide/target/debug/deps/eval_chains-ee3314efa02dd16a)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/eval_l1.rs (/opt/rustwide/target/debug/deps/eval_l1-bb5704058038a522)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test eval_l1_cwe_relationships ... ok
[INFO] [stdout] test eval_l1_mitre_techniques ... ok
[INFO] [stdout] test eval_l1_cwe_capec_mapping ... ok
[INFO] [stdout] test eval_l1_cwe_lookup_all_critical ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/eval_l10.rs (/opt/rustwide/target/debug/deps/eval_l10-cdb8ab856a1b02af)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test eval_l10_nationfirst_terrain_plans ... ok
[INFO] [stdout] test eval_l10_compose_nationfirst_killchains ... ok
[INFO] [stdout] test eval_l10_nationfirst_terraform_generation ... ok
[INFO] [stdout] test eval_l10_nationfirst_merged_templates ... ok
[INFO] [stdout] test eval_l10_nationfirst_catalog_population ... ok
[INFO] [stdout] test eval_l10_nationfirst_technique_to_cwe_mapping ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/eval_l11.rs (/opt/rustwide/target/debug/deps/eval_l11-b2ad69b5775555b4)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test eval_l11_pim_abuse_chain_phases ... ok
[INFO] [stdout] test eval_l11_ridgeline_terrain_plans ... ok
[INFO] [stdout] test eval_l11_group_ownership_chain_length ... ok
[INFO] [stdout] test eval_l11_ridgeline_terraform_generation ... ok
[INFO] [stdout] test eval_l11_compose_ridgeline_killchains ... ok
[INFO] [stdout] test eval_l11_ridgeline_catalog_population ... ok
[INFO] [stdout] test eval_l11_ridgeline_technique_to_cwe_mapping ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/eval_l12.rs (/opt/rustwide/target/debug/deps/eval_l12-e447b606274529d4)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test eval_l12_runner_records_high_levels ... ok
[INFO] [stdout] test eval_l12_identity_cwe_coverage ... ok
[INFO] [stdout] test eval_l12_cross_chain_resource_overlap ... ok
[INFO] [stdout] test eval_l12_template_dedup_across_chains ... ok
[INFO] [stdout] test eval_l12_generate_all_twelve_killchains ... ok
[INFO] [stdout] test eval_l12_merged_templates_valid_hcl ... ok
[INFO] [stdout] test eval_l12_full_catalog_both_evals ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/eval_l2.rs (/opt/rustwide/target/debug/deps/eval_l2-a9e22f309de33233)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test eval_l2_severity_search ... ok
[INFO] [stdout] test eval_l2_related_cwe_search ... ok
[INFO] [stdout] test eval_l2_keyword_search_log ... ok
[INFO] [stdout] test eval_l2_keyword_search_privilege ... ok
[INFO] [stdout] test eval_l2_keyword_search_injection ... ok
[INFO] [stdout] test eval_l2_keyword_search_credential ... ok
[INFO] [stderr]      Running tests/eval_l3.rs (/opt/rustwide/target/debug/deps/eval_l3-d2c91d900b869bdf)
[INFO] [stdout] test eval_l2_cwe_categories ... ok
[INFO] [stderr]      Running tests/eval_l5.rs (/opt/rustwide/target/debug/deps/eval_l5-e1a5bd925ff5fa0d)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test eval_l3_cwe94_resource_plan ... ok
[INFO] [stdout] test eval_l3_cwe522_resource_plan ... ok
[INFO] [stdout] test eval_l3_cwe269_resource_plan ... ok
[INFO] [stdout] test eval_l3_cwe532_resource_plan ... ok
[INFO] [stdout] test eval_l3_all_critical_cwes_produce_plans ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test eval_l5_cwe532_terraform_generation ... ok
[INFO] [stdout] test eval_l5_cwe269_terraform_generation ... ok
[INFO] [stdout] test eval_l5_cwe94_terraform_generation ... ok
[INFO] [stdout] test eval_l5_full_pipeline_secret_chain ... ok
[INFO] [stdout] test eval_l5_cwe522_terraform_generation ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running tests/eval_l9.rs (/opt/rustwide/target/debug/deps/eval_l9-cf5a5039425ab58a)
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test eval_l9_validation_dry_run ... ok
[INFO] [stdout] test eval_l9_merged_template_has_all_steps ... ok
[INFO] [stderr]      Running tests/integration_e2e.rs (/opt/rustwide/target/debug/deps/integration_e2e-c2b74853a2d872de)
[INFO] [stdout] test eval_l9_compose_secret_chain ... 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] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test terrain_plans_are_reasonable ... ok
[INFO] [stdout] test catalog_deduplication ... ok
[INFO] [stdout] test terraform_output_is_valid_hcl ... ok
[INFO] [stdout] test single_step_killchain ... ok
[INFO] [stdout] test end_to_end_secret_chain_pipeline ... ok
[INFO] [stdout] test identity_killchain_e2e ... ok
[INFO] [stdout] test cwe_search_covers_killchain_topics ... ok
[INFO] [stdout] test all_embedded_cwes_pipeline ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_gym-3fe2a2416fe9213d)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 93 tests
[INFO] [stdout] test external_corpus::tests::test_cwe_to_phase ... ok
[INFO] [stdout] test case::tests::test_connection_triple_from_connection ... ok
[INFO] [stdout] test case::tests::test_build_cases_from_killchain ... ok
[INFO] [stdout] test case::tests::test_case_manifest ... ok
[INFO] [stdout] test benchmark::tests::test_secret_chain_manifest ... ok
[INFO] [stdout] test history::tests::test_regression_detection ... ok
[INFO] [stdout] test case::tests::test_from_catalog_entry ... ok
[INFO] [stdout] test external_corpus::tests::test_corpus_summary ... ok
[INFO] [stdout] test external_corpus::tests::test_negative_detection ... ok
[INFO] [stdout] test external_corpus::tests::test_extract_cases_from_hcl ... ok
[INFO] [stdout] test history::tests::test_run_history_delta ... ok
[INFO] [stdout] test external_corpus::tests::test_check_to_cwe_map_has_entries ... ok
[INFO] [stdout] test history::tests::test_detector_version_hash ... ok
[INFO] [stdout] test improve_tests::test_analyze_failures_missed ... ok
[INFO] [stdout] test improve_tests::test_generalizability_check ... ok
[INFO] [stdout] test improve_tests::test_generate_proposals ... ok
[INFO] [stdout] test improve_tests::test_analyze_failures_fp ... ok
[INFO] [stdout] test history::tests::test_save_load_history ... ok
[INFO] [stdout] test levels::tests::test_d2_resource_localization ... ok
[INFO] [stdout] test levels::tests::test_d3_phase_assignment ... ok
[INFO] [stdout] test levels::tests::test_d4_connection_detection ... ok
[INFO] [stdout] test levels::tests::test_d5_full_chain ... ok
[INFO] [stdout] test case::tests::test_negative_case ... ok
[INFO] [stdout] test benchmark::tests::test_nationfirst_load ... ok
[INFO] [stdout] test benchmark::tests::test_ridgeline_load ... ok
[INFO] [stdout] test improve_tests::test_apply_accepted_proposals ... ok
[INFO] [stdout] test levels_advanced::tests::test_d12_target_mentions_consistency ... ok
[INFO] [stdout] test levels::tests::test_d1_cwe_classification ... ok
[INFO] [stdout] test case::tests::test_manifest_from_catalog ... ok
[INFO] [stdout] test levels_advanced::tests::test_d12_level_is_correct ... ok
[INFO] [stdout] test levels_advanced::tests::test_d11_needs_history ... ok
[INFO] [stdout] test levels_advanced::tests::test_d12_needs_history_file ... ok
[INFO] [stdout] test levels_advanced::tests::test_d6_nationfirst_returns_result ... ok
[INFO] [stdout] test levels_advanced::tests::test_d6_nationfirst_actual_nonempty ... ok
[INFO] [stdout] test levels_advanced::tests::test_d7_ridgeline_actual_nonempty ... ok
[INFO] [stdout] test levels_advanced::tests::test_d6_nationfirst_score_bounded ... ok
[INFO] [stdout] test levels_advanced::tests::test_d10_cross_scenario_actual_has_percentages ... ok
[INFO] [stdout] test levels_advanced::tests::test_d10_cross_scenario_returns_result ... ok
[INFO] [stdout] test levels_advanced::tests::test_score_with_fp_sets_rate ... ok
[INFO] [stdout] test levels_investigation::tests::test_d13_extra_findings_ignored ... ok
[INFO] [stdout] test levels_advanced::tests::test_d9_severity ... ok
[INFO] [stdout] test levels_investigation::tests::test_d13_insufficient_coverage_fails ... ok
[INFO] [stdout] test levels_advanced::tests::test_empty_score_all_zero ... ok
[INFO] [stdout] test levels_advanced::tests::test_d9_severity_accuracy_bounded ... ok
[INFO] [stdout] test levels_advanced::tests::test_d8_fp_rate_bounded ... ok
[INFO] [stdout] test levels_investigation::tests::test_d14_exceeds_threshold ... ok
[INFO] [stdout] test levels_advanced::tests::test_d8_negative_specificity ... ok
[INFO] [stdout] test levels_advanced::tests::test_d7_ridgeline_returns_result ... ok
[INFO] [stdout] test levels_investigation::tests::test_d14_no_false_positives ... ok
[INFO] [stdout] test levels_investigation::tests::test_d13_via_dispatch ... ok
[INFO] [stdout] test levels_investigation::tests::test_d15_empty_findings ... ok
[INFO] [stdout] test levels_investigation::tests::test_d14_via_dispatch ... ok
[INFO] [stdout] test levels_investigation::tests::test_d13_full_coverage ... ok
[INFO] [stdout] test levels_investigation::tests::test_d13_partial_coverage_passes ... ok
[INFO] [stdout] test levels_advanced::tests::test_d7_ridgeline_score_bounded ... ok
[INFO] [stdout] test levels_advanced::tests::test_d10_cross_scenario_averages_scores ... ok
[INFO] [stdout] test levels_investigation::tests::test_d14_empty_findings ... ok
[INFO] [stdout] test levels_investigation::tests::test_d15_mixed_remediation ... ok
[INFO] [stdout] test levels_investigation::tests::test_d15_all_have_remediation ... ok
[INFO] [stdout] test levels_investigation::tests::test_d15_no_remediation ... ok
[INFO] [stdout] test levels_investigation::tests::test_severity_weight ... ok
[INFO] [stdout] test negative::tests::test_corpus_summary ... ok
[INFO] [stdout] test negative::tests::test_harden_misconfig ... ok
[INFO] [stdout] test negative::tests::test_generate_hardened_cases ... ok
[INFO] [stdout] test reviewer::tests::test_review_from_failures ... ok
[INFO] [stdout] test reviewer::tests::test_reviewer_approves_broad_proposal ... ok
[INFO] [stdout] test levels_investigation::tests::test_load_findings_nonexistent_file ... ok
[INFO] [stdout] test levels_investigation::tests::test_d15_via_dispatch ... ok
[INFO] [stdout] test levels_investigation::tests::test_d15_short_remediation_rejected ... ok
[INFO] [stdout] test reviewer::tests::test_category_weights ... ok
[INFO] [stdout] test reviewer::tests::test_reviewer_borderline_needs_review ... ok
[INFO] [stdout] test reviewer::tests::test_reviewer_rejects_narrow_proposal ... ok
[INFO] [stdout] test reviewer::tests::test_apply_verdicts ... ok
[INFO] [stdout] test scorer::tests::test_negative_case_scoring ... ok
[INFO] [stdout] test scorer::tests::test_perfect_detection ... ok
[INFO] [stdout] test runner::tests::test_mock_runner_partial ... ok
[INFO] [stdout] test runner::tests::test_static_hcl_runner ... ok
[INFO] [stdout] test runner::tests::test_with_negatives ... ok
[INFO] [stdout] test scorer::tests::test_false_positives ... ok
[INFO] [stdout] test scorer::tests::test_no_detection ... ok
[INFO] [stdout] test scorer::tests::test_partial_detection ... ok
[INFO] [stdout] test levels_investigation::tests::test_d13_empty_findings ... ok
[INFO] [stdout] test levels_investigation::tests::test_cwe_hierarchy_exact_match ... ok
[INFO] [stdout] test levels_investigation::tests::test_cwe_hierarchy_child_matches_parent ... ok
[INFO] [stdout] test levels_investigation::tests::test_cwe_hierarchy_unrelated_no_match ... ok
[INFO] [stdout] test benchmark::tests::test_catalog_snapshot ... ok
[INFO] [stdout] test levels_investigation::tests::test_d13_hierarchy_with_child_cwes ... ok
[INFO] [stdout] test sqlite_history::tests::test_sqlite_runs_for_eval ... ok
[INFO] [stdout] test sqlite_history::tests::test_sqlite_insert_and_get ... ok
[INFO] [stdout] test sqlite_history::tests::test_sqlite_regression ... ok
[INFO] [stdout] test sqlite_history::tests::test_sqlite_delta ... ok
[INFO] [stdout] test sqlite_history::tests::test_sqlite_count ... ok
[INFO] [stdout] test sqlite_history::tests::test_sqlite_file_persistence ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_improve-05a179ac0e8a4b03)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 93 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 44 tests
[INFO] [stdout] test climber::climber_tests::test_level_to_detection_valid_range ... ok
[INFO] [stdout] test climber::climber_tests::test_improvement_description_basic_levels ... ok
[INFO] [stdout] test climber::climber_tests::test_improvement_description_advanced_levels ... ok
[INFO] [stdout] test climber::climber_tests::test_improvement_description_investigation_levels ... ok
[INFO] [stdout] test climber::climber_tests::test_improvement_description_unknown_level ... ok
[INFO] [stdout] test climber::climber_tests::test_empty_history_defaults ... ok
[INFO] [stdout] test climber::climber_tests::test_multi_cycle_best_score ... ok
[INFO] [stdout] test climber::climber_tests::test_single_cycle_history ... ok
[INFO] [stdout] test climber::climber_tests::test_total_improvement_from_first_before ... ok
[INFO] [stdout] test climber::tests::test_climb_history_operations ... ok
[INFO] [stdout] test climber::climber_tests::test_climb_history_serde_roundtrip ... ok
[INFO] [stdout] test climber::climber_tests::test_level_to_detection_out_of_range ... ok
[INFO] [stdout] test knowledge::knowledge_tests::test_add_patterns ... ok
[INFO] [stdout] test knowledge::knowledge_tests::test_empty_knowledge_store ... ok
[INFO] [stdout] test climber::climber_tests::test_load_nonexistent_file ... ok
[INFO] [stdout] test knowledge::knowledge_tests::test_insight_dedup_updates_frequency_and_fix ... ok
[INFO] [stdout] test knowledge::knowledge_tests::test_false_negative_insight_serde_roundtrip ... ok
[INFO] [stdout] test knowledge::knowledge_tests::test_learned_pattern_serde_roundtrip ... ok
[INFO] [stdout] test lib_tests::test_climb_config_default_values ... ok
[INFO] [stdout] test knowledge::knowledge_tests::test_knowledge_store_serde_roundtrip ... ok
[INFO] [stdout] test proposals::proposals_tests::test_all_proposal_status_variants_serde ... ok
[INFO] [stdout] test climber::tests::test_history_save_load ... ok
[INFO] [stdout] test proposals::proposals_tests::test_all_proposal_type_variants_serde ... ok
[INFO] [stdout] test knowledge::knowledge_tests::test_load_from_nonexistent_dir ... ok
[INFO] [stdout] test lib_tests::test_climb_config_serde_roundtrip ... ok
[INFO] [stdout] test lib_tests::test_cycle_verdict_all_variants_serde ... ok
[INFO] [stdout] test lib_tests::test_cycle_result_serde_roundtrip ... ok
[INFO] [stdout] test proposals::proposals_tests::test_holdout_validation_negative_impact ... ok
[INFO] [stdout] test lib_tests::test_cycle_verdict_equality ... ok
[INFO] [stdout] test proposals::tests::test_generalizability ... ok
[INFO] [stdout] test proposals::tests::test_holdout_validation ... ok
[INFO] [stdout] test proposals::proposals_tests::test_improvement_proposal_serde_roundtrip ... ok
[INFO] [stdout] test proposals::tests::test_proposal_types ... ok
[INFO] [stdout] test tests::test_cycle_verdict ... ok
[INFO] [stdout] test tests::test_default_config ... ok
[INFO] [stdout] test proposals::proposals_tests::test_holdout_validation_zero_impact ... ok
[INFO] [stdout] test knowledge::tests::test_knowledge_store_save_load ... ok
[INFO] [stdout] test proposals::proposals_tests::test_generalizability_empty_cases ... ok
[INFO] [stdout] test proposals::proposals_tests::test_generalizability_exactly_two_cases ... ok
[INFO] [stdout] test proposals::proposals_tests::test_holdout_validation_boundary ... ok
[INFO] [stdout] test climber::climber_tests::test_proposal_serde_roundtrip ... ok
[INFO] [stdout] test knowledge::tests::test_insight_dedup ... ok
[INFO] [stdout] test climber::climber_tests::test_total_cost_accumulates ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_investigate-3745828b5ee615ff)
[INFO] [stdout] test knowledge::knowledge_tests::test_add_multiple_different_insights ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 44 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 280 tests
[INFO] [stdout] test agent_metrics::tests::test_collect_metrics_basic ... ok
[INFO] [stdout] test agent_metrics::tests::test_format_stats_table_sorted_by_latency ... ok
[INFO] [stdout] test agent_metrics::tests::test_format_stats_json_valid ... ok
[INFO] [stdout] test agent_metrics::tests::test_collect_metrics_error_counting ... ok
[INFO] [stdout] test agent_metrics::tests::test_format_stats_table_contains_headers_and_agents ... ok
[INFO] [stdout] test agent_metrics::tests::test_format_stats_json_empty ... ok
[INFO] [stdout] test agent_metrics::tests::test_summarize_empty ... ok
[INFO] [stdout] test agent_metrics::tests::test_summarize_single_agent ... ok
[INFO] [stdout] test agent_metrics::tests::test_summarize_top5_ordering ... ok
[INFO] [stdout] test agent_metrics::tests::test_summarize_basic ... ok
[INFO] [stdout] test agent_metrics::tests::test_agent_metrics_serde_roundtrip ... ok
[INFO] [stdout] test agent_metrics::tests::test_summary_serde_roundtrip ... ok
[INFO] [stdout] test agent_metrics::tests::test_long_agent_name_truncated_in_table ... ok
[INFO] [stdout] test attack::tests::from_techniques_builds_attack_info ... ok
[INFO] [stdout] test attack::tests::sub_technique_url_has_parent_and_child ... ok
[INFO] [stdout] test attack::tests::sub_technique_inherits_parent_tactics ... ok
[INFO] [stdout] test attack_graph::tests::duplicate_edges_are_not_created ... ok
[INFO] [stdout] test attack_graph::tests::cytoscape_json_contains_nodes_and_edges ... ok
[INFO] [stdout] test attack_graph::tests::consecutive_distinct_resources_create_edges ... ok
[INFO] [stdout] test attack_graph::tests::single_finding_creates_one_node_no_edges ... ok
[INFO] [stdout] test attack_graph::tests::graph_serialization_roundtrip ... ok
[INFO] [stdout] test bridge::tests::test_false_positive_detection ... ok
[INFO] [stdout] test attack_graph::tests::html_contains_required_elements ... ok
[INFO] [stdout] test bridge::tests::test_finding_to_detection_custom_phase ... ok
[INFO] [stdout] test bridge::tests::test_mixed_positive_and_negative ... ok
[INFO] [stdout] test bridge::tests::test_findings_to_case_results_negative_pass ... ok
[INFO] [stdout] test attack_graph::tests::severity_rank_ordering ... ok
[INFO] [stdout] test bridge::tests::test_empty_findings ... ok
[INFO] [stdout] test attack_graph::tests::multiple_findings_same_resource_collapse_to_one_node ... ok
[INFO] [stdout] test bridge::tests::test_finding_to_detection_phase_mapping ... ok
[INFO] [stdout] test bridge::tests::test_single_finding_match ... ok
[INFO] [stdout] test chain_detector::tests::builtin_catalogue_has_required_signatures ... ok
[INFO] [stdout] test chain_detector::tests::cwe_id_normalization ... ok
[INFO] [stdout] test chain_detector::tests::empty_signature_is_skipped ... ok
[INFO] [stdout] test chain_detector::tests::full_match_in_order ... ok
[INFO] [stdout] test chain_detector::tests::multiple_overlapping_chains ... ok
[INFO] [stdout] test chain_detector::tests::no_match_when_below_min ... ok
[INFO] [stdout] test attack_graph::tests::severity_color_mapping ... ok
[INFO] [stdout] test attack_graph::tests::empty_findings_produce_empty_graph ... ok
[INFO] [stdout] test chain_detector::tests::partial_match_meets_min ... ok
[INFO] [stdout] test choke_points::tests::choke_point_clone_is_independent ... ok
[INFO] [stdout] test choke_points::tests::choke_point_deserialize_from_json_literal ... ok
[INFO] [stdout] test choke_points::tests::choke_point_debug_contains_resource_id ... ok
[INFO] [stdout] test chain_detector::tests::out_of_order_does_not_match_later_steps ... ok
[INFO] [stdout] test choke_points::tests::choke_point_with_empty_cwe_ids ... ok
[INFO] [stdout] test choke_points::tests::empty_report ... ok
[INFO] [stdout] test choke_points::tests::choke_point_serde_roundtrip ... ok
[INFO] [stdout] test choke_points::tests::choke_point_stores_all_fields ... ok
[INFO] [stdout] test choke_points::tests::report_clone_is_independent ... ok
[INFO] [stdout] test choke_points::tests::report_serde_roundtrip ... ok
[INFO] [stdout] test choke_points::tests::report_with_multiple_choke_points ... ok
[INFO] [stdout] test choke_points_graph::tests::choke_edge_debug_contains_endpoints ... ok
[INFO] [stdout] test choke_points_graph::tests::choke_edge_deserialize_from_json_literal ... ok
[INFO] [stdout] test choke_points_graph::tests::choke_edge_serde_roundtrip ... ok
[INFO] [stdout] test choke_points_graph::tests::choke_edge_zero_weight ... ok
[INFO] [stdout] test choke_points_graph::tests::choke_edge_stores_all_fields ... ok
[INFO] [stdout] test convergence::tests::test_convergence_tracker_basic ... ok
[INFO] [stdout] test convergence::tests::test_convergence_tracker_not_converged ... ok
[INFO] [stdout] test bridge::tests::test_multiple_findings ... ok
[INFO] [stdout] test choke_points_graph::tests::choke_edge_clone_is_independent ... ok
[INFO] [stdout] test enrichment::tests::test_concurrency_limit ... ok
[INFO] [stdout] test enrichment::tests::test_max_queries_increased ... ok
[INFO] [stdout] test enrichment::tests::test_scannable_types_case ... ok
[INFO] [stdout] test fixture_gen::tests::gap_rules_count ... ok
[INFO] [stdout] test enrichment::tests::test_enrich_empty_resources ... ok
[INFO] [stdout] test fixture_gen::tests::template_produces_pair_for_every_gap_rule ... ok
[INFO] [stdout] test enrichment::tests::test_scannable_types_not_empty ... ok
[INFO] [stdout] test enrichment::tests::test_enrich_preserves_non_scannable ... ok
[INFO] [stdout] test metrics::tests::format_table_and_markdown_are_non_empty ... ok
[INFO] [stdout] test enrichment::tests::test_role_timeout_is_60s ... ok
[INFO] [stdout] test orchestrator::helpers_tests::build_workflow_def_debate_falls_back_to_pipeline_with_too_few_cards ... ok
[INFO] [stdout] test fixture_gen::tests::wrong_value_differs ... ok
[INFO] [stdout] test orchestrator::helpers_tests::build_workflow_def_debate_with_three_cards ... ok
[INFO] [stdout] test metrics::tests::perfect_detection_yields_f1_one ... ok
[INFO] [stdout] test metrics::tests::zero_fp_when_expectation_matches_flags ... ok
[INFO] [stdout] test metrics::tests::loads_curated_fixture_if_present ... ok
[INFO] [stdout] test metrics::tests::zero_tp_all_false_negatives ... ok
[INFO] [stdout] test enrichment::tests::test_fetch_properties_invalid_id ... ok
[INFO] [stdout] test orchestrator::helpers_tests::build_workflow_def_pipeline_default ... ok
[INFO] [stdout] test orchestrator::helpers_tests::build_workflow_def_swarm ... ok
[INFO] [stdout] test metrics::tests::false_positive_counted_when_unexpected_cwe_fires ... ok
[INFO] [stdout] test orchestrator::helpers_tests::select_debate_agents_falls_back_to_index_when_missing ... ok
[INFO] [stdout] test orchestrator::helpers_tests::select_debate_agents_picks_named_when_present ... ok
[INFO] [stdout] test orchestrator::helpers_tests::enumerate_across_subscriptions_empty_list_no_az_returns_empty_no_demo ... ok
[INFO] [stdout] test orchestrator::helpers_tests::findings_to_agent_result_with_nan_confidence_yields_zero ... ok
[INFO] [stdout] test orchestrator::helpers_tests::publish_agent_results_with_no_bus_is_noop ... ok
[INFO] [stdout] test orchestrator::helpers_tests::enumerate_across_subscriptions_empty_list_no_az_returns_samples_in_demo_mode ... ok
[INFO] [stdout] test orchestrator::helpers_tests::enumerate_across_subscriptions_with_subs_no_az_returns_samples_in_demo_mode ... ok
[INFO] [stdout] test orchestrator::helpers_tests::select_specialists_skips_unavailable_cards ... ok
[INFO] [stdout] test orchestrator::helpers_tests::select_specialists_routes_secrets_cwes_to_secrets_auditor ... ok
[INFO] [stdout] test orchestrator::helpers_tests::select_specialists_routes_network_cwes_to_network_mapper ... ok
[INFO] [stdout] test orchestrator::helpers_tests::enumerate_across_subscriptions_with_subs_no_az_returns_empty_no_demo ... ok
[INFO] [stdout] test orchestrator::helpers_tests::save_snapshot_does_not_panic_on_io_failure ... ok
[INFO] [stdout] test orchestrator::tests::test_findings_to_agent_result_empty ... ok
[INFO] [stdout] test orchestrator::helpers_tests::select_specialists_falls_back_to_first_three_cards_when_no_match ... ok
[INFO] [stdout] test orchestrator::tests::test_findings_to_agent_result_maps_fields ... ok
[INFO] [stdout] test orchestrator::tests::test_publish_agent_results_to_bus ... ok
[INFO] [stdout] test orchestrator::tests::test_resolve_subscriptions_uses_filter ... ok
[INFO] [stdout] test persistence::tests::test_diff_new_findings ... ok
[INFO] [stdout] test orchestrator::tests::test_enumerate_all_subscriptions_no_az ... ok
[INFO] [stdout] test persistence::tests::test_diff_resolved_findings ... ok
[INFO] [stdout] test persistence::tests::test_diff_serde_roundtrip ... ok
[INFO] [stdout] test orchestrator::helpers_tests::select_specialists_routes_iam_cwes_to_iam_path_analyst ... ok
[INFO] [stdout] test orchestrator::tests::test_count_severity ... ok
[INFO] [stdout] test orchestrator::tests::test_check_az_auth_returns_bool ... ok
[INFO] [stdout] test orchestrator::tests::test_run_investigation_no_agents_dir ... ok
[INFO] [stdout] test orchestrator::tests::test_sample_resources_cover_key_types ... ok
[INFO] [stdout] test orchestrator::tests::test_sample_resources_have_properties ... ok
[INFO] [stdout] test orchestrator::tests::test_sample_resources_returns_six ... ok
[INFO] [stdout] test persistence::tests::test_diff_severity_changes ... ok
[INFO] [stdout] test persistence::tests::test_diff_summary_delta ... ok
[INFO] [stdout] test persistence::tests::test_diff_empty_to_empty ... ok
[INFO] [stdout] test persistence::tests::test_store_latest ... ok
[INFO] [stdout] test persistence::tests::test_store_save_and_load ... ok
[INFO] [stdout] test persistence::tests::test_save_rejects_path_traversal ... ok
[INFO] [stdout] test persistence::tests::test_snapshot_id_format ... ok
[INFO] [stdout] test persistence::tests::test_store_list ... ok
[INFO] [stdout] test persistence::tests::test_validate_snapshot_id_accepts_valid ... ok
[INFO] [stdout] test phases::tests::test_findings_as_context_multibyte ... ok
[INFO] [stdout] test phases::tests::test_needs_cross_validation ... ok
[INFO] [stdout] test phases::tests::test_pipeline_result_serde ... ok
[INFO] [stdout] test phases::tests::test_select_deepdive_targets ... ok
[INFO] [stdout] test persistence::tests::test_load_rejects_path_traversal ... ok
[INFO] [stdout] test persistence::tests::test_snapshot_serde_roundtrip ... ok
[INFO] [stdout] test phases::tests::test_findings_as_context ... ok
[INFO] [stdout] test phases::tests::test_select_deepdive_respects_max ... ok
[INFO] [stdout] test convergence::tests::test_convergence_metrics ... ok
[INFO] [stdout] test report::tests::test_cwe_groups ... ok
[INFO] [stdout] test report::tests::test_extract_resource_group ... ok
[INFO] [stdout] test report::tests::test_generate_empty_report ... ok
[INFO] [stdout] test report::tests::test_remediation_plan_priority ... ok
[INFO] [stdout] test report::tests::test_report_json_roundtrip ... ok
[INFO] [stdout] test report::tests::test_resource_group_summaries ... ok
[INFO] [stdout] test orchestrator::helpers_tests::select_debate_agents_panics_with_too_few_cards - should panic ... ok
[INFO] [stdout] test attack::tests::cwe_79_maps_to_execution ... ok
[INFO] [stdout] test phases::tests::test_run_triage ... ok
[INFO] [stdout] test attack::tests::unknown_cwe_returns_empty ... ok
[INFO] [stdout] test attack::tests::cwe_89_maps_to_initial_access ... ok
[INFO] [stdout] test attack::tests::cwe_798_maps_to_credential_access ... ok
[INFO] [stdout] test report::sarif_tests::test_report_to_sarif_rule_has_name_and_full_description ... ok
[INFO] [stdout] test report::sarif_tests::test_report_to_sarif_includes_compliance_in_result_properties ... ok
[INFO] [stdout] test report::sarif_tests::test_report_to_sarif_result_has_properties ... ok
[INFO] [stdout] test report::sarif_tests::test_report_to_sarif_rule_tags_carry_cis_azure_controls ... ok
[INFO] [stdout] test report::sarif_tests::test_report_to_sarif_attack_has_tactics ... ok
[INFO] [stdout] test report::sarif_tests::test_report_to_sarif_rule_tags_carry_nist_controls ... ok
[INFO] [stdout] test report::sarif_tests::test_report_to_sarif_rule_has_default_configuration ... ok
[INFO] [stdout] test report::tests::test_sarif_rules_match_cwe_groups ... ok
[INFO] [stdout] test report::tests::test_report_to_sarif_includes_attack_techniques ... ok
[INFO] [stdout] test report_formats::compliance_tests::enriched_findings_have_compliance_data ... ok
[INFO] [stdout] test report::tests::test_severity_breakdown ... ok
[INFO] [stdout] test report_formats::compliance_tests::sarif_rule_tags_include_compliance_controls ... ok
[INFO] [stdout] test report_formats::tests::html_groups_by_resource ... ok
[INFO] [stdout] test report_formats::compliance_tests::sarif_result_properties_include_compliance_for_enriched_finding ... ok
[INFO] [stdout] test report_formats::tests::html_escapes_unsafe_chars ... ok
[INFO] [stdout] test report_formats::tests::html_table_has_attack_column_with_mitre_links ... ok
[INFO] [stdout] test report_formats::tests::sarif_attack_cwe_798_credential_access ... ok
[INFO] [stdout] test report_formats::compliance_tests::sarif_rule_tags_include_cis_azure_control ... ok
[INFO] [stdout] test report::tests::test_sarif_output ... ok
[INFO] [stdout] test report_formats::tests::sarif_empty_findings_is_valid ... ok
[INFO] [stdout] test report_formats::tests::html_empty_findings_renders_empty_message ... ok
[INFO] [stdout] test report_formats::tests::sarif_level_mapping ... ok
[INFO] [stdout] test report_formats::tests::sarif_has_required_top_level_fields ... ok
[INFO] [stdout] test report_formats::tests::sarif_attack_cwe_89_initial_access ... ok
[INFO] [stdout] test report_formats::tests::html_contains_all_findings ... ok
[INFO] [stdout] test report_formats::tests::sarif_attack_cwe_79_execution ... ok
[INFO] [stdout] test report_formats::tests::sarif_results_map_severity_to_level ... ok
[INFO] [stdout] test report_formats::tests::sarif_result_has_rule_id_message_location ... ok
[INFO] [stdout] test report_formats::tests::sarif_result_has_attack_properties_for_known_cwes ... ok
[INFO] [stdout] test report_formats_chains::tests::html_unchanged_when_no_chains ... ok
[INFO] [stdout] test report_formats::tests::sarif_tool_driver_populated ... ok
[INFO] [stdout] test report_formats::tests::sarif_rule_carries_security_severity_property ... ok
[INFO] [stdout] test report_formats::tests::sarif_rule_tags_include_security_marker ... ok
[INFO] [stdout] test report_formats::tests::sarif_rule_help_markdown_contains_remediation_and_references ... ok
[INFO] [stderr]      Running tests/investigation_e2e.rs (/opt/rustwide/target/debug/deps/investigation_e2e-7126fb1b49089ca6)
[INFO] [stdout] test report_formats::tests::sarif_security_severity_score_buckets ... ok
[INFO] [stdout] test report_formats::tests::sarif_round_trip_typed_struct_preserves_metadata ... ok
[INFO] [stdout] test risk_score::tests::critical_ratio_computation ... ok
[INFO] [stdout] test risk_score::tests::all_low_findings_low_score ... ok
[INFO] [stdout] test report_formats_chains::tests::sarif_contains_killchains_property ... ok
[INFO] [stdout] test report_formats_chains::tests::html_injects_killchain_section ... ok
[INFO] [stdout] test report::tests::test_report_to_sarif_delegates_to_canonical_to_sarif_string ... ok
[INFO] [stdout] test risk_score::tests::all_critical_findings_high_score ... ok
[INFO] [stdout] test risk_score::tests::empty_findings_score_zero ... ok
[INFO] [stdout] test risk_score::tests::error_on_zero_resources_with_findings ... ok
[INFO] [stdout] test report_formats::tests::sarif_string_is_pretty_json ... ok
[INFO] [stdout] test risk_score::tests::mixed_severity_scoring ... ok
[INFO] [stdout] test risk_score::tests::resource_exposure_pct ... ok
[INFO] [stdout] test risk_score::tests::risk_level_boundaries ... ok
[INFO] [stdout] test risk_score::tests::zero_resources_zero_findings_ok ... ok
[INFO] [stdout] test risk_trend::tests::serialization_round_trip ... ok
[INFO] [stdout] test risk_score::tests::serialization_round_trip ... ok
[INFO] [stdout] test risk_trend::tests::trend_improving ... ok
[INFO] [stdout] test risk_trend::tests::trend_empty_snapshots ... ok
[INFO] [stdout] test risk_score::tests::score_clamped_to_100 ... ok
[INFO] [stdout] test report_formats::tests::sarif_roundtrip_typed ... ok
[INFO] [stdout] test risk_trend::tests::trend_single_score_stable ... ok
[INFO] [stdout] test risk_trend::tests::trend_stable_mixed ... ok
[INFO] [stdout] test risk_trend::tests::history_persistence_round_trip ... ok
[INFO] [stdout] test risk_trend::tests::trend_worsening ... ok
[INFO] [stdout] test scanner::tests::test_empty_resources_no_findings ... ok
[INFO] [stdout] test scanner::tests::test_app_service_http_allowed ... ok
[INFO] [stdout] test scanner::tests::test_log_retention_ok ... ok
[INFO] [stdout] test scanner::tests::test_function_app_no_ip_restrictions ... ok
[INFO] [stdout] test risk_trend::tests::history_load_missing_file ... ok
[INFO] [stdout] test scanner::tests::test_hardcoded_credential_detected ... ok
[INFO] [stdout] test scanner::tests::test_log_retention_too_low ... ok
[INFO] [stdout] test scanner::tests::test_role_assignment_owner_at_subscription ... ok
[INFO] [stdout] test scanner::tests::test_scanner_has_default_rules ... ok
[INFO] [stdout] test scanner::tests::test_key_vault_soft_delete_disabled ... ok
[INFO] [stdout] test scanner::tests::test_role_assignment_reader_no_finding ... ok
[INFO] [stdout] test scanner_rules::tests::test_all_patterns_non_empty ... ok
[INFO] [stdout] test scanner_rules_auth::tests::test_auth_rules_count ... ok
[INFO] [stdout] test scanner_rules_access::tests::test_access_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_auth::tests::test_auth_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules::tests::test_all_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules::tests::test_cwe_ids_valid_format ... ok
[INFO] [stdout] test scanner_rules::tests::test_unique_cwe_coverage ... ok
[INFO] [stdout] test scanner::tests::test_storage_tls_1_2_ok ... ok
[INFO] [stdout] test scanner_rules::tests::test_rule_count ... ok
[INFO] [stdout] test scanner::tests::test_finding_ids_are_unique ... ok
[INFO] [stdout] test scanner_rules_access::tests::test_access_rules_count ... ok
[INFO] [stdout] test scanner_rules::tests::test_no_duplicate_titles ... ok
[INFO] [stdout] test scanner_rules_cache::tests::test_cache_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_cache::tests::test_cache_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_compute::tests::test_compute_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_config::tests::test_config_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_container::tests::test_container_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_compute::tests::test_compute_rules_count ... ok
[INFO] [stdout] test scanner_rules_container::tests::test_container_rule_count ... ok
[INFO] [stdout] test scanner_rules_cosmos::tests::test_cosmos_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_cosmos::tests::test_cosmos_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_crypto::tests::test_crypto_rule_count ... ok
[INFO] [stdout] test scanner_rules_crypto::tests::test_crypto_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_api::tests::test_api_rule_count ... ok
[INFO] [stdout] test scanner_rules_api::tests::test_api_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_api::tests::test_api_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_container_ext::tests::test_container_ext_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_cache::tests::test_cache_rule_count ... ok
[INFO] [stdout] test scanner_rules_crypto::tests::test_crypto_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_container_ext::tests::test_container_ext_rules_count ... ok
[INFO] [stdout] test scanner_rules_data::tests::test_data_protection_rules_count ... ok
[INFO] [stdout] test scanner_rules_data::tests::test_data_protection_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_identity::tests::test_identity_ext_rule_count ... ok
[INFO] [stdout] test scanner_rules_identity::tests::test_identity_ext_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_config::tests::test_config_rules_count ... ok
[INFO] [stdout] test scanner::tests::test_storage_tls_too_low ... ok
[INFO] [stdout] test scanner_rules_input::tests::test_input_rules_count ... ok
[INFO] [stdout] test scanner_rules_container::tests::test_container_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_iam::tests::test_iam_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_iam::tests::test_iam_rule_count ... ok
[INFO] [stdout] test scanner_rules_messaging::tests::test_messaging_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_iam::tests::test_iam_unique_cwes ... ok
[INFO] [stdout] test scanner::tests::test_storage_public_blob_access ... ok
[INFO] [stdout] test scanner_rules_messaging::tests::test_messaging_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_cosmos::tests::test_cosmos_rule_count ... ok
[INFO] [stdout] test scanner_rules_identity::tests::test_identity_ext_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_input::tests::test_input_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_logging::tests::test_logging_rules_count ... ok
[INFO] [stdout] test scanner_rules_messaging::tests::test_messaging_rule_count ... ok
[INFO] [stdout] test scanner_rules_logging::tests::test_logging_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_monitoring::tests::test_monitoring_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_monitoring::tests::test_monitoring_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_network::tests::test_network_ext_rule_count ... ok
[INFO] [stdout] test scanner_rules_monitoring::tests::test_monitoring_rule_count ... ok
[INFO] [stdout] test scanner_rules_network::tests::test_network_ext_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_network::tests::test_network_ext_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_sql::tests::test_sql_rule_count ... ok
[INFO] [stdout] test scanner_rules_sql::tests::test_sql_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_sql::tests::test_sql_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_storage_ext::tests::test_storage_ext_rule_count ... ok
[INFO] [stdout] test scanner_rules_storage_ext::tests::test_storage_ext_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_storage_ext::tests::test_storage_ext_unique_cwes ... ok
[INFO] [stdout] test scanner_rules_resilience::tests::test_resilience_rules_count ... ok
[INFO] [stdout] test scanner_rules_resilience::tests::test_resilience_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_secrets::tests::test_secrets_rules_count ... ok
[INFO] [stdout] test scanner_rules_secrets::tests::test_secrets_rules_have_remediation ... ok
[INFO] [stdout] test scanner_rules_webapp::tests::test_webapp_rule_count ... ok
[INFO] [stdout] test scanner_rules_webapp::tests::test_webapp_rules_have_remediation ... ok
[INFO] [stdout] test tests::test_config_defaults ... ok
[INFO] [stdout] test tests::test_config_with_pattern ... ok
[INFO] [stdout] test scanner_rules_webapp::tests::test_webapp_unique_cwes ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 280 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/report_formats_integration.rs (/opt/rustwide/target/debug/deps/report_formats_integration-f72c8f7ab88dbd0e)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test test_finding_to_detection_cwe_mapping ... ok
[INFO] [stdout] test test_empty_findings ... ok
[INFO] [stdout] test test_bridge_score_serialization ... ok
[INFO] [stdout] test test_d13_d14_d15_dispatch ... ok
[INFO] [stdout] test test_mock_tenant_investigation_flow ... ok
[INFO] [stdout] test test_false_positives_detection ... ok
[INFO] [stdout] test test_partial_coverage_scoring ... ok
[INFO] [stdout] test test_mixed_negative_ground_truth ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stderr]      Running tests/scanner_fixtures.rs (/opt/rustwide/target/debug/deps/scanner_fixtures-bccb91fe3700c7bd)
[INFO] [stdout] test sarif_result_locations_are_azure_resource_ids ... ok
[INFO] [stdout] test html_output_contains_all_finding_metadata ... ok
[INFO] [stdout] test sarif_output_is_valid_and_parseable ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test every_gap_rule_has_working_golden_pair ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_otel-d61df9a4097a7cc0)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.59s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test cost::tests::test_calculate_cost_known_model ... ok
[INFO] [stdout] test cost::tests::test_cost_accumulator ... ok
[INFO] [stdout] test cost::tests::test_accumulator_total_tokens ... ok
[INFO] [stdout] test cost::tests::test_calculate_cost_unknown_model ... ok
[INFO] [stdout] test spans::tests::test_gym_span ... ok
[INFO] [stdout] test spans::tests::test_agent_span_creation ... ok
[INFO] [stdout] test spans::tests::test_llm_span_creation ... ok
[INFO] [stdout] test spans::tests::test_investigation_span ... ok
[INFO] [stdout] test spans::tests::test_workflow_span_creation ... ok
[INFO] [stdout] test tests::test_default_config ... ok
[INFO] [stdout] test tests::test_tracing_only_init ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_prompts-ed65678163f32c11)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test tests::every_known_name_loads ... ok
[INFO] [stdout] test tests::findings_schema_lists_required_fields ... ok
[INFO] [stdout] test tests::investigation_prompt_mentions_azure ... ok
[INFO] [stdout] test tests::remediation_header_and_footer_pair ... ok
[INFO] [stdout] test tests::unknown_name_returns_none ... ok
[INFO] [stdout] test tests::must_load_panics_on_unknown - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_rule_scaffold-dd5ec1a4af051d5c)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test list::tests::tier_classification ... ok
[INFO] [stdout] test snippet::tests::insert_supported_cwe_adds_before_close ... ok
[INFO] [stdout] test snippet::tests::insert_scanner_rule_inserts_before_close ... ok
[INFO] [stdout] test snippet::tests::scanner_rule_uses_snake_pattern ... ok
[INFO] [stdout] test snippet::tests::terrain_fn_includes_cwe_id_and_variant ... ok
[INFO] [stdout] test snippet::tests::insert_terrain_rule_inserts_arm_and_fn ... ok
[INFO] [stdout] test list::tests::rows_sorted_by_numeric_cwe ... ok
[INFO] [stdout] test resource::tests::accepts_snake_kebab_and_pascal ... ok
[INFO] [stdout] test resource::tests::rejects_unknown ... ok
[INFO] [stderr]      Running tests/dry_run.rs (/opt/rustwide/target/debug/deps/dry_run-3f48ba0f476e048e)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test dry_run_rejects_unknown_resource ... ok
[INFO] [stdout] test apply_writes_files ... ok
[INFO] [stdout] test dry_run_rejects_bad_cwe_id ... ok
[INFO] [stdout] test dry_run_for_cwe_94_produces_parseable_rust ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_runtime-d02e546759f6ed3a)
[INFO] [stdout] 
[INFO] [stdout] running 48 tests
[INFO] [stdout] test engine::tests::test_custom_rules_engine ... ok
[INFO] [stdout] test engine::tests::test_engine_has_rules ... ok
[INFO] [stdout] test engine::tests::test_engine_empty_logs ... ok
[INFO] [stdout] test error::tests::test_parse_error ... ok
[INFO] [stdout] test engine::tests::test_filter_by_severity ... ok
[INFO] [stdout] test error::tests::test_error_display ... ok
[INFO] [stdout] test error::tests::test_auth_error ... ok
[INFO] [stdout] test error::tests::test_json_error_from ... ok
[INFO] [stdout] test rules::identity::tests::test_risky_location ... ok
[INFO] [stdout] test rules::network::tests::test_nsg_allow_all ... ok
[INFO] [stdout] test rules::network::tests::test_rg_deleted ... ok
[INFO] [stdout] test engine::tests::test_default_trait ... ok
[INFO] [stdout] test rules::network::tests::test_nsg_deny_no_finding ... ok
[INFO] [stdout] test rules::network::tests::test_vm_normal_region ... ok
[INFO] [stdout] test rules::network::tests::test_diagnostic_deleted ... ok
[INFO] [stdout] test rules::network::tests::test_vm_unusual_region ... ok
[INFO] [stdout] test rules::identity::tests::test_brute_force_fires ... ok
[INFO] [stdout] test rules::identity::tests::test_mfa_fatigue_fires ... ok
[INFO] [stdout] test rules::identity::tests::test_dormant_account ... ok
[INFO] [stdout] test rules::network::tests::test_serial_console ... ok
[INFO] [stdout] test rules::rbac::tests::test_conditional_access_disabled ... ok
[INFO] [stdout] test rules::rbac::tests::test_dangerous_role ... ok
[INFO] [stdout] test rules::identity::tests::test_impossible_travel_normal ... ok
[INFO] [stdout] test engine::tests::test_engine_mixed_logs ... ok
[INFO] [stdout] test rules::identity::tests::test_impossible_travel_fires ... ok
[INFO] [stdout] test rules::resource::tests::test_kv_purge_protection ... ok
[INFO] [stdout] test rules::resource::tests::test_kv_enumeration ... ok
[INFO] [stdout] test rules::resource::tests::test_kv_access_policy ... ok
[INFO] [stdout] test rules::rbac::tests::test_role_burst ... ok
[INFO] [stdout] test rules::resource::tests::test_storage_public_access ... ok
[INFO] [stdout] test rules::rbac::tests::test_sp_credential ... ok
[INFO] [stdout] test rules::rbac::tests::test_self_elevation ... ok
[INFO] [stdout] test engine::tests::test_scan_with_mock ... ok
[INFO] [stdout] test rules::rbac::tests::test_global_admin ... ok
[INFO] [stdout] test rules::resource::tests::test_storage_firewall_disabled ... ok
[INFO] [stdout] test rules::resource::tests::test_sas_burst ... ok
[INFO] [stdout] test rules::tests::test_all_rules_count ... ok
[INFO] [stdout] test rules::tests::test_all_rules_have_mitre ... ok
[INFO] [stdout] test rules::tests::test_empty_logs_no_findings ... ok
[INFO] [stdout] test types::tests::test_finding_builder ... ok
[INFO] [stdout] test types::tests::test_finding_serialization ... ok
[INFO] [stdout] test rules::tests::test_all_rules_unique_ids ... ok
[INFO] [stdout] test types::tests::test_geo_location_partial ... ok
[INFO] [stdout] test types::tests::test_log_entry_timestamp ... ok
[INFO] [stdout] test types::tests::test_signin_status ... ok
[INFO] [stdout] test types::tests::test_log_entry_serialization ... ok
[INFO] [stdout] test client::tests::test_activity_log_url ... ok
[INFO] [stdout] test client::tests::test_signin_log_url ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 48 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_shift_left-13709b39dadda621)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test auth::tests::parse_az_expiry_uses_epoch_when_present ... ok
[INFO] [stdout] test auth::tests::parse_az_expiry_parses_local_string ... ok
[INFO] [stdout] test auth::tests::inflight_dedup_serves_cached_after_first_caller ... ok
[INFO] [stdout] test auth::tests::parse_imds_expiry_falls_back_when_unparseable ... ok
[INFO] [stdout] test auth::tests::parse_imds_expiry_uses_expires_on_epoch ... ok
[INFO] [stdout] test auth::tests::parse_az_expiry_falls_back_on_garbage ... ok
[INFO] [stdout] test auth::tests::cache_prune_drops_expired_entries ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_e2e.rs (/opt/rustwide/target/debug/deps/integration_e2e-7d3bab51c0739a5c)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test healthz_returns_200_ok ... ok
[INFO] [stdout] test metrics_endpoint_returns_prometheus_text ... ok
[INFO] [stdout] test end_to_end_sql_event_triggers_arm_and_defender ... ok
[INFO] [stdout] test post_validation_event_returns_validation_response ... ok
[INFO] [stdout] test options_events_echoes_webhook_request_origin ... ok
[INFO] [stdout] test dry_run_does_not_call_defender_put ... ok
[INFO] [stdout] test end_to_end_storage_event_triggers_arm_get_and_defender_put ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.39s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_unit.rs (/opt/rustwide/target/debug/deps/integration_unit-5947eeff704919e3)
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_terraform-f89c98b2ecc8f890)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test auth_cache_returns_unexpired_token ... ok
[INFO] [stdout] test defender_payload_shape_matches_contract ... ok
[INFO] [stdout] test parse_resource_write_sql_extracts_uri ... ok
[INFO] [stdout] test adapter_parses_resource_group_case_insensitively ... ok
[INFO] [stdout] test defender_assessment_url_format ... ok
[INFO] [stdout] test parse_validation_event_yields_validation_code ... ok
[INFO] [stdout] test auth_cache_expires_within_60s_grace ... ok
[INFO] [stdout] test parse_supports_cloudevents_1_0 ... ok
[INFO] [stdout] test parse_resource_write_storage_extracts_uri_and_provider ... ok
[INFO] [stdout] test adapter_flattens_arm_properties ... ok
[INFO] [stdout] test defender_assessment_id_is_deterministic_and_uuid_v5 ... ok
[INFO] [stdout] test defender_severity_mapping_is_unhealthy_for_all_real_severities ... ok
[INFO] [stdout] test metrics_render_includes_all_counter_names ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 73 tests
[INFO] [stdout] test azure_identity_resources::tests::test_group_member ... ok
[INFO] [stdout] test azure_identity_resources::tests::test_service_principal ... ok
[INFO] [stdout] test azure_identity_resources::tests::test_directory_role_assignment ... ok
[INFO] [stdout] test azure_identity_resources::tests::test_app_registration_with_misconfig ... ok
[INFO] [stdout] test azure_identity_resources::tests::test_pim_eligible_role ... ok
[INFO] [stdout] test azure_identity_resources::tests::test_entra_user ... ok
[INFO] [stdout] test aws_generator::tests::custom_region_propagates ... ok
[INFO] [stdout] test azure_resources::tests::test_key_vault_secure_and_misconfigured ... ok
[INFO] [stdout] test azure_resources::tests::test_all_blocks_have_balanced_braces ... ok
[INFO] [stdout] test azure_identity_resources::tests::test_app_registration ... ok
[INFO] [stdout] test azure_resources::tests::test_storage_account_misconfigured ... ok
[INFO] [stdout] test azure_resources::tests::test_web_app_no_https ... ok
[INFO] [stdout] test azure_resources::tests::test_resource_group_block ... ok
[INFO] [stdout] test azure_resources_ext::tests::test_ext_blocks_have_balanced_braces ... ok
[INFO] [stdout] test azure_resources_ext::tests::test_role_assignment_overprivileged ... ok
[INFO] [stdout] test azure_resources_infra2::tests::test_acr ... ok
[INFO] [stdout] test azure_resources_ext::tests::test_vnet_subnet_identity ... ok
[INFO] [stdout] test azure_resources_infra2::tests::test_diag ... ok
[INFO] [stdout] test azure_resources_infra2::tests::test_pe ... ok
[INFO] [stdout] test azure_resources_infra2::tests::test_redis ... ok
[INFO] [stdout] test azure_resources_infra2::tests::test_balanced_braces ... ok
[INFO] [stdout] test azure_resources_infra2::tests::test_aks ... ok
[INFO] [stdout] test azure_resources_infra2::tests::test_asp ... ok
[INFO] [stdout] test azure_identity_resources::tests::test_key_vault_access_policy ... ok
[INFO] [stdout] test azure_resources_ext::tests::test_sql_server_weak_password ... ok
[INFO] [stdout] test aws_generator::tests::providers_block_is_aws_5x ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_service_principal ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_app_insights ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_service_bus ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_container_instance ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_cosmos_db ... ok
[INFO] [stdout] test generator::tests::test_generate_basic_template ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_event_hub ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_nsg ... ok
[INFO] [stdout] test azure_identity_resources::tests::test_logic_app_with_managed_identity ... ok
[INFO] [stdout] test aws_generator::tests::every_supported_cwe_generates_balanced_hcl ... ok
[INFO] [stdout] test generator::tests::test_generated_hcl_syntax ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_first_half_balanced_braces ... ok
[INFO] [stdout] test hcl::tests::test_list_bool_int_attributes ... ok
[INFO] [stdout] test hcl::tests::test_nested_provider_and_reference ... ok
[INFO] [stdout] test generator::tests::test_identity_plan_gets_azuread_provider ... ok
[INFO] [stdout] test generator::tests::test_variables_tf_generated ... ok
[INFO] [stdout] test generator::tests::test_non_identity_plan_no_azuread_provider ... ok
[INFO] [stdout] test generator::tests::test_storage_account_plan ... ok
[INFO] [stdout] test generator::tests::test_misconfig_appears_in_output ... ok
[INFO] [stdout] test generator::tests::test_full_template_example_format ... ok
[INFO] [stdout] test azure_resources_infra::tests::test_virtual_machine ... ok
[INFO] [stdout] test hcl::tests::test_sanitize_reference_label_and_interpolated ... ok
[INFO] [stdout] test hcl::tests::test_variable_output_comment_map_blocks ... ok
[INFO] [stdout] test hcl::tests::test_render_blocks_and_braces ... ok
[INFO] [stdout] test providers::tests::test_azurerm_provider ... ok
[INFO] [stdout] test providers::tests::test_backend_config ... ok
[INFO] [stdout] test tests::test_crate_modules_accessible ... ok
[INFO] [stdout] test hcl::tests::test_terraform_data_blocks ... ok
[INFO] [stdout] test providers::tests::test_providers_tf_full ... ok
[INFO] [stdout] test hcl::tests::test_resource_block_renders ... ok
[INFO] [stderr]      Running tests/aws_terrain.rs (/opt/rustwide/target/debug/deps/aws_terrain-9c581d519c2184e0)
[INFO] [stdout] test vuln_apps::tests::test_vuln_app_unsupported ... ok
[INFO] [stdout] test vuln_apps::tests::test_vuln_app_sqli ... ok
[INFO] [stdout] test vuln_apps::tests::test_all_supported_cwes_produce_apps ... ok
[INFO] [stdout] test providers::tests::test_random_string ... ok
[INFO] [stdout] test vuln_apps::tests::test_vuln_app_xss ... ok
[INFO] [stdout] test vuln_apps_ext2::tests::test_broken_crypto_uses_md5 ... ok
[INFO] [stdout] test hcl::tests::test_escape_and_sanitize ... ok
[INFO] [stdout] test providers::tests::test_required_providers ... ok
[INFO] [stdout] test vuln_apps_ext::tests::test_code_injection_content ... ok
[INFO] [stdout] test generator::tests::test_outputs_tf_generated ... ok
[INFO] [stdout] test vuln_apps::tests::test_app_serialization ... ok
[INFO] [stdout] test vuln_apps_ext::tests::test_ext_unsupported_chains ... ok
[INFO] [stdout] test vuln_apps_ext2::tests::test_race_condition_content ... ok
[INFO] [stdout] test vuln_apps_ext2::tests::test_ext2_all_supported_cwes_produce_apps ... ok
[INFO] [stdout] test vuln_apps_ext2::tests::test_ext2_unsupported_returns_none ... ok
[INFO] [stdout] test vuln_apps_ext::tests::test_ext_all_supported_cwes_produce_apps ... ok
[INFO] [stdout] test vuln_apps_ext::tests::test_ssrf_app_content ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 73 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test aws_templates_validate_via_terraform ... ok
[INFO] [stderr]      Running tests/identity_generator.rs (/opt/rustwide/target/debug/deps/identity_generator-6d1615f460fab335)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test test_identity_user_generation ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_terrain-b809aca89c378c9b)
[INFO] [stdout] test test_identity_logic_app ... ok
[INFO] [stdout] test test_identity_mailbox_delegation ... ok
[INFO] [stdout] test test_identity_app_registration_generation ... ok
[INFO] [stdout] test test_identity_hcl_balanced_braces ... ok
[INFO] [stdout] test test_identity_group_generation ... ok
[INFO] [stdout] test test_identity_directory_role ... ok
[INFO] [stdout] test test_provider_version_override ... ok
[INFO] [stdout] test test_identity_access_policy ... ok
[INFO] [stdout] test test_identity_pim_role ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 44 tests
[INFO] [stdout] test aws::tests::test_unknown_cwe_returns_none ... ok
[INFO] [stdout] test aws::tests::test_supported_cwes_count ... ok
[INFO] [stdout] test aws::tests::test_terraform_type_strings ... ok
[INFO] [stdout] test connections::tests::test_diagnostic_sink_inference ... ok
[INFO] [stdout] test aws::tests::test_required_cwes_present ... ok
[INFO] [stdout] test connections::tests::test_apim_routes_to_webapp ... ok
[INFO] [stdout] test connections::tests::test_functionapp_cosmosdb_relation ... ok
[INFO] [stdout] test connections::tests::test_needs_vnet ... ok
[INFO] [stdout] test aws::tests::test_every_rule_resolves ... ok
[INFO] [stdout] test aws::rules_core::tests::no_duplicate_cwes ... ok
[INFO] [stdout] test connections::tests::test_no_duplicate_relations ... ok
[INFO] [stdout] test aws::rules_core::tests::all_supported_resolve ... ok
[INFO] [stdout] test aws::rules_core::tests::every_rule_has_at_least_one_misconfig ... ok
[INFO] [stdout] test connections::tests::test_webapp_keyvault_relation ... ok
[INFO] [stdout] test planner::tests::test_plan_cwe918_has_vnet_relations ... ok
[INFO] [stdout] test planner::tests::test_plan_for_known_cwe ... ok
[INFO] [stdout] test planner::tests::test_plan_includes_misconfig_specs ... ok
[INFO] [stdout] test connections::tests::test_webapp_subnet_vnet_integration ... ok
[INFO] [stdout] test planner::tests::test_plan_includes_notes ... ok
[INFO] [stdout] test planner::tests::test_plan_for_multiple_cwes ... ok
[INFO] [stdout] test aws::tests::test_harden_clears_vulnerable_values ... ok
[INFO] [stdout] test rules::tests::test_cwe_532_resources ... ok
[INFO] [stdout] test rules::tests::test_cwe_552_ext8_has_storage ... ok
[INFO] [stdout] test rules::tests::test_cwe_78_ext4_has_functionapp ... ok
[INFO] [stdout] test rules::tests::test_cwe_918_has_vnet ... ok
[INFO] [stdout] test rules::tests::test_cwe_89_has_sql_database ... ok
[INFO] [stdout] test rules::tests::test_cwe_639_from_identity_has_entra ... ok
[INFO] [stdout] test planner::tests::test_supported_cwes_list ... ok
[INFO] [stdout] test planner::tests::test_plan_includes_relations ... ok
[INFO] [stdout] test rules::tests::test_cwe_295_ext5_has_webapp_or_apim ... ok
[INFO] [stdout] test rules::tests::test_cwe_494_ext7_has_functionapp ... ok
[INFO] [stdout] test rules::tests::test_cwe_521_ext6_has_resources ... ok
[INFO] [stdout] test planner::tests::test_plan_unknown_cwe_still_works ... ok
[INFO] [stdout] test rules::tests::test_supported_cwes_count ... ok
[INFO] [stdout] test rules::tests::test_unknown_cwe_gets_resource_group ... ok
[INFO] [stdout] test rules::tests::test_supported_cwes_no_duplicates ... ok
[INFO] [stdout] test rules::tests::test_terrain_rule_serialization ... ok
[INFO] [stdout] test rules::tests::test_every_rule_has_valid_cwe_id_format ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_types-15104f17cffe8306)
[INFO] [stdout] test rules::tests::test_all_supported_cwes_resolve ... ok
[INFO] [stdout] test rules::tests::test_every_rule_has_resource_group ... ok
[INFO] [stdout] test rules::tests::test_every_rule_returns_nonempty_resource_plan ... ok
[INFO] [stdout] test rules::tests::test_every_rule_cwe_id_matches_key ... ok
[INFO] [stdout] test rules::tests::test_every_rule_description_nonempty ... ok
[INFO] [stdout] test tests::test_crate_modules_accessible ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 44 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 62 tests
[INFO] [stdout] test attack_graph::tests::test_compute_exploitability_capped ... ok
[INFO] [stdout] test attack::tests::sub_technique_url ... ok
[INFO] [stdout] test attack::tests::unknown_technique_returns_empty ... ok
[INFO] [stdout] test attack::tests::sub_technique_inherits_parent_tactics ... ok
[INFO] [stdout] test attack::tests::resolve_techniques_builds_structs ... ok
[INFO] [stdout] test attack::tests::technique_new_builds_url ... ok
[INFO] [stdout] test attack_graph::tests::test_dot_escape ... ok
[INFO] [stdout] test attack_graph::tests::test_entry_point_detection ... ok
[INFO] [stdout] test attack_graph::tests::test_entry_point_has_highest_reachability ... ok
[INFO] [stdout] test attack_graph::tests::test_exploitability_scores_positive ... ok
[INFO] [stdout] test attack_graph::tests::test_critical_path_sorted_descending ... ok
[INFO] [stdout] test attack_graph::tests::test_adjacency_map ... ok
[INFO] [stdout] test attack_graph::tests::test_empty_killchain ... ok
[INFO] [stdout] test attack_graph::tests::test_find_node_missing ... ok
[INFO] [stdout] test attack_graph::tests::test_from_killchain_produces_nodes_and_edges ... ok
[INFO] [stdout] test attack::tests::serde_roundtrip ... ok
[INFO] [stdout] test attack_graph::tests::test_mermaid_escape ... ok
[INFO] [stdout] test attack_graph::tests::test_high_value_target_detection ... ok
[INFO] [stdout] test attack_graph::tests::test_reachability_factor ... ok
[INFO] [stdout] test attack_graph::tests::test_to_dot_output ... ok
[INFO] [stdout] test compliance::tests::compliance_mapping_clone ... ok
[INFO] [stdout] test attack_graph::tests::test_total_risk_score ... ok
[INFO] [stdout] test attack_graph::tests::test_to_mermaid_output ... ok
[INFO] [stdout] test attack_graph::tests::test_single_step_killchain ... ok
[INFO] [stdout] test compliance::tests::compliance_mapping_construction ... ok
[INFO] [stdout] test compliance::tests::compliance_summary_empty_controls ... ok
[INFO] [stdout] test compliance::tests::compliance_mapping_serde_roundtrip ... ok
[INFO] [stdout] test compliance::tests::compliance_summary_serde_roundtrip ... ok
[INFO] [stdout] test compliance::tests::control_detail_serde_roundtrip ... ok
[INFO] [stdout] test compliance::tests::framework_all_returns_three_variants ... ok
[INFO] [stdout] test compliance::tests::framework_display_names_are_human_readable ... ok
[INFO] [stdout] test compliance::tests::framework_eq_and_hash ... ok
[INFO] [stdout] test compliance::tests::control_detail_construction ... ok
[INFO] [stdout] test killchain::tests::test_killchain_builder ... ok
[INFO] [stdout] test compliance::tests::framework_serde_roundtrip ... ok
[INFO] [stdout] test killchain::tests::test_killchain_ordering ... ok
[INFO] [stdout] test killchain::tests::test_killchain_serialization ... ok
[INFO] [stdout] test killchain::tests::test_step_connection ... ok
[INFO] [stdout] test resource::tests::test_azure_resource_type_serialization ... ok
[INFO] [stdout] test resource::tests::test_misconfiguration_roundtrip ... ok
[INFO] [stdout] test terraform::tests::test_content_hash_includes_providers_tf ... ok
[INFO] [stdout] test resource::tests::test_resource_relation_roundtrip ... ok
[INFO] [stdout] test terraform::tests::test_content_hash_includes_tfvars_and_version ... ok
[INFO] [stdout] test resource::tests::test_plan_relations_and_lookup ... ok
[INFO] [stdout] test terraform::tests::test_template_serialization ... ok
[INFO] [stdout] test compliance::tests::compliance_summary_construction ... ok
[INFO] [stdout] test compliance::tests::framework_serde_uses_kebab_case ... ok
[INFO] [stdout] test resource::tests::test_misconfig_spec_roundtrip ... ok
[INFO] [stdout] test attack_graph::tests::test_severity_to_weight ... ok
[INFO] [stdout] test terraform::tests::test_content_hash_input ... ok
[INFO] [stdout] test attack_graph::tests::test_serialization_roundtrip ... ok
[INFO] [stdout] test terraform::tests::test_with_providers_builder ... ok
[INFO] [stdout] test validation::tests::test_empty_results_fail ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_validator-7d4bc70a8f79b0af)
[INFO] [stdout] test validation::tests::test_validation_report_with_failure ... ok
[INFO] [stdout] test validation::tests::test_validation_report_all_pass ... ok
[INFO] [stdout] test weakness::tests::test_severity_ordering ... ok
[INFO] [stdout] test validation::tests::test_validation_serialization ... ok
[INFO] [stdout] test weakness::tests::test_weakness_builder ... ok
[INFO] [stdout] test weakness::tests::test_weakness_serialization ... ok
[INFO] [stdout] test resource::tests::test_resource_plan_builder ... ok
[INFO] [stdout] test terraform::tests::test_terraform_template_builder ... ok
[INFO] [stdout] test compliance::tests::framework_display_matches_display_name ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 62 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 183 tests
[INFO] [stdout] test checkers::tests::check_diagnostic_settings_fails_when_no_diag ... ok
[INFO] [stdout] test checkers::tests::check_keyvault_exists_fails_when_query_fails ... ok
[INFO] [stdout] test checkers::tests::check_log_analytics_no_workspace_fails ... ok
[INFO] [stdout] test checkers::tests::check_keyvault_exists_fails_when_empty ... ok
[INFO] [stdout] test checkers::tests::check_diagnostic_settings_passes_when_settings_present ... ok
[INFO] [stdout] test checkers::tests::check_keyvault_access_flags_all_perms_as_overly_permissive ... ok
[INFO] [stdout] test checkers::tests::check_log_analytics_query_returns_no_results_fails ... ok
[INFO] [stdout] test checkers::tests::check_diagnostic_settings_fails_when_no_webapp ... ok
[INFO] [stdout] test checkers::tests::check_keyvault_access_fails_on_null_or_empty ... ok
[INFO] [stdout] test checkers::tests::check_keyvault_access_fails_when_restrictive ... ok
[INFO] [stdout] test checkers::tests::check_resource_group_resources_fails_on_unparseable_count ... ok
[INFO] [stdout] test checkers::tests::check_keyvault_exists_passes_when_found ... ok
[INFO] [stdout] test checkers::tests::check_log_analytics_passes_with_workspace_no_query ... ok
[INFO] [stdout] test checkers::tests::check_resource_group_resources_fails_when_zero ... ok
[INFO] [stdout] test checkers::tests::check_log_analytics_runs_query_when_command_set ... ok
[INFO] [stdout] test checkers::tests::check_resource_group_resources_passes_when_count_positive ... ok
[INFO] [stdout] test checkers::tests::check_role_assignments_fails_when_query_fails ... ok
[INFO] [stdout] test checkers::tests::check_webapp_exists_passes_when_found ... ok
[INFO] [stdout] test checkers::tests::resolve_webapp_url_falls_back_to_az_query ... ok
[INFO] [stdout] test checkers::tests::check_webapp_exists_fails_when_missing ... ok
[INFO] [stdout] test checkers::tests::resolve_webapp_url_returns_none_when_az_fails ... ok
[INFO] [stdout] test checkers::tests::resolve_webapp_url_returns_none_without_rg ... ok
[INFO] [stdout] test checkers::tests::check_role_assignments_fails_when_only_unprivileged ... ok
[INFO] [stdout] test checkers::tests::resolve_webapp_url_returns_none_when_az_returns_empty ... ok
[INFO] [stdout] test checkers::tests::check_role_assignments_passes_for_privileged_role ... ok
[INFO] [stdout] test checkers::tests::check_role_assignments_handles_count_response ... ok
[INFO] [stdout] test executor::tests::test_access_control_routing_with_rg ... ok
[INFO] [stdout] test checkers::tests::check_resource_group_resources_fails_when_query_fails ... ok
[INFO] [stdout] test checkers::tests::resolve_webapp_url_uses_terraform_output_when_available ... ok
[INFO] [stdout] test executor::tests::test_az_query_failure_returns_none ... ok
[INFO] [stdout] test executor::http_tests::regression_issue_203_no_url_returns_unresolved ... ok
[INFO] [stdout] test cmd_timeout::tests::captures_stderr ... ok
[INFO] [stdout] test cmd_timeout::tests::returns_output_for_fast_command ... ok
[INFO] [stdout] test executor::http_tests::spawn_http_server_accepts_multiple_connections ... ok
[INFO] [stdout] test executor::tests::test_allowlist_and_safety_rejection ... ok
[INFO] [stdout] test executor::tests::test_azure_query_routing_targets ... ok
[INFO] [stdout] test executor::tests::test_cli_check_rejects_shell_metacharacters ... ok
[INFO] [stdout] test executor::tests::test_detect_resource_group_uses_cache ... ok
[INFO] [stdout] test executor::tests::test_cli_check_no_command ... ok
[INFO] [stdout] test executor::tests::test_detect_resource_group_missing_state ... ok
[INFO] [stdout] test executor::tests::test_cli_check_empty_command ... ok
[INFO] [stdout] test executor::tests::test_cli_check_program_not_in_allowlist ... ok
[INFO] [stdout] test executor::tests::test_execute_http_probe_no_url ... ok
[INFO] [stdout] test executor::tests::test_detect_rg_from_state_missing_state ... ok
[INFO] [stdout] test executor::tests::test_execution_context_new ... ok
[INFO] [stdout] test executor::tests::test_execution_context_with_rg ... ok
[INFO] [stdout] test executor::tests::test_cli_check_spawn_failure ... ok
[INFO] [stdout] test executor::tests::test_execute_probes_empty ... ok
[INFO] [stdout] test executor::tests::test_is_safe_probe_command_allows_safe ... ok
[INFO] [stdout] test executor::tests::test_is_safe_probe_command_rejects_injection ... ok
[INFO] [stdout] test executor::tests::test_tf_output_missing_state_returns_none ... ok
[INFO] [stdout] test executor::tests::test_log_query_routing_with_rg ... ok
[INFO] [stdout] test exploit_executor::branch_tests::severity_label_critical ... ok
[INFO] [stdout] test exploit_executor::branch_tests::severity_label_high ... ok
[INFO] [stdout] test exploit_executor::branch_tests::severity_label_low ... ok
[INFO] [stdout] test exploit_executor::branch_tests::severity_label_medium ... ok
[INFO] [stdout] test exploit_executor::branch_tests::setup_failure_produces_setup_failed_summary ... ok
[INFO] [stdout] test exploit_executor::branch_tests::failed_execute_step_no_evidence ... ok
[INFO] [stdout] test exploit_executor::branch_tests::zero_step_probe_is_exploitable ... ok
[INFO] [stdout] test exploit_executor::extra_tests::context_with_azure_config ... ok
[INFO] [stdout] test exploit_executor::extra_tests::batch_execute_with_preloaded_outputs_skips_load ... ok
[INFO] [stdout] test exploit_executor::branch_tests::cleanup_failure_doesnt_affect_result ... ok
[INFO] [stdout] test exploit_executor::extra_tests::probe_all_verify_succeed_is_exploitable ... ok
[INFO] [stdout] test exploit_executor::branch_tests::multiple_verify_steps_partial_fail ... ok
[INFO] [stdout] test exploit_executor::extra_tests::batch_execute_returns_results_for_each_probe ... ok
[INFO] [stdout] test exploit_executor::extra_tests::probe_empty_output_not_added_to_evidence ... ok
[INFO] [stdout] test exploit_executor::extra_tests::probe_verify_fails_not_exploitable ... ok
[INFO] [stdout] test exploit_executor::extra_tests::probe_non_setup_failure_still_runs_verify ... ok
[INFO] [stdout] test exploit_executor::extra_tests::substitute_adjacent_vars ... ok
[INFO] [stdout] test exploit_executor::extra_tests::substitute_lone_dollar_and_special_chars ... ok
[INFO] [stdout] test exploit_executor::extra_tests::substitute_no_match_leaves_dollar ... ok
[INFO] [stdout] test exploit_executor::extra_tests::substitute_both_cases ... ok
[INFO] [stdout] test exploit_executor::extra_tests::substitute_no_recursive_expansion ... ok
[INFO] [stdout] test exploit_executor::extra_tests::substitute_empty_input ... ok
[INFO] [stdout] test exploit_executor::extra_tests::substitute_prefix_collision_greedy ... ok
[INFO] [stdout] test executor::tests::test_execute_custom_with_command_delegates ... ok
[INFO] [stdout] test executor::tests::test_cli_check_runs_safe_failing_command ... ok
[INFO] [stdout] test executor::tests::test_execute_probes_dispatches_each_kind ... ok
[INFO] [stdout] test exploit_executor::tests::test_check_expected_match ... ok
[INFO] [stdout] test executor::tests::test_execute_custom_no_script ... ok
[INFO] [stdout] test exploit_executor::tests::test_check_expected_none ... ok
[INFO] [stdout] test exploit_executor::tests::test_exploit_context_new ... ok
[INFO] [stdout] test exploit_executor::tests::test_shell_injection_blocked ... ok
[INFO] [stdout] test exploit_executor::tests::test_substitute_outputs ... ok
[INFO] [stdout] test exploit_executor::tests::test_truncate ... ok
[INFO] [stdout] test executor::tests::test_cli_check_runs_safe_succeeding_command ... ok
[INFO] [stdout] test exploit_executor::trace_tests::trace_batch_auto_load_logs_count ... ok
[INFO] [stdout] test exploit_executor::tests::test_execute_exploit_probe_no_outputs ... ok
[INFO] [stdout] test exploit_executor::tests::test_truncate_utf8_safe ... ok
[INFO] [stdout] test exploit_executor::trace_tests::trace_batch_with_resource_group ... ok
[INFO] [stdout] test exploit_executor::trace_tests::trace_empty_output_skips_evidence ... ok
[INFO] [stdout] test exploit_executor::trace_tests::trace_batch_without_resource_group ... ok
[INFO] [stdout] test exploit_executor::trace_tests::trace_non_setup_failure ... ok
[INFO] [stdout] test exploit_executor::trace_tests::trace_setup_failure_path ... ok
[INFO] [stdout] test exploit_executor::trace_tests::trace_successful_probe_with_evidence ... ok
[INFO] [stdout] test exploit_probes::tests::test_all_exploit_probes ... ok
[INFO] [stdout] test exploit_probes::tests::test_all_probes_have_unique_ids ... ok
[INFO] [stdout] test exploit_probes::tests::test_exploit_probe_has_verify_phase ... ok
[INFO] [stdout] test exploit_probes::tests::test_exploit_probes_for_known_cwes ... ok
[INFO] [stdout] test exploit_probes::tests::test_exploit_probes_unknown_cwe ... ok
[INFO] [stdout] test exploit_probes::tests::test_exploit_result_exploitable ... ok
[INFO] [stdout] test exploit_probes::tests::test_exploit_result_not_exploitable ... ok
[INFO] [stdout] test feedback::tests::test_feedback_all_flashcards ... ignored
[INFO] [stdout] test exploit_probes::tests::test_exploit_result_serialization ... ok
[INFO] [stdout] test exploit_probes::tests::test_exploit_probe_serialization ... ok
[INFO] [stdout] test feedback::tests::test_feedback_empty_template ... ok
[INFO] [stdout] test feedback::tests::test_feedback_confidence_reasonable ... ok
[INFO] [stdout] test feedback::tests::test_from_results_serialization ... ok
[INFO] [stdout] test plan_analysis::tests::test_all_flashcards_plan_analysis ... ignored
[INFO] [stdout] test feedback::tests::test_generate_feedback_known_cwe ... ok
[INFO] [stdout] test plan_analysis::tests::test_analyze_plan_known_cwe ... ok
[INFO] [stdout] test plan_analysis::tests::test_analyze_plan_unknown_cwe ... ok
[INFO] [stdout] test plan_analysis::tests::test_analyze_plan_serialization ... ok
[INFO] [stdout] test plan_analysis::tests::test_misconfig_match_cwe532 ... ok
[INFO] [stdout] test plan_analysis::tests::test_resource_match_cwe532 ... ok
[INFO] [stdout] test plan_analysis::tests::test_types_match_exact ... ok
[INFO] [stdout] test plan_analysis::tests::test_types_match_linux_windows_variants ... ok
[INFO] [stdout] test plan_parsing::tests::test_hcl_fallback_extracts_attributes ... ok
[INFO] [stdout] test plan_parsing::tests::test_hcl_fallback_extracts_resources ... ok
[INFO] [stdout] test plan_parsing::tests::test_hcl_empty_template ... ok
[INFO] [stdout] test plan_parsing::tests::test_parse_plan_json_resource_changes ... ok
[INFO] [stdout] test plan_parsing::tests::test_parse_plan_json_planned_values ... ok
[INFO] [stdout] test probes::tests::test_probe_result ... ok
[INFO] [stdout] test probes::tests::test_probe_serialization ... ok
[INFO] [stdout] test probes::tests::test_probes_for_known_cwe ... ok
[INFO] [stdout] test probes::tests::test_probe_creation ... ok
[INFO] [stdout] test probes::tests::test_probes_for_unknown_cwe ... ok
[INFO] [stdout] test plan_analysis::tests::test_analyze_plans_multiple ... ok
[INFO] [stdout] test reference_matching::tests::test_reference_match_empty_template ... ok
[INFO] [stdout] test reference_matching::tests::test_reference_match_known_cwe ... ok
[INFO] [stdout] test reference_matching::tests::test_reference_match_unknown_cwe ... ok
[INFO] [stdout] test reference_matching::tests::test_resource_not_present ... ok
[INFO] [stdout] test reference_matching::tests::test_resource_present_with_alias ... ok
[INFO] [stdout] test scoring::tests::test_adversarial_result_serialization ... ok
[INFO] [stdout] test reference_matching::tests::test_terraform_resource_name_mapping ... ok
[INFO] [stdout] test scoring::tests::test_adversarial_ruling_variants ... ok
[INFO] [stdout] test scoring::tests::test_deploy_check_result_serialization ... ok
[INFO] [stdout] test scoring::tests::test_deploy_score_computation ... ok
[INFO] [stdout] test scoring::tests::test_determine_level ... ok
[INFO] [stdout] test scoring::tests::test_exploit_score_computation ... ok
[INFO] [stdout] test scoring::tests::test_complete_feedback_with_adversarial ... ok
[INFO] [stdout] test scoring::tests::test_full_leveled_feedback_all_loops ... ok
[INFO] [stdout] test scoring::tests::test_full_leveled_feedback_with_deploy ... ok
[INFO] [stdout] test scoring::tests::test_leveled_feedback_gating ... ok
[INFO] [stdout] test scoring::tests::test_leveled_feedback_known_cwe ... ok
[INFO] [stdout] test scoring::tests::test_full_leveled_feedback_with_exploits ... ok
[INFO] [stdout] test executor::http_tests::http_probe_5xx_completes_within_timeout ... ok
[INFO] [stdout] test executor::http_tests::http_probe_fail_when_body_missing ... ok
[INFO] [stdout] test executor::http_tests::http_probe_fail_on_5xx ... ok
[INFO] [stdout] test executor::http_tests::http_probe_pass_when_no_expected ... ok
[INFO] [stdout] test executor::http_tests::http_probe_pass_with_body_match ... ok
[INFO] [stdout] test scoring::tests::test_leveled_feedback_serialization ... ok
[INFO] [stdout] test scoring::tests::test_validation_level_ordering ... ok
[INFO] [stdout] test exploit_executor::load_tests::load_outputs_json_not_object ... ok
[INFO] [stdout] test scoring::tests::test_loop_scores_weighted ... ok
[INFO] [stdout] test template_validation::tests::test_static_analysis_checks ... ok
[INFO] [stdout] test template_validation::tests::test_catalog_quality_checks ... ok
[INFO] [stdout] test template_validation::tests::test_security_review_checks ... ok
[INFO] [stdout] test template_validation::tests::test_validate_all_flashcards ... ignored
[INFO] [stdout] test exploit_executor::load_tests::load_outputs_empty_json_object ... ok
[INFO] [stdout] test terraform_check::tests::test_heuristic_fallback_rejects_empty ... ok
[INFO] [stdout] test test_mocks::self_tests::push_pop_az_roundtrip ... ok
[INFO] [stdout] test test_mocks::self_tests::reset_clears_both_queues ... ok
[INFO] [stdout] test test_mocks::self_tests::push_pop_tf_roundtrip ... ok
[INFO] [stdout] test terraform_check::tests::test_terraform_binary_result_unavailable ... ok
[INFO] [stdout] test terraform_check::tests::test_heuristic_fallback_passes_valid_template ... ok
[INFO] [stdout] test validator::tests::test_validator_debug_clone ... ok
[INFO] [stdout] test validator::tests::test_plan_probes ... ok
[INFO] [stdout] test validator::tests::test_dry_run ... ok
[INFO] [stdout] test validator::tests::test_evaluate_no_results_defaults_to_fail ... ok
[INFO] [stdout] test validator::tests::test_empty_killchain_errors ... ok
[INFO] [stdout] test validator::tests::test_all_pass ... ok
[INFO] [stdout] test validator::tests::test_plan_probes_unknown_cwe ... ok
[INFO] [stdout] test exploit_executor::load_tests::load_outputs_missing_value_field ... ok
[INFO] [stdout] test validator::tests::test_with_failures ... ok
[INFO] [stdout] test exploit_executor::load_tests::load_outputs_invalid_json ... ok
[INFO] [stdout] test exploit_executor::load_tests::load_outputs_nonzero_exit ... ok
[INFO] [stdout] test exploit_executor::load_tests::load_outputs_parses_terraform_json ... ok
[INFO] [stdout] test exploit_executor::load_tests::load_outputs_terraform_not_on_path ... ok
[INFO] [stdout] test template_validation::tests::test_validate_known_cwe ... ok
[INFO] [stdout] test terraform_check::tests::test_terraform_check_runs_without_panic ... ok
[INFO] [stdout] test reference_matching::tests::test_all_flashcards_have_reasonable_coverage ... ok
[INFO] [stdout] test cmd_timeout::tests::times_out_on_hang ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 180 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 10.02s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_watcher-bf94135ef945034a)
[INFO] [stdout] 
[INFO] [stdout] running 33 tests
[INFO] [stdout] test az::tests::parse_az_json_camel_case ... ok
[INFO] [stdout] test continuous::tests::delta_is_clean_when_no_new_or_regressions ... ok
[INFO] [stdout] test continuous::tests::diff_detects_regressions ... ok
[INFO] [stdout] test config::tests::rejects_empty_patterns ... ok
[INFO] [stdout] test continuous::tests::config_interval_conversion ... ok
[INFO] [stdout] test config::tests::rejects_blank_field ... ok
[INFO] [stdout] test az::tests::parse_az_json_empty ... ok
[INFO] [stdout] test config::tests::parses_yaml ... ok
[INFO] [stdout] test continuous::tests::acceptance_new_finding_detected_in_subsequent_snapshot ... ok
[INFO] [stdout] test continuous::tests::diff_identifies_new_findings ... ok
[INFO] [stdout] test continuous::tests::diff_identifies_resolved_findings ... ok
[INFO] [stdout] test continuous::tests::diff_empty_runs ... ok
[INFO] [stdout] test continuous::tests::run_id_contains_tenant_prefix ... ok
[INFO] [stdout] test continuous::tests::store_load_missing_returns_error ... ok
[INFO] [stdout] test continuous::tests::run_ids_are_unique ... ok
[INFO] [stdout] test continuous::tests::finding_key_format ... ok
[INFO] [stdout] test config::tests::default_poll_interval ... ok
[INFO] [stdout] test az::tests::static_source_filters_by_query ... ok
[INFO] [stdout] test az::tests::az_cli_missing_binary_reports_clearly ... ok
[INFO] [stdout] test continuous::tests::store_prune_zero_is_noop ... ok
[INFO] [stdout] test watcher::tests::dispatches_on_match ... ok
[INFO] [stdout] test dispatch::tests::recording_dispatcher_captures_calls ... ok
[INFO] [stdout] test continuous::tests::validator_handles_runner_error ... ok
[INFO] [stdout] test watcher::tests::no_patterns_no_dispatch ... ok
[INFO] [stdout] test continuous::tests::validator_first_run_no_delta ... ok
[INFO] [stdout] test continuous::tests::validator_second_run_produces_delta ... ok
[INFO] [stdout] test watcher::tests::dedupes_by_correlation_id ... ok
[INFO] [stdout] test continuous::tests::validator_tracks_regressions_across_runs ... ok
[INFO] [stdout] test continuous::tests::store_save_and_load ... ok
[INFO] [stdout] test continuous::tests::store_latest_returns_newest ... ok
[INFO] [stdout] test continuous::tests::store_list_newest_first ... ok
[INFO] [stdout] test continuous::tests::validator_prunes_old_snapshots ... ok
[INFO] [stdout] test continuous::tests::store_prune_keeps_max ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/watch.rs (/opt/rustwide/target/debug/deps/watch-cf850e14e39d2eb8)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test rejects_empty_patterns_in_config ... ok
[INFO] [stdout] test example_config_is_valid_yaml ... ok
[INFO] [stdout] test parses_az_cli_json_output ... ok
[INFO] [stdout] test watcher_run_until_first_dispatch_exits ... ok
[INFO] [stdout] test watcher_dispatches_on_kv_match ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pf_workflow-1458baf4c74127fe)
[INFO] [stdout] 
[INFO] [stdout] running 154 tests
[INFO] [stdout] test bus::tests::test_phase_messages ... ok
[INFO] [stdout] test bus::tests::test_agent_complete_roundtrips_status_and_error ... ok
[INFO] [stdout] test bus::tests::test_subscriber_notification ... ok
[INFO] [stdout] test bus::tests::test_bus_clone_shares_state ... ok
[INFO] [stdout] test bus::tests::test_publish_and_retrieve ... ok
[INFO] [stdout] test bus::tests::test_findings_from_agent ... ok
[INFO] [stdout] test bus::tests::test_subscriber_sees_stored_finding ... ok
[INFO] [stdout] test e2e::tests::test_config_flattening ... ok
[INFO] [stdout] test bus::tests::test_agent_complete_serde_with_status_and_error ... ok
[INFO] [stdout] test e2e::tests::test_resource_to_azure_resource_populates_properties ... ok
[INFO] [stdout] test e2e::tests::test_plan_to_azure_resources_nonempty ... ok
[INFO] [stdout] test e2e::tests::test_generate_for_unknown_cwe_fails ... ok
[INFO] [stdout] test bus::tests::test_message_serde ... ok
[INFO] [stdout] test engine::tests::test_run_mapreduce_pattern ... ok
[INFO] [stdout] test engine::tests::test_run_hierarchical_pattern ... ok
[INFO] [stdout] test engine::tests::test_run_debate_pattern_three_agents ... ok
[INFO] [stdout] test engine::tests::test_run_iterative_pattern ... ok
[INFO] [stdout] test engine::tests::test_run_consensus_pattern ... ok
[INFO] [stdout] test engine::tests::test_run_pipeline_all_failed ... ok
[INFO] [stdout] test e2e::tests::test_snake_to_camel ... ok
[INFO] [stdout] test e2e::tests::test_generate_for_cwe_success ... ok
[INFO] [stdout] test lib_tests::test_all_workflow_pattern_variants_serde ... ok
[INFO] [stdout] test e2e::tests::test_e2e_result_serialization ... ok
[INFO] [stdout] test lib_tests::test_all_pattern_display_strings ... ok
[INFO] [stdout] test engine::tests::test_run_pipeline_partial_failure_marks_partial ... ok
[INFO] [stdout] test engine::tests::test_run_swarm_pattern ... ok
[INFO] [stdout] test lib_tests::test_debate_def_serde_roundtrip ... ok
[INFO] [stdout] test engine::tests::test_workflow_aggregates_costs_and_tokens ... ok
[INFO] [stdout] test lib_tests::test_workflow_def_mapreduce ... ok
[INFO] [stdout] test lib_tests::test_workflow_def_consensus ... ok
[INFO] [stdout] test engine::tests::test_workflow_status_variants ... ok
[INFO] [stdout] test engine::tests::test_workflow_id_is_unique ... ok
[INFO] [stdout] test lib_tests::test_workflow_def_serde_roundtrip ... ok
[INFO] [stdout] test lib_tests::test_swarm_single_agent ... ok
[INFO] [stdout] test lib_tests::test_workflow_result_serde_roundtrip ... ok
[INFO] [stdout] test lib_tests::test_workflow_result_with_findings ... ok
[INFO] [stdout] test lib_tests::test_pipeline_empty_agents ... ok
[INFO] [stdout] test lib_tests::test_workflow_def_hierarchical ... ok
[INFO] [stdout] test lib_tests::test_workflow_status_equality ... ok
[INFO] [stdout] test memory_extract_tests::test_extract_learnings_empty_findings ... ok
[INFO] [stdout] test memory_extract_tests::test_confidence_from_count_values ... ok
[INFO] [stdout] test lib_tests::test_workflow_status_all_variants_serde ... ok
[INFO] [stdout] test memory_extract_tests::test_extract_learnings_empty_tenant ... ok
[INFO] [stdout] test memory_extract_tests::test_extract_learnings_single_finding_no_recurring ... ok
[INFO] [stdout] test memory_extract_tests::test_all_entries_have_correct_tenant ... ok
[INFO] [stdout] test memory_extract_tests::test_false_positive_indicator_for_low_confidence ... ok
[INFO] [stdout] test memory_extract_tests::test_recurring_confidence_increases_with_count ... ok
[INFO] [stdout] test memory_extract_tests::test_recurring_cwe_detected ... ok
[INFO] [stdout] test memory_extract_tests::test_severity_pattern_partial_ratio ... ok
[INFO] [stdout] test memory_extract_tests::test_recurring_cwe_same_resource_type_still_counts ... ok
[INFO] [stdout] test memory_extract_tests::test_no_false_positive_for_high_confidence ... ok
[INFO] [stdout] test memory_extract_tests::test_no_severity_pattern_for_low_only ... ok
[INFO] [stdout] test memory_extract_tests::test_severity_pattern_for_high_sev_resource ... ok
[INFO] [stdout] test memory_extract_tests::test_false_positive_at_threshold_boundary ... ok
[INFO] [stdout] test lib_tests::test_workflow_def_iterative ... ok
[INFO] [stdout] test memory_tests::test_content_truncated_at_max_len ... ok
[INFO] [stdout] test memory_tests_format::test_entries_from_findings_basic ... ok
[INFO] [stdout] test memory_tests::test_store_batch_with_dedup ... ok
[INFO] [stdout] test memory_tests::test_nan_confidence_stored_as_zero ... ok
[INFO] [stdout] test memory_tests_format::test_format_for_prompt_empty ... ok
[INFO] [stdout] test memory_tests_format::test_format_for_prompt_escapes_heading_at_content_start ... ok
[INFO] [stdout] test memory_tests_format::test_format_for_prompt_escapes_headings_in_content ... ok
[INFO] [stdout] test memory_tests::test_negative_half_life_days_rejected ... ok
[INFO] [stdout] test memory_tests_format::test_format_for_prompt_includes_entry_details ... ok
[INFO] [stdout] test memory_tests::test_store_batch_empty_is_noop ... ok
[INFO] [stdout] test memory_tests_format::test_format_for_prompt_omits_excess_with_message ... ok
[INFO] [stdout] test memory_tests::test_store_batch_writes_all_entries ... ok
[INFO] [stdout] test memory_tests::test_query_combines_category_and_cwe_filters ... ok
[INFO] [stdout] test memory_tests_format::test_format_for_prompt_respects_budget ... ok
[INFO] [stdout] test memory_tests::test_infinite_confidence_stored_as_zero ... ok
[INFO] [stdout] test memory_tests::test_short_content_not_truncated ... ok
[INFO] [stdout] test memory_tests::test_confidence_clamped_to_unit_range ... ok
[INFO] [stdout] test memory_tests::test_nan_confidence_in_batch_stored_as_zero ... ok
[INFO] [stdout] test memory_tests_format::test_memory_error_is_debug_display ... ok
[INFO] [stdout] test memory_tests::test_zero_half_life_days_rejected ... ok
[INFO] [stdout] test memory_tests_format::test_memory_category_serde_roundtrip ... ok
[INFO] [stdout] test memory_tests_format::test_memory_error_invalid_cwe_contains_id ... ok
[INFO] [stdout] test memory_tests_format::test_memory_entry_serde_roundtrip ... ok
[INFO] [stdout] test memory_tests_format::test_memory_query_default ... ok
[INFO] [stdout] test memory_tests_store::test_cwe_id_requires_numeric_suffix ... ok
[INFO] [stdout] test memory_tests_format::test_high_cwe_numbers_accepted ... ok
[INFO] [stdout] test memory_tests_format::test_store_entry_with_special_characters_in_content ... ok
[INFO] [stdout] test memory_tests_format::test_prune_with_nothing_to_delete ... ok
[INFO] [stdout] test memory_tests_store::test_default_db_path_points_to_powderfinger_dir ... ok
[INFO] [stdout] test memory_tests_store::test_dedup_different_category_coexists ... ok
[INFO] [stdout] test memory_tests_store::test_decay_scoring_recent_entry_near_full_confidence ... ok
[INFO] [stdout] test memory_tests_format::test_truncation_safe_on_multibyte_utf8_boundary ... ok
[INFO] [stdout] test memory_tests_format::test_store_entry_with_unicode_content ... ok
[INFO] [stdout] test bus::tests::test_empty_bus ... ok
[INFO] [stdout] test memory_tests_store::test_dedup_different_tenant_independent ... ok
[INFO] [stdout] test memory_tests_format::test_prune_removes_old_entries ... ok
[INFO] [stdout] test memory_tests_store::test_in_memory_store_creates_successfully ... ok
[INFO] [stdout] test memory_tests_store::test_store_multiple_distinct_entries ... ok
[INFO] [stdout] test memory_tests_store::test_empty_tenant_id_rejected_on_query ... ok
[INFO] [stdout] test memory_tests_store::test_dedup_same_key_updates_content ... ok
[INFO] [stdout] test memory_tests_store::test_empty_tenant_id_rejected_on_store ... ok
[INFO] [stdout] test memory_tests_store::test_nonexistent_tenant_returns_empty ... ok
[INFO] [stdout] test e2e::tests::test_resource_type_mapping_covers_common_variants ... ok
[INFO] [stdout] test merge::merge_tests::test_consensus_count_function ... ok
[INFO] [stdout] test memory_tests_format::test_entries_from_findings_empty_input ... ok
[INFO] [stdout] test memory_tests_format::test_entries_from_findings_preserves_confidence ... ok
[INFO] [stdout] test memory_tests_store::test_empty_cwe_id_accepted_for_agent_learning ... ok
[INFO] [stdout] test bus::tests::test_concurrent_publish ... ok
[INFO] [stdout] test memory_tests_store::test_valid_cwe_id_accepted ... ok
[INFO] [stdout] test memory_tests_store::test_query_with_max_age_filter ... ok
[INFO] [stdout] test merge::merge_tests::test_merge_empty_results ... ok
[INFO] [stdout] test memory_tests_store::test_query_filter_by_cwe_id ... ok
[INFO] [stdout] test merge::merge_tests::test_merge_single_result_no_findings ... ok
[INFO] [stdout] test memory_tests_store::test_tenant_isolation_returns_zero_cross_tenant ... ok
[INFO] [stdout] test memory_tests_store::test_store_and_retrieve_single_entry ... ok
[INFO] [stdout] test memory_tests_store::test_query_filter_by_category ... ok
[INFO] [stdout] test merge::merge_tests::test_normalize_resource_grouping ... ok
[INFO] [stdout] test merge::merge_tests::test_normalize_cwe_families ... ok
[INFO] [stdout] test memory_tests_store::test_invalid_cwe_id_rejected ... ok
[INFO] [stdout] test merge::merge_tests::test_unknown_cwe_has_no_attack_techniques ... ok
[INFO] [stdout] test merge::merge_tests::test_nan_confidence_defaults_to_zero ... ok
[INFO] [stdout] test merge::merge_tests::test_merge_keeps_highest_confidence ... ok
[INFO] [stdout] test merge::merge_tests::test_merged_finding_has_attack_techniques ... ok
[INFO] [stdout] test merge::merge_tests::test_consensus_boost ... ok
[INFO] [stdout] test merge::merge_tests::test_evidence_aggregation ... ok
[INFO] [stdout] test merge::merge_tests::test_neg_inf_confidence_defaults_to_zero ... ok
[INFO] [stdout] test merge::merge_tests::test_sorted_by_consensus_confidence ... ok
[INFO] [stdout] test merge::merge_tests::test_severity_escalation ... ok
[INFO] [stdout] test merge::merge_tests::test_consensus_boost_capped ... ok
[INFO] [stdout] test merge::merge_tests::test_fuzzy_dedup_different_families ... ok
[INFO] [stdout] test engine::tests::test_run_pipeline_all_success ... ok
[INFO] [stdout] test merge::merge_tests::test_backward_compat_merge_findings ... ok
[INFO] [stdout] test merge::merge_tests::test_fuzzy_dedup_cwe_family ... ok
[INFO] [stdout] test merge::merge_tests::test_nan_does_not_shadow_valid_confidence ... ok
[INFO] [stdout] test patterns::tests::test_failed_result_timeout ... ok
[INFO] [stdout] test patterns::tests::test_patterns_module_accessible ... ok
[INFO] [stdout] test patterns::tests::test_run_hierarchical_with_failing_specialist_pushes_failure ... ok
[INFO] [stdout] test patterns::tests::test_run_pipeline_with_always_erroring_agent_yields_failed_with_reasoning ... ok
[INFO] [stdout] test patterns::tests::test_run_swarm_with_always_erroring_agent_yields_failed_with_reasoning ... ok
[INFO] [stdout] test remediation::tests::test_plan_no_remediation_text ... ok
[INFO] [stdout] test remediation::tests::test_plan_path_traversal ... ok
[INFO] [stdout] test remediation::tests::test_plan_keyvault_protection ... ok
[INFO] [stdout] test remediation::tests::test_plan_sql_injection ... ok
[INFO] [stdout] test patterns::tests::test_failed_result_captures_error_in_reasoning ... ok
[INFO] [stdout] test remediation::tests::test_plan_xss_waf ... ok
[INFO] [stdout] test remediation::tests::test_status_display ... ok
[INFO] [stdout] test merge::merge_tests::test_inf_confidence_defaults_to_zero ... ok
[INFO] [stdout] test remediation::tests::test_plan_storage_public_access ... ok
[INFO] [stdout] test remediation::tests::test_finding_resolved ... ok
[INFO] [stdout] test remediation::tests::test_plan_generic_fallback ... ok
[INFO] [stdout] test remediation::tests::test_plan_nsg_inbound ... ok
[INFO] [stdout] test remediation::tests::test_finding_not_resolved ... ok
[INFO] [stderr]      Running tests/patterns.rs (/opt/rustwide/target/debug/deps/patterns-1c6826b83333c06d)
[INFO] [stdout] test remediation::tests::test_plan_information_exposure ... ok
[INFO] [stdout] test remediation::tests::test_plan_webapp_https ... ok
[INFO] [stdout] test tests::test_debate_def ... ok
[INFO] [stdout] test tests::test_pipeline_def ... ok
[INFO] [stdout] test tests::test_swarm_def ... ok
[INFO] [stdout] test tests::test_pattern_display ... ok
[INFO] [stdout] test remediation::tests::test_validate_batch ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 154 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test pipeline_empty_agents_returns_empty ... ok
[INFO] [stdout] test debate_short_circuits_with_fewer_than_three_agents ... ok
[INFO] [stdout] test hierarchical_empty_returns_empty ... ok
[INFO] [stdout] test mapreduce_falls_back_to_pipeline_when_no_resource_groups ... ok
[INFO] [stdout] test hierarchical_specialist_failure_included ... ok
[INFO] [stdout] test mapreduce_captures_failed_agents ... ok
[INFO] [stdout] test mapreduce_runs_per_partition ... ok
[INFO] [stdout] test hierarchical_lead_assessment_recorded ... ok
[INFO] [stdout] test debate_handles_failing_pro_without_panic ... ok
[INFO] [stdout] test iterative_runs_max_iter_when_findings_grow ... ok
[INFO] [stdout] test iterative_converges_when_no_new_findings ... ok
[INFO] [stdout] test iterative_records_iteration_metadata ... ok
[INFO] [stdout] test debate_runs_pro_and_con_for_each_round ... ok
[INFO] [stdout] test debate_synthesizer_findings_added_to_context ... ok
[INFO] [stdout] test swarm_failed_agent_yields_failed_status ... ok
[INFO] [stdout] test swarm_empty_agents_returns_empty ... ok
[INFO] [stdout] test pipeline_records_failed_agent_with_failed_status ... ok
[INFO] [stdout] test consensus_delegates_to_swarm ... ok
[INFO] [stdout] test swarm_runs_all_agents_in_parallel ... ok
[INFO] [stdout] test pipeline_propagates_findings_into_context ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/promote_rules-2eeb0d98ad03906c)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tests::describe_check_variants ... ok
[INFO] [stdout] test tests::generator_produces_card_per_cwe ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_agent
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_aws
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_catalog
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_cli
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_composer
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_cwe
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_deployer
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_eval
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_gym
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_improve
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_investigate
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_otel
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_prompts
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_rule_scaffold
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_runtime
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_shift_left
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_terraform
[INFO] [stderr]    Doc-tests pf_terrain
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_types
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_validator
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests pf_watcher
[INFO] [stderr]    Doc-tests pf_workflow
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493", kill_on_drop: false }`
[INFO] [stdout] f6131bba19eb360bf76edd744b6e74dfa78eb9babe3b1375c6e1fb052f254493
