[INFO] cloning repository https://github.com/hafizhpratama/stryx [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hafizhpratama/stryx" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhafizhpratama%2Fstryx", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhafizhpratama%2Fstryx'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 077a1343e3ba3f171c6ee9b1fd24b055f1fcdcdc [INFO] testing hafizhpratama/stryx/077a1343e3ba3f171c6ee9b1fd24b055f1fcdcdc against 1.98.0-beta.1 for beta-1.98-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhafizhpratama%2Fstryx" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-7-tc2/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/hafizhpratama/stryx [INFO] finished tweaking git repo https://github.com/hafizhpratama/stryx [INFO] tweaked toml for git repo https://github.com/hafizhpratama/stryx written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/hafizhpratama/stryx on toolchain 1.98.0-beta.1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/hafizhpratama/stryx already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded siphasher v1.0.3 [INFO] [stderr] Downloaded phf_shared v0.13.1 [INFO] [stderr] Downloaded oxc_syntax v0.129.0 [INFO] [stderr] Downloaded phf v0.13.1 [INFO] [stderr] Downloaded unicode-id-start v1.4.0 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.121 [INFO] [stderr] Downloaded smawk v0.3.2 [INFO] [stderr] Downloaded wasm-bindgen v0.2.121 [INFO] [stderr] Downloaded page_size v0.6.0 [INFO] [stderr] Downloaded phf_macros v0.13.1 [INFO] [stderr] Downloaded cow-utils v0.1.3 [INFO] [stderr] Downloaded oxc_str v0.129.0 [INFO] [stderr] Downloaded oxc_ast_macros v0.129.0 [INFO] [stderr] Downloaded alloca v0.4.0 [INFO] [stderr] Downloaded phf_generator v0.13.1 [INFO] [stderr] Downloaded oxc_estree v0.129.0 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.121 [INFO] [stderr] Downloaded js-sys v0.3.98 [INFO] [stderr] Downloaded oxc_diagnostics v0.129.0 [INFO] [stderr] Downloaded is-terminal v0.4.17 [INFO] [stderr] Downloaded napi-sys v3.2.1 [INFO] [stderr] Downloaded oxc_span v0.129.0 [INFO] [stderr] Downloaded oxc-miette-derive v2.7.1 [INFO] [stderr] Downloaded oxc_index v4.1.0 [INFO] [stderr] Downloaded napi-derive v3.5.5 [INFO] [stderr] Downloaded napi-build v2.3.1 [INFO] [stderr] Downloaded owo-colors v4.3.0 [INFO] [stderr] Downloaded criterion-plot v0.8.2 [INFO] [stderr] Downloaded convert_case v0.11.0 [INFO] [stderr] Downloaded oxc_data_structures v0.129.0 [INFO] [stderr] Downloaded console v0.16.3 [INFO] [stderr] Downloaded napi-derive-backend v5.0.4 [INFO] [stderr] Downloaded oxc_ecmascript v0.129.0 [INFO] [stderr] Downloaded oxc_ast_visit v0.129.0 [INFO] [stderr] Downloaded ignore v0.4.25 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.121 [INFO] [stderr] Downloaded dragonbox_ecma v0.1.12 [INFO] [stderr] Downloaded ctor v0.11.1 [INFO] [stderr] Downloaded oxc_regular_expression v0.129.0 [INFO] [stderr] Downloaded oxc_allocator v0.129.0 [INFO] [stderr] Downloaded oxc_semantic v0.129.0 [INFO] [stderr] Downloaded napi v3.8.6 [INFO] [stderr] Downloaded oxc-miette v2.7.1 [INFO] [stderr] Downloaded winnow v1.0.3 [INFO] [stderr] Downloaded criterion v0.8.2 [INFO] [stderr] Downloaded oxc_parser v0.129.0 [INFO] [stderr] Downloaded rayon v1.12.0 [INFO] [stderr] Downloaded oxc_ast v0.129.0 [INFO] [stderr] Downloaded web-sys v0.3.98 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b [INFO] running `Command { std: "docker" "start" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b", 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" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b", 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" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling siphasher v1.0.3 [INFO] [stderr] Compiling itoa v1.0.18 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling phf_shared v0.13.1 [INFO] [stderr] Compiling unicode-segmentation v1.13.2 [INFO] [stderr] Compiling owo-colors v4.3.0 [INFO] [stderr] Compiling rustc-hash v2.1.2 [INFO] [stderr] Compiling unicode-linebreak v0.1.5 [INFO] [stderr] Compiling smawk v0.3.2 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling oxc_data_structures v0.129.0 [INFO] [stderr] Compiling textwrap v0.16.2 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling hashbrown v0.17.1 [INFO] [stderr] Compiling compact_str v0.9.0 [INFO] [stderr] Compiling phf_generator v0.13.1 [INFO] [stderr] Compiling phf v0.13.1 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling oxc_estree v0.129.0 [INFO] [stderr] Compiling cow-utils v0.1.3 [INFO] [stderr] Compiling dragonbox_ecma v0.1.12 [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling nonmax v0.5.5 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling unicode-id-start v1.4.0 [INFO] [stderr] Compiling libc v0.2.186 [INFO] [stderr] Compiling oxc_allocator v0.129.0 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling oxc_str v0.129.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling portable-atomic v1.13.1 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling anstyle-parse v1.0.0 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling napi-build v2.3.1 [INFO] [stderr] Compiling anstyle v1.0.14 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling colorchoice v1.0.5 [INFO] [stderr] Compiling self_cell v1.2.2 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling console v0.16.3 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling winnow v1.0.3 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling unit-prefix v0.5.2 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling indicatif v0.18.4 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling cc v1.2.62 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling toml_parser v1.1.2+spec-1.1.0 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling toml_datetime v0.7.5+spec-1.1.0 [INFO] [stderr] Compiling serde_spanned v1.1.1 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling toml_writer v1.1.1+spec-1.1.0 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling napi v3.8.6 [INFO] [stderr] Compiling convert_case v0.11.0 [INFO] [stderr] Compiling blake3 v1.8.5 [INFO] [stderr] Compiling libloading v0.9.0 [INFO] [stderr] Compiling ctor v0.11.1 [INFO] [stderr] Compiling semver v1.0.28 [INFO] [stderr] Compiling napi-sys v3.2.1 [INFO] [stderr] Compiling stryx_napi v0.6.0 (/opt/rustwide/workdir/crates/stryx_napi) [INFO] [stderr] Compiling napi-derive-backend v5.0.4 [INFO] [stderr] Compiling arrayref v0.3.9 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling nohash-hasher v0.2.0 [INFO] [stderr] Compiling constant_time_eq v0.4.2 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling oxc-miette-derive v2.7.1 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling oxc_ast_macros v0.129.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling oxc-miette v2.7.1 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling clap_derive v4.6.1 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling oxc_span v0.129.0 [INFO] [stderr] Compiling oxc_diagnostics v0.129.0 [INFO] [stderr] Compiling oxc_regular_expression v0.129.0 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling toml v0.9.12+spec-1.1.0 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling napi-derive v3.5.5 [INFO] [stderr] Compiling clap v4.6.1 [INFO] [stderr] Compiling oxc_index v4.1.0 [INFO] [stderr] Compiling stryx_core v0.6.0 (/opt/rustwide/workdir/crates/stryx_core) [INFO] [stderr] Compiling oxc_syntax v0.129.0 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling stryx_taint v0.6.0 (/opt/rustwide/workdir/crates/stryx_taint) [INFO] [stderr] Compiling stryx_cache v0.6.0 (/opt/rustwide/workdir/crates/stryx_cache) [INFO] [stderr] Compiling stryx_llm v0.6.0 (/opt/rustwide/workdir/crates/stryx_llm) [INFO] [stderr] Compiling stryx_index v0.6.0 (/opt/rustwide/workdir/crates/stryx_index) [INFO] [stderr] Compiling oxc_ast v0.129.0 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling stryx_reporter v0.6.0 (/opt/rustwide/workdir/crates/stryx_reporter) [INFO] [stderr] Compiling oxc_ecmascript v0.129.0 [INFO] [stderr] Compiling oxc_ast_visit v0.129.0 [INFO] [stderr] Compiling oxc_parser v0.129.0 [INFO] [stderr] Compiling oxc_semantic v0.129.0 [INFO] [stderr] Compiling stryx_ast v0.6.0 (/opt/rustwide/workdir/crates/stryx_ast) [INFO] [stderr] Compiling stryx_rules v0.6.0 (/opt/rustwide/workdir/crates/stryx_rules) [INFO] [stderr] Compiling stryx_cli v0.6.0 (/opt/rustwide/workdir/crates/stryx_cli) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 35s [INFO] running `Command { std: "docker" "inspect" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b", 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" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling zerocopy v0.8.48 [INFO] [stderr] Compiling zerocopy-derive v0.8.48 [INFO] [stderr] Compiling alloca v0.4.0 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling page_size v0.6.0 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling stryx_core v0.6.0 (/opt/rustwide/workdir/crates/stryx_core) [INFO] [stderr] Compiling oxc_index v4.1.0 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling napi v3.8.6 [INFO] [stderr] Compiling stryx_taint v0.6.0 (/opt/rustwide/workdir/crates/stryx_taint) [INFO] [stderr] Compiling stryx_cache v0.6.0 (/opt/rustwide/workdir/crates/stryx_cache) [INFO] [stderr] Compiling oxc_syntax v0.129.0 [INFO] [stderr] Compiling stryx_llm v0.6.0 (/opt/rustwide/workdir/crates/stryx_llm) [INFO] [stderr] Compiling stryx_index v0.6.0 (/opt/rustwide/workdir/crates/stryx_index) [INFO] [stderr] Compiling oxc_ast v0.129.0 [INFO] [stderr] Compiling criterion-plot v0.8.2 [INFO] [stderr] Compiling stryx_reporter v0.6.0 (/opt/rustwide/workdir/crates/stryx_reporter) [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling criterion v0.8.2 [INFO] [stderr] Compiling oxc_ecmascript v0.129.0 [INFO] [stderr] Compiling oxc_ast_visit v0.129.0 [INFO] [stderr] Compiling oxc_parser v0.129.0 [INFO] [stderr] Compiling oxc_semantic v0.129.0 [INFO] [stderr] Compiling stryx_ast v0.6.0 (/opt/rustwide/workdir/crates/stryx_ast) [INFO] [stderr] Compiling stryx_rules v0.6.0 (/opt/rustwide/workdir/crates/stryx_rules) [INFO] [stderr] Compiling stryx_cli v0.6.0 (/opt/rustwide/workdir/crates/stryx_cli) [INFO] [stderr] Compiling stryx_napi v0.6.0 (/opt/rustwide/workdir/crates/stryx_napi) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 40s [INFO] running `Command { std: "docker" "inspect" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b", 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" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.38s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/stryx_ast-0e22869255ae57bd) [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/stryx_cache-dffa95fd0cd40441) [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/stryx_cli-368a3e2cc3e1c349) [INFO] [stdout] [INFO] [stdout] running 27 tests [INFO] [stdout] test config::tests::default_key_replaces_builtin_default ... ok [INFO] [stdout] test config::tests::malformed_toml_falls_back_to_default ... ok [INFO] [stdout] test config::tests::empty_surfaces_list_silences_rule_completely ... ok [INFO] [stdout] test config::tests::explicit_rule_override_wins_over_default ... ok [INFO] [stdout] test install::tests::parse_targets_accepts_known_ids_and_dedupes ... ok [INFO] [stdout] test install::tests::parse_targets_rejects_unknown ... ok [INFO] [stdout] test install::tests::detect_finds_local_claude_dir ... ok [INFO] [stdout] test install::tests::parse_targets_skips_empty_tokens ... ok [INFO] [stdout] test suppress::tests::disable_file_level_drops_all_matching ... ok [INFO] [stdout] test suppress::tests::block_comment_marker_works ... ok [INFO] [stdout] test suppress::tests::disable_next_line_with_non_matching_rule_keeps_finding ... ok [INFO] [stdout] test suppress::tests::disable_next_line_with_matching_rule_drops_finding ... ok [INFO] [stdout] test suppress::tests::empty_file_drops_nothing ... ok [INFO] [stdout] test suppress::tests::line_for_byte_handles_multibyte_chars ... ok [INFO] [stdout] test suppress::tests::finding_in_unread_file_passes_through ... ok [INFO] [stdout] test suppress::tests::multiple_rule_ids_on_one_marker ... ok [INFO] [stdout] test tests::convergence_signal_reflects_param_shape ... ok [INFO] [stdout] test suppress::tests::reason_after_dashes_is_ignored ... ok [INFO] [stdout] test suppress::tests::unqualified_rule_id_does_not_suppress ... ok [INFO] [stdout] test suppress::tests::jsx_comment_marker_works ... ok [INFO] [stdout] test tests::convergence_signal_reflects_propagates_to_return ... ok [INFO] [stdout] test tests::convergence_signal_reflects_reaches_db_sink_unsanitized ... ok [INFO] [stdout] test tests::convergence_signal_reflects_reaches_fetch_sink_unsanitized ... ok [INFO] [stdout] test tests::convergence_signal_reflects_reaches_redirect_sink_unsanitized ... ok [INFO] [stdout] test tests::convergence_signal_reflects_return_shape ... ok [INFO] [stdout] test tests::convergence_signal_reflects_tainted_offsets ... ok [INFO] [stdout] test config::tests::missing_stryx_toml_yields_default_config ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 27 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/stryx-59cff459e4281cfb) [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/diagnostics_dump.rs (/opt/rustwide/target/debug/deps/diagnostics_dump-91320dd21c224ad1) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test debug_dump_writes_report_to_tmp ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test agents_md_marker_writes_sibling_stryx_md ... ok [INFO] [stderr] Running tests/install.rs (/opt/rustwide/target/debug/deps/install-165b544a5b4a4f12) [INFO] [stdout] test unknown_target_id_errors_clearly ... ok [INFO] [stdout] test no_agents_detected_exits_zero_with_hint ... ok [INFO] [stdout] test explicit_target_bypasses_detection ... ok [INFO] [stdout] test writes_files_for_detected_claude_and_cursor ... 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/profile.rs (/opt/rustwide/target/debug/deps/profile-3d76d2dc2049c251) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test missing_root_does_not_panic ... ok [INFO] [stdout] test empty_fixture_returns_empty_profile ... ok [INFO] [stdout] test express_pg_joi_fixture ... ok [INFO] [stdout] test next_prisma_zod_fixture ... ok [INFO] [stdout] test bun_hono_drizzle_zod_fixture ... 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 237 tests [INFO] [stderr] Running tests/rules.rs (/opt/rustwide/target/debug/deps/rules-ea920774e57c20a8) [INFO] [stdout] test auth_hardcoded_hmac_key_bad_fixture_fires ... ok [INFO] [stdout] test auth_bypass_via_wrapper_good_silent ... ok [INFO] [stdout] test auth_hardcoded_hmac_key_test_file_path_suppressed ... ok [INFO] [stdout] test auth_cors_wildcard_with_credentials_bad_fixture_fires ... ok [INFO] [stdout] test auth_cors_wildcard_with_credentials_good_fixture_silent ... ok [INFO] [stdout] test auth_hardcoded_hmac_key_good_fixture_silent ... ok [INFO] [stdout] test auth_jwt_algorithm_none_bad_fixture_fires ... ok [INFO] [stdout] test auth_bypass_via_wrapper_bad_fires ... ok [INFO] [stdout] test auth_jwt_algorithm_none_good_fixture_silent ... ok [INFO] [stdout] test auth_jwt_decode_without_verify_good_fixture_silent ... ok [INFO] [stdout] test auth_jwt_exposed_data_bad_fixture_fires ... ok [INFO] [stdout] test auth_jwt_decode_without_verify_bad_fixture_fires ... ok [INFO] [stdout] test auth_jwt_exposed_data_test_file_path_suppressed ... ok [INFO] [stdout] test auth_jwt_exposed_data_good_fixture_silent ... ok [INFO] [stdout] test auth_jwt_hardcoded_secret_bad_fixture_fires ... ok [INFO] [stdout] test auth_jwt_hardcoded_secret_spec_file_path_suppressed ... ok [INFO] [stdout] test auth_jwt_hardcoded_secret_good_fixture_silent ... ok [INFO] [stdout] test auth_jwt_hardcoded_secret_test_file_path_suppressed ... ok [INFO] [stdout] test auth_jwt_hardcoded_secret_tests_dir_path_suppressed ... ok [INFO] [stdout] test auth_jwt_not_revoked_test_file_path_suppressed ... ok [INFO] [stdout] test auth_jwt_not_revoked_good_fixture_silent ... ok [INFO] [stdout] test auth_jwt_not_revoked_bad_fixture_fires ... ok [INFO] [stdout] test auth_jwt_secret_too_short_good_fixture_silent ... ok [INFO] [stdout] test auth_jwt_secret_too_short_bad_fixture_fires ... ok [INFO] [stdout] test auth_passport_hardcoded_secret_bad_fixture_fires ... ok [INFO] [stdout] test auth_passport_hardcoded_secret_good_fixture_silent ... ok [INFO] [stdout] test auth_session_cookie_insecure_attrs_good_fixture_silent ... ok [INFO] [stdout] test auth_session_cookie_insecure_attrs_bad_fixture_fires ... ok [INFO] [stdout] test auth_passport_hardcoded_secret_test_file_path_suppressed ... ok [INFO] [stdout] test auth_session_hardcoded_secret_bad_fixture_fires ... ok [INFO] [stdout] test auth_session_hardcoded_secret_spec_file_path_suppressed ... ok [INFO] [stdout] test auth_session_hardcoded_secret_test_file_path_suppressed ... ok [INFO] [stdout] test auth_session_hardcoded_secret_good_fixture_silent ... ok [INFO] [stdout] test command_injection_via_exec_bad_fixture_fires ... ok [INFO] [stdout] test command_injection_via_exec_cross_file_bad_fires ... ok [INFO] [stdout] test command_injection_via_exec_cross_file_good_silent ... ok [INFO] [stdout] test command_injection_via_exec_good_fixture_silent ... ok [INFO] [stdout] test command_injection_via_exec_shape_argv_form_bad_fires_high ... ok [INFO] [stdout] test command_injection_via_exec_shape_fork_bad_fires_high ... ok [INFO] [stdout] test command_injection_via_exec_shape_spawn_no_shell_bad_fires_high ... ok [INFO] [stdout] test crypto_aead_no_final_bad_fixture_fires ... ok [INFO] [stdout] test command_injection_via_exec_shape_shell_parsed_bad_fires_critical ... ok [INFO] [stdout] test command_injection_via_exec_shape_spawn_shell_true_bad_fires_critical ... ok [INFO] [stdout] test crypto_buffer_noassert_test_file_path_suppressed ... ok [INFO] [stdout] test crypto_aead_no_final_test_file_path_suppressed ... ok [INFO] [stdout] test crypto_buffer_noassert_good_fixture_silent ... ok [INFO] [stdout] test crypto_buffer_noassert_bad_fixture_fires ... ok [INFO] [stdout] test crypto_aead_no_final_good_fixture_silent ... ok [INFO] [stdout] test crypto_gcm_no_tag_length_good_fixture_silent ... ok [INFO] [stdout] test crypto_gcm_no_tag_length_bad_fixture_fires ... ok [INFO] [stdout] test crypto_gcm_no_tag_length_test_file_path_suppressed ... ok [INFO] [stdout] test crypto_no_iv_cipher_bad_fixture_fires ... ok [INFO] [stdout] test crypto_no_iv_cipher_good_fixture_silent ... ok [INFO] [stdout] test crypto_no_iv_cipher_test_file_path_suppressed ... ok [INFO] [stdout] test crypto_pseudo_random_bytes_for_secrets_good_fixture_silent ... ok [INFO] [stdout] test crypto_pseudo_random_bytes_for_secrets_bad_fixture_fires ... ok [INFO] [stdout] test crypto_pseudo_random_bytes_for_secrets_test_file_path_suppressed ... ok [INFO] [stdout] test crypto_unsafe_argon2_config_good_fixture_silent ... ok [INFO] [stdout] test crypto_unsafe_argon2_config_bad_fixture_fires ... ok [INFO] [stdout] test crypto_unsafe_argon2_config_test_file_path_suppressed ... ok [INFO] [stdout] test crypto_weak_hash_as_password_good_fixture_silent ... ok [INFO] [stdout] test crypto_weak_hash_as_password_test_file_path_suppressed ... ok [INFO] [stdout] test crypto_weak_hash_as_password_bad_fixture_fires ... ok [INFO] [stdout] test eval_injection_chain_bad_fires ... ok [INFO] [stdout] test eval_injection_chain_good_silent ... ok [INFO] [stdout] test eval_injection_dynamic_import_tainted_bad_fires ... ok [INFO] [stdout] test eval_injection_require_tainted_bad_fires ... ok [INFO] [stdout] test eval_injection_require_static_good_silent ... ok [INFO] [stdout] test eval_injection_require_template_tainted_bad_fires ... ok [INFO] [stdout] test eval_injection_vm2_bad_fires ... ok [INFO] [stdout] test eval_injection_vm2_good_silent ... ok [INFO] [stdout] test eval_injection_transparent_lowercase_fires ... ok [INFO] [stdout] test express_csrf_before_method_override_bad_fixture_fires ... ok [INFO] [stdout] test express_csrf_before_method_override_good_fixture_silent ... ok [INFO] [stdout] test express_csurf_framework_gated_silent_on_hono ... ok [INFO] [stdout] test express_directory_listing_exposed_bad_fixture_fires ... ok [INFO] [stdout] test express_csurf_framework_gating_does_not_silence_express_files ... ok [INFO] [stdout] test express_csurf_middleware_missing_bad_fixture_fires ... ok [INFO] [stdout] test express_csurf_middleware_missing_good_fixture_silent ... ok [INFO] [stdout] test express_csurf_samesite_lax_stays_at_medium ... ok [INFO] [stdout] test express_csurf_samesite_env_default_strict_demotes_to_info ... ok [INFO] [stdout] test express_csurf_samesite_strict_demotes_to_info ... ok [INFO] [stdout] test express_csurf_samesite_ternary_weakest_arm_stays_medium ... ok [INFO] [stdout] test express_x_frame_options_missing_bad_fixture_fires ... ok [INFO] [stdout] test flow_redos_via_dynamic_regexp_bad_fixture_fires ... ok [INFO] [stdout] test express_x_frame_options_missing_good_fixture_silent ... ok [INFO] [stdout] test express_directory_listing_exposed_good_fixture_silent ... ok [INFO] [stdout] test flow_redos_via_dynamic_regexp_good_fixture_silent ... ok [INFO] [stdout] test flow_xss_via_ejs_render_unescaped_bad_fixture_fires ... ok [INFO] [stdout] test flow_xss_via_ejs_render_unescaped_good_fixture_silent ... ok [INFO] [stdout] test flow_xss_via_handlebars_triple_stache_bad_fixture_fires ... ok [INFO] [stdout] test flow_xss_via_handlebars_triple_stache_good_fixture_silent ... ok [INFO] [stdout] test flow_xss_via_mustache_disabled_escape_bad_fixture_fires ... ok [INFO] [stdout] test flow_xss_via_mustache_disabled_escape_good_fixture_silent ... ok [INFO] [stdout] test flow_xss_via_pug_render_unescaped_bad_fixture_fires ... ok [INFO] [stdout] test flow_xss_via_pug_render_unescaped_good_fixture_silent ... ok [INFO] [stdout] test flow_xss_via_res_render_tainted_view_bad_fixture_fires ... ok [INFO] [stdout] test flow_xss_via_res_render_tainted_view_good_fixture_silent ... ok [INFO] [stdout] test flow_xss_via_response_write_bad_fixture_fires ... ok [INFO] [stdout] test flow_xxe_via_expat_bad_fixture_fires ... ok [INFO] [stdout] test flow_xxe_via_libxmljs_bad_fixture_fires ... ok [INFO] [stdout] test flow_xxe_via_expat_good_fixture_silent ... ok [INFO] [stdout] test flow_xss_via_response_write_good_fixture_silent ... ok [INFO] [stdout] test flow_xxe_via_libxmljs_good_fixture_silent ... ok [INFO] [stdout] test flow_xxe_via_sax_good_fixture_silent ... ok [INFO] [stdout] test flow_xxe_via_sax_bad_fixture_fires ... ok [INFO] [stdout] test hardcoded_secret_bcrypt_hash_value_suppressed ... ok [INFO] [stdout] test flow_xxe_via_xml2json_bad_fixture_fires ... ok [INFO] [stdout] test flow_xxe_via_xml2json_good_fixture_silent ... ok [INFO] [stdout] test hardcoded_secret_bad_fixture_fires ... ok [INFO] [stdout] test hardcoded_secret_explicit_public_key_name_suppressed ... ok [INFO] [stdout] test hardcoded_secret_compound_public_key_name_suppressed ... ok [INFO] [stdout] test hardcoded_secret_good_fixture_silent ... ok [INFO] [stdout] test hardcoded_secret_i18n_path_suppressed ... ok [INFO] [stdout] test hardcoded_secret_http_header_name_value_suppressed ... ok [INFO] [stdout] test hardcoded_secret_identifier_shape_value_suppressed ... ok [INFO] [stdout] test hardcoded_secret_mock_data_dir_suppressed ... ok [INFO] [stdout] test hardcoded_secret_pem_public_key_value_suppressed ... ok [INFO] [stdout] test hardcoded_secret_provider_prefix_dummy_value_suppressed ... ok [INFO] [stdout] test hardcoded_secret_posthog_phc_public_key_suppressed ... ok [INFO] [stdout] test hardcoded_secret_mocks_dir_suppressed ... ok [INFO] [stdout] test hardcoded_secret_real_credential_bad_fires ... ok [INFO] [stdout] test hardcoded_secret_sandbox_prefix_value_suppressed ... ok [INFO] [stdout] test hardcoded_secret_stories_suffix_suppressed ... ok [INFO] [stdout] test hardcoded_secret_stories_dir_suppressed ... ok [INFO] [stdout] test hardcoded_secret_test_file_path_suppressed ... ok [INFO] [stdout] test hardcoded_secret_test_name_prefix_suppressed ... ok [INFO] [stdout] test hardcoded_secret_universal_identifier_suffix_suppressed ... ok [INFO] [stdout] test insecure_deserialize_chain_bad_fires ... ok [INFO] [stdout] test insecure_deserialize_chain_good_silent ... ok [INFO] [stdout] test insecure_deserialize_deepmerge_tainted_fires ... ok [INFO] [stdout] test insecure_deserialize_jquery_extend_deep_tainted_fires ... ok [INFO] [stdout] test insecure_deserialize_lodash_merge_tainted_fires ... ok [INFO] [stdout] test insecure_deserialize_lodash_defaults_tainted_fires ... ok [INFO] [stdout] test insecure_deserialize_object_assign_fresh_target_silent ... ok [INFO] [stdout] test insecure_deserialize_lodash_merge_validated_silent ... ok [INFO] [stdout] test insecure_deserialize_non_lodash_merge_silent ... ok [INFO] [stdout] test insecure_deserialize_object_assign_literal_silent ... ok [INFO] [stdout] test insecure_deserialize_proto_pollution_loop_bad_fires ... ok [INFO] [stdout] test insecure_deserialize_transparent_tostring_fires ... ok [INFO] [stdout] test insecure_deserialize_proto_pollution_loop_good_silent ... ok [INFO] [stdout] test insecure_deserialize_object_assign_tainted_fires ... ok [INFO] [stdout] test nosql_injection_nestjs_controller_mongo_collection_fires ... ok [INFO] [stdout] test nosql_injection_chain_good_silent ... ok [INFO] [stdout] test nosql_injection_nestjs_di_service_silent ... ok [INFO] [stdout] test origin_config_derived_redirect_silent ... ok [INFO] [stdout] test origin_env_derived_sql_fires ... ok [INFO] [stdout] test origin_env_derived_redirect_silent ... ok [INFO] [stdout] test origin_literal_default_redirect_silent ... ok [INFO] [stdout] test nosql_injection_chain_bad_fires ... ok [INFO] [stdout] test origin_literal_default_secret_fires ... ok [INFO] [stdout] test origin_request_derived_redirect_fires ... ok [INFO] [stdout] test origin_mixed_redirect_fires ... ok [INFO] [stdout] test origin_rule_trait_default_rejects_literal_default ... ok [INFO] [stdout] test path_traversal_bad_fixture_fires ... ok [INFO] [stdout] test path_traversal_good_fixture_silent ... ok [INFO] [stdout] test path_traversal_sendfile_bad_fixture_fires ... ok [INFO] [stdout] test path_traversal_sendfile_good_fixture_silent ... ok [INFO] [stdout] test prompt_injection_good_fixture_silent ... ok [INFO] [stdout] test redirect_open_bad_fixture_fires ... ok [INFO] [stdout] test prompt_injection_bad_fixture_fires ... ok [INFO] [stdout] test redirect_open_cross_file_bad_fires ... ok [INFO] [stdout] test redirect_open_cross_file_good_silent ... ok [INFO] [stdout] test redirect_open_generic_wrapper_fires ... ok [INFO] [stdout] test redirect_open_good_fixture_silent ... ok [INFO] [stdout] test redirect_open_external_url_fires ... ok [INFO] [stdout] test redirect_open_handleredirect_not_safety_wrapper_fires ... ok [INFO] [stdout] test redirect_open_non_safety_wrapper_fires ... ok [INFO] [stdout] test redirect_open_protocol_relative_fires ... ok [INFO] [stdout] test redirect_open_safe_wrapper_validateredirect_silent ... ok [INFO] [stdout] test redirect_open_safe_wrapper_getsaferedirect_silent ... ok [INFO] [stdout] test redirect_open_same_origin_path_silent ... ok [INFO] [stdout] test secret_to_response_precision_boundaries ... ok [INFO] [stdout] test secret_to_response_bad_fires ... ok [INFO] [stdout] test sql_injection_bad_fixture_fires ... ok [INFO] [stdout] test secret_to_response_good_silent ... ok [INFO] [stdout] test sql_injection_assignment_bad_fires ... ok [INFO] [stdout] test sql_injection_concat_keyword_bad_fires ... ok [INFO] [stdout] test sql_injection_bun_sqlite_bad_fires ... ok [INFO] [stdout] test sql_injection_bun_sqlite_good_silent ... ok [INFO] [stdout] test sql_injection_dynamic_query_builder_passthrough_bad_fires ... ok [INFO] [stdout] test sql_injection_cross_file_bad_fires ... ok [INFO] [stdout] test sql_injection_cross_file_good_silent ... ok [INFO] [stdout] test sql_injection_good_fixture_silent ... ok [INFO] [stdout] test sql_injection_non_sql_keyword_prefix_good_silent ... ok [INFO] [stdout] test sql_injection_knex_bad_fires ... ok [INFO] [stdout] test sql_injection_knex_good_silent ... ok [INFO] [stdout] test sql_injection_non_sql_named_args_good_silent ... ok [INFO] [stdout] test sql_injection_non_sql_object_query_good_silent ... ok [INFO] [stdout] test sql_injection_template_keyword_bad_fires ... ok [INFO] [stdout] test ssrf_via_fetch_bad_fixture_fires ... ok [INFO] [stdout] test ssrf_via_fetch_cross_file_bad_fires ... ok [INFO] [stdout] test ssrf_via_fetch_three_level_chain_good_silent ... ok [INFO] [stdout] test suppress_file_level_drops_all_findings_for_rule ... ok [INFO] [stdout] test ssrf_via_fetch_cross_file_good_silent ... ok [INFO] [stdout] test ssrf_via_fetch_good_fixture_silent ... ok [INFO] [stdout] test ssrf_via_fetch_three_level_chain_bad_fires ... ok [INFO] [stdout] test suppress_inline_drops_matching_rule_only ... ok [INFO] [stdout] test unvalidated_body_to_db_bad_fixture_fires ... ok [INFO] [stdout] test unvalidated_body_to_db_barrel_re_export ... ok [INFO] [stdout] test unvalidated_body_to_db_call_wrapped_sink_records_root_taint ... ok [INFO] [stdout] test unvalidated_body_to_db_branch_merge_all_cases_fire ... ok [INFO] [stdout] test unvalidated_body_to_db_composes_shapes_cross_file ... ok [INFO] [stdout] test unvalidated_body_to_db_cross_file_good_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_conform_parse_recognised_as_sanitizer ... ok [INFO] [stdout] test unvalidated_body_to_db_cross_file_bad_fires ... ok [INFO] [stdout] test unvalidated_body_to_db_destructuring_projection_only_unvalidated_fires ... ok [INFO] [stdout] test unvalidated_body_to_db_emits_arg_placeholder_for_unobserved_params ... ok [INFO] [stdout] test unvalidated_body_to_db_cross_file_message_lists_callee_fields ... ok [INFO] [stdout] test unvalidated_body_to_db_local_shape_propagates_at_sink ... ok [INFO] [stdout] test unvalidated_body_to_db_local_shape_propagates_at_return ... ok [INFO] [stdout] test unvalidated_body_to_db_higher_order_all_cases_fire ... ok [INFO] [stdout] test unvalidated_body_to_db_good_fixture_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_discriminant_validator_guard ... ok [INFO] [stdout] test unvalidated_body_to_db_nest_bad_fires ... ok [INFO] [stdout] test unvalidated_body_to_db_nest_good_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_nest_query_bad_silent_without_adapters ... ok [INFO] [stdout] test unvalidated_body_to_db_nest_query_bad_with_nestjs_adapter ... ok [INFO] [stdout] test unvalidated_body_to_db_per_field_sanitisation_only_control_fires ... ok [INFO] [stdout] test unvalidated_body_to_db_populates_param_shape ... ok [INFO] [stdout] test unvalidated_body_to_db_populates_return_shape ... ok [INFO] [stdout] test unvalidated_body_to_db_propagates_offsets_cross_file ... ok [INFO] [stdout] test unvalidated_body_to_db_three_level_chain_bad_fires ... ok [INFO] [stdout] test unvalidated_body_to_db_records_param_side_offsets ... ok [INFO] [stdout] test unvalidated_body_to_db_return_shape_chain_substrate_smoke ... ok [INFO] [stdout] test unvalidated_body_to_db_three_level_chain_good_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_validate_wrapper_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_where_only_emits_medium ... ok [INFO] [stdout] test unvalidated_body_to_db_zod_missing_safeparse_bad_fires ... ok [INFO] [stdout] test unvalidated_body_to_db_tsconfig_paths_resolved ... ok [INFO] [stdout] test unvalidated_body_to_db_zod_parse_good_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_zod_safeparse_destructure_good_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_zod_safeparse_direct_field_good_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_zod_safeparse_whole_object_good_silent ... ok [INFO] [stdout] test unvalidated_body_to_db_zod_wrong_schema_shape_bad_fires ... ok [INFO] [stdout] test xss_via_dangerously_set_inner_html_bad_fixture_fires ... ok [INFO] [stdout] test xss_via_dangerously_set_inner_html_good_fixture_silent ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 237 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 13.68s [INFO] [stdout] [INFO] [stderr] Running tests/surfaces.rs (/opt/rustwide/target/debug/deps/surfaces-415a684a792e381d) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test surface_score_only_hides_from_cli_but_keeps_in_summary ... ok [INFO] [stdout] test surface_ci_failure_forces_nonzero_exit ... ok [INFO] [stdout] test surface_empty_list_silences_rule_completely ... ok [INFO] [stdout] test no_stryx_toml_keeps_all_findings_visible ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/stryx_core-b58832ad408b9288) [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.44s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test entropy::tests::aws_shape_placeholder_passes_on_entropy_alone ... ok [INFO] [stdout] test entropy::tests::date_format_pattern_fails_entropy_gate ... ok [INFO] [stdout] test entropy::tests::empty_string_has_zero_entropy ... ok [INFO] [stdout] test entropy::tests::all_same_byte_has_zero_entropy ... ok [INFO] [stdout] test entropy::tests::kebab_case_header_name_passes_entropy_gate_alone ... ok [INFO] [stdout] test entropy::tests::opaque_alphanumeric_token_is_high_entropy ... ok [INFO] [stdout] test entropy::tests::hex_constant_passes_threshold ... ok [INFO] [stdout] test entropy::tests::posthog_public_key_passes_entropy_gate_by_design ... ok [INFO] [stdout] test entropy::tests::perfect_uniform_byte_distribution_is_eight_bits ... ok [INFO] [stdout] test entropy::tests::provider_prefix_with_english_passes_entropy_gate_alone ... ok [INFO] [stdout] test entropy::tests::readable_english_shaped_passes_entropy_gate_alone ... ok [INFO] [stdout] test entropy::tests::short_string_fails_on_length_floor ... ok [INFO] [stdout] test entropy::tests::shouting_snake_case_constant_just_fails_entropy_gate ... ok [INFO] [stdout] test entropy::tests::single_byte_has_zero_entropy ... ok [INFO] [stdout] test entropy::tests::opaque_prefixed_hex_token_is_high_entropy ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 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/stryx_index-f74e77b2a3a0b28f) [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test jsonc::tests::strips_trailing_commas ... ok [INFO] [stdout] test jsonc::tests::strips_line_and_block_comments ... ok [INFO] [stdout] test jsonc::tests::preserves_comment_lookalikes_in_strings ... ok [INFO] [stdout] test profile::tests::brand_name_variants_serialize_to_canonical_strings ... ok [INFO] [stdout] test profile::tests::is_empty_matches_default ... ok [INFO] [stdout] test tests::merge_unions_imports_and_re_exports ... ok [INFO] [stdout] test tests::merge_unions_per_rule_sink_flags_on_export_collision ... ok [INFO] [stdout] test profile::detect::tests::class_validator_absent_when_only_zod_present ... ok [INFO] [stdout] test profile::detect::tests::class_validator_dependency_is_detected ... ok [INFO] [stdout] test tests::insert_file_merges_when_paths_collide ... ok [INFO] [stdout] test profile::detect::tests::class_validator_dev_dependency_is_detected ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 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/stryx_llm-796234a2687aba8f) [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/stryx_napi-950a78071790eb96) [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/stryx_reporter-721b09658cbedd2d) [INFO] [stdout] [INFO] [stdout] running 27 tests [INFO] [stdout] test color::tests::disabled_palette_emits_plain_text ... ok [INFO] [stdout] test color::tests::enabled_palette_wraps_with_ansi ... ok [INFO] [stdout] test color::tests::score_band_thresholds ... ok [INFO] [stdout] test score_panel::tests::bar_rounds_proportionally ... ok [INFO] [stdout] test category::tests::known_rules_map_to_documented_buckets ... ok [INFO] [stdout] test score_panel::tests::non_tty_clean_for_100 ... ok [INFO] [stdout] test score_panel::tests::tty_box_is_fully_filled_at_100 ... ok [INFO] [stdout] test tests::grouped_output_truncates_to_three_representatives ... ok [INFO] [stdout] test tests::non_tty_mode_emits_no_ansi_codes ... ok [INFO] [stdout] test tests::file_count_formats_with_commas ... ok [INFO] [stdout] test tests::score_below_50_labels_as_critical_risk ... ok [INFO] [stdout] test tests::grouped_output_sorts_severity_descending_then_rule_id ... ok [INFO] [stdout] test tests::score_critical_cap_wins_over_high_cap ... ok [INFO] [stdout] test tests::score_is_100_when_no_findings ... ok [INFO] [stdout] test tests::empty_findings_render_score_panel_with_clean ... ok [INFO] [stdout] test tests::score_one_low_is_99 ... ok [INFO] [stdout] test tests::category_grouping_picks_correct_bucket_for_known_rules ... ok [INFO] [stdout] test tests::score_one_critical_is_49_cap ... ok [INFO] [stdout] test tests::score_one_high_is_74_cap ... ok [INFO] [stdout] test tests::score_clamps_at_zero_for_many_lows ... ok [INFO] [stdout] test tests::single_finding_group_drops_repeat_suffix ... ok [INFO] [stdout] test tests::score_one_medium_is_89_cap ... ok [INFO] [stdout] test score_panel::tests::non_tty_prints_single_line_no_box ... ok [INFO] [stdout] test score_panel::tests::tty_box_contains_score_and_label_and_bar ... ok [INFO] [stdout] test category::tests::unknown_rule_falls_back_to_other ... ok [INFO] [stdout] test tests::verbose_output_prints_each_finding_individually ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/stryx_rules-1c7effb18fd34436) [INFO] [stdout] test tests::tty_mode_emits_panel_and_colored_icons ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.66s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 172 tests [INFO] [stdout] test adapters::matcher_tests::decorated_class_always_false_on_expressions ... ok [INFO] [stdout] test adapters::matcher_tests::decorated_param_always_false_on_expressions ... ok [INFO] [stdout] test adapters::matcher_tests::imported_call_rejects_wrong_module ... ok [INFO] [stdout] test adapters::matcher_tests::imported_call_matches_when_import_resolves_to_module ... ok [INFO] [stdout] test adapters::matcher_tests::imported_call_rejects_member_call_callee ... ok [INFO] [stdout] test adapters::matcher_tests::member_on_param_matches_req_body ... ok [INFO] [stdout] test adapters::matcher_tests::imported_call_returns_false_without_index ... ok [INFO] [stdout] test adapters::matcher_tests::member_on_param_rejects_wrong_property_when_named ... ok [INFO] [stdout] test adapters::matcher_tests::member_on_param_rejects_wrong_receiver ... ok [INFO] [stdout] test adapters::matcher_tests::method_call_any_receiver_matches_parse ... ok [INFO] [stdout] test adapters::matcher_tests::method_call_any_receiver_rejects_bare_ident_call ... ok [INFO] [stdout] test adapters::matcher_tests::method_call_matches_chained_receiver ... ok [INFO] [stdout] test adapters::matcher_tests::method_call_any_receiver_matches_any_receiver ... ok [INFO] [stdout] test adapters::matcher_tests::method_call_any_receiver_rejects_wrong_method ... ok [INFO] [stdout] test adapters::matcher_tests::member_on_param_wildcard_property_matches_any_field ... ok [INFO] [stdout] test adapters::matcher_tests::method_call_rejects_wrong_receiver ... ok [INFO] [stdout] test adapters::matcher_tests::method_call_matches_single_segment_receiver ... ok [INFO] [stdout] test adapters::matcher_tests::namespace_call_matches_bun_spawn ... ok [INFO] [stdout] test adapters::matcher_tests::namespace_call_rejects_chained_receiver ... ok [INFO] [stdout] test adapters::tests::adapter_id_malformed_returns_false ... ok [INFO] [stdout] test adapters::matcher_tests::namespace_call_rejects_wrong_namespace ... ok [INFO] [stdout] test adapters::tests::enabled_for_empty_profile_yields_empty_view ... ok [INFO] [stdout] test adapters::matcher_tests::method_call_rejects_wrong_method ... ok [INFO] [stdout] test adapters::tests::is_enabled_default_matches_profile_id_and_confidence ... ok [INFO] [stdout] test adapters_ajv::tests::ajv_adapter_is_validator_kind ... ok [INFO] [stdout] test adapters::tests::is_enabled_default_rejects_below_floor_confidence ... ok [INFO] [stdout] test adapters_ajv::tests::is_enabled_returns_true_under_ajv_profile ... ok [INFO] [stdout] test adapters_anthropic::tests::anthropic_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters::tests::builtin_registry_contains_expected_adapters ... ok [INFO] [stdout] test adapters_anthropic::tests::anthropic_adapter_is_llm_sdk_kind ... ok [INFO] [stdout] test adapters_ajv::tests::is_enabled_returns_false_under_zod_profile ... ok [INFO] [stdout] test adapters_ajv::tests::ajv_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_auth_js::tests::is_enabled_returns_false_under_better_auth_profile ... ok [INFO] [stdout] test adapters_anthropic::tests::anthropic_sinks_floor_at_high ... ok [INFO] [stdout] test adapters_auth_js::tests::is_enabled_returns_true_under_auth_js_profile ... ok [INFO] [stdout] test adapters_anthropic::tests::is_enabled_returns_true_under_anthropic_profile ... ok [INFO] [stdout] test adapters_auth_js::tests::auth_js_adapter_exposes_expected_guard_patterns ... ok [INFO] [stdout] test adapters_anthropic::tests::is_enabled_returns_false_under_openai_profile ... ok [INFO] [stdout] test adapters_auth_js::tests::auth_js_adapter_is_auth_kind ... ok [INFO] [stdout] test adapters_better_auth::tests::better_auth_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_better_auth::tests::better_auth_adapter_is_auth_kind ... ok [INFO] [stdout] test adapters_better_auth::tests::is_enabled_returns_false_under_auth_js_profile ... ok [INFO] [stdout] test adapters_bun::tests::bun_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_bun::tests::bun_adapter_is_runtime_kind ... ok [INFO] [stdout] test adapters_bun::tests::bun_exec_sinks_floor_at_critical ... ok [INFO] [stdout] test adapters_bun::tests::bun_fs_sinks_floor_at_high ... ok [INFO] [stdout] test adapters_bun::tests::is_enabled_returns_false_under_node_profile ... ok [INFO] [stdout] test adapters_class_validator::tests::class_validator_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_class_validator::tests::class_validator_adapter_is_validator_kind ... ok [INFO] [stdout] test adapters_class_validator::tests::is_enabled_returns_false_under_zod_profile ... ok [INFO] [stdout] test adapters_class_validator::tests::is_enabled_returns_true_under_class_validator_profile ... ok [INFO] [stdout] test adapters_bun::tests::is_enabled_returns_true_under_bun_profile ... ok [INFO] [stdout] test adapters_better_auth::tests::is_enabled_returns_true_under_better_auth_profile ... ok [INFO] [stdout] test adapters_better_auth::tests::better_auth_adapter_exposes_expected_guard_patterns ... ok [INFO] [stdout] test adapters_auth_js::tests::auth_js_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_drizzle::tests::drizzle_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_clerk::tests::clerk_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_clerk::tests::clerk_adapter_is_auth_kind ... ok [INFO] [stdout] test adapters_drizzle::tests::drizzle_raw_sql_floor_at_critical ... ok [INFO] [stdout] test adapters_drizzle::tests::drizzle_adapter_is_data_layer_kind ... ok [INFO] [stdout] test adapters_drizzle::tests::is_enabled_returns_false_under_prisma_profile ... ok [INFO] [stdout] test adapters_clerk::tests::clerk_adapter_exposes_expected_guard_patterns ... ok [INFO] [stdout] test adapters_drizzle::tests::is_enabled_returns_true_under_drizzle_profile ... ok [INFO] [stdout] test adapters_clerk::tests::is_enabled_returns_false_under_better_auth_profile ... ok [INFO] [stdout] test adapters_clerk::tests::is_enabled_returns_true_under_clerk_profile ... ok [INFO] [stdout] test adapters_express::tests::express_adapter_exposes_expected_source_patterns ... ok [INFO] [stdout] test adapters_express::tests::express_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_express::tests::express_adapter_is_framework_kind ... ok [INFO] [stdout] test adapters_express::tests::is_enabled_returns_false_under_unrelated_profile ... ok [INFO] [stdout] test adapters_express::tests::is_enabled_returns_true_under_express_profile ... ok [INFO] [stdout] test adapters_fastify::tests::fastify_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_fastify::tests::fastify_adapter_exposes_expected_source_patterns ... ok [INFO] [stdout] test adapters_fastify::tests::fastify_adapter_is_framework_kind ... ok [INFO] [stdout] test adapters_fastify::tests::is_enabled_returns_false_under_unrelated_profile ... ok [INFO] [stdout] test adapters_drizzle::tests::drizzle_db_writes_floor_at_high ... ok [INFO] [stdout] test adapters_hono::tests::hono_adapter_exposes_expected_source_patterns ... ok [INFO] [stdout] test adapters_hono::tests::hono_adapter_is_framework_kind ... ok [INFO] [stdout] test adapters_hono::tests::hono_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_joi::tests::is_enabled_returns_false_under_yup_profile ... ok [INFO] [stdout] test adapters_hono::tests::is_enabled_returns_false_under_unrelated_profile ... ok [INFO] [stdout] test adapters_hono::tests::is_enabled_returns_true_under_hono_profile ... ok [INFO] [stdout] test adapters_fastify::tests::is_enabled_returns_true_under_fastify_profile ... ok [INFO] [stdout] test adapters_joi::tests::is_enabled_returns_true_under_joi_profile ... ok [INFO] [stdout] test adapters_joi::tests::joi_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_joi::tests::joi_adapter_is_validator_kind ... ok [INFO] [stdout] test adapters_mysql2::tests::is_enabled_returns_false_under_pg_profile ... ok [INFO] [stdout] test adapters_mysql2::tests::is_enabled_returns_true_under_mysql2_profile ... ok [INFO] [stdout] test adapters_mysql2::tests::mysql2_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_mysql2::tests::mysql2_adapter_is_data_layer_kind ... ok [INFO] [stdout] test adapters_nestjs::tests::enabled_for_nestjs_profile_activates_nestjs_adapter ... ok [INFO] [stdout] test adapters_nestjs::tests::enabled_for_non_nestjs_profile_does_not_activate_nestjs ... ok [INFO] [stdout] test adapters_nestjs::tests::nestjs_adapter_exposes_five_source_patterns ... ok [INFO] [stdout] test adapters_next::tests::is_enabled_returns_false_under_unrelated_profile ... ok [INFO] [stdout] test adapters_next::tests::is_enabled_returns_true_under_next_backend_profile ... ok [INFO] [stdout] test adapters_next::tests::next_backend_adapter_exposes_expected_source_patterns ... ok [INFO] [stdout] test adapters_next::tests::next_backend_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_next::tests::next_backend_adapter_is_framework_kind ... ok [INFO] [stdout] test adapters_node::tests::is_enabled_returns_false_under_bun_profile ... ok [INFO] [stdout] test adapters_node::tests::node_adapter_is_runtime_kind ... ok [INFO] [stdout] test adapters_node::tests::node_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_mysql2::tests::mysql2_sinks_floor_at_critical ... ok [INFO] [stdout] test adapters_node::tests::node_exec_sinks_floor_at_critical ... ok [INFO] [stdout] test adapters_node::tests::node_fs_sinks_floor_at_high ... ok [INFO] [stdout] test adapters_node::tests::is_enabled_returns_true_under_node_profile ... ok [INFO] [stdout] test adapters_openai::tests::is_enabled_returns_true_under_openai_profile ... ok [INFO] [stdout] test adapters_openai::tests::openai_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_openai::tests::is_enabled_returns_false_under_anthropic_profile ... ok [INFO] [stdout] test adapters_openai::tests::openai_adapter_is_llm_sdk_kind ... ok [INFO] [stdout] test adapters_openai::tests::openai_sinks_floor_at_high ... ok [INFO] [stdout] test adapters_pg::tests::is_enabled_returns_true_under_pg_profile ... ok [INFO] [stdout] test adapters_pg::tests::is_enabled_returns_false_under_mysql2_profile ... ok [INFO] [stdout] test adapters_pg::tests::pg_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_pg::tests::pg_sinks_floor_at_critical ... ok [INFO] [stdout] test adapters_prisma::tests::is_enabled_returns_true_under_prisma_profile ... ok [INFO] [stdout] test adapters_prisma::tests::prisma_adapter_exposes_expected_sink_patterns ... ok [INFO] [stdout] test adapters_prisma::tests::is_enabled_returns_false_under_drizzle_profile ... ok [INFO] [stdout] test adapters_prisma::tests::prisma_adapter_is_data_layer_kind ... ok [INFO] [stdout] test adapters_prisma::tests::prisma_db_writes_floor_at_high ... ok [INFO] [stdout] test adapters_valibot::tests::is_enabled_returns_false_under_zod_profile ... ok [INFO] [stdout] test adapters_valibot::tests::valibot_adapter_is_validator_kind ... ok [INFO] [stdout] test adapters_valibot::tests::is_enabled_returns_true_under_valibot_profile ... ok [INFO] [stdout] test adapters_pg::tests::pg_adapter_is_data_layer_kind ... ok [INFO] [stdout] test adapters_valibot::tests::valibot_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_prisma::tests::prisma_raw_sql_escapes_floor_at_critical ... ok [INFO] [stdout] test adapters_yup::tests::is_enabled_returns_true_under_yup_profile ... ok [INFO] [stdout] test adapters_yup::tests::yup_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_yup::tests::yup_adapter_is_validator_kind ... ok [INFO] [stdout] test adapters_zod::tests::is_enabled_returns_false_under_valibot_profile ... ok [INFO] [stdout] test adapters_zod::tests::is_enabled_returns_true_under_zod_profile ... ok [INFO] [stdout] test adapters_zod::tests::zod_adapter_exposes_expected_sanitiser_patterns ... ok [INFO] [stdout] test adapters_zod::tests::zod_adapter_is_validator_kind ... ok [INFO] [stdout] test context_tests::match_source_returns_none_when_no_adapters_configured ... ok [INFO] [stdout] test context_tests::match_source_returns_pattern_when_matcher_fires ... ok [INFO] [stdout] test flows::redirect_open::safety_wrapper_name_tests::rejects_non_safety_shapes ... ok [INFO] [stdout] test flows::redirect_open::safety_wrapper_name_tests::matches_safety_wrapper_shapes ... ok [INFO] [stdout] test flows::path_traversal::sanitizer_name_tests::matches_prefix_and_suffix_shapes ... ok [INFO] [stdout] test flows::path_traversal::sanitizer_name_tests::rejects_non_sanitizer_shapes ... ok [INFO] [stdout] test origin_bridge::tests::body_property_chain_arg_classifies_as_request_derived ... ok [INFO] [stdout] test origin_bridge::tests::body_or_literal_coalesce_is_mixed ... ok [INFO] [stdout] test origin_bridge::tests::body_member_arg_classifies_as_request_derived ... ok [INFO] [stdout] test adapters_yup::tests::is_enabled_returns_false_under_zod_profile ... ok [INFO] [stdout] test origin_bridge::tests::bun_env_direct_member_in_call_arg_classifies_as_env_derived ... ok [INFO] [stdout] test origin_bridge::tests::bun_env_member_classifies_as_env_derived ... ok [INFO] [stdout] test origin_bridge::tests::config_named_parameter_with_config_typed_annotation_is_config_derived ... ok [INFO] [stdout] test origin_bridge::tests::await_request_json_call_classifies_as_request_derived ... ok [INFO] [stdout] test origin_bridge::tests::nestjs_body_decorator_param_is_request_derived ... ok [INFO] [stdout] test origin_bridge::tests::string_literal_arg_classifies_as_literal_default ... ok [INFO] [stdout] test origin_bridge::tests::process_env_member_classifies_as_env_derived ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::array_is_array_negation_is_recognised ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::computed_member_access_is_not_recognised ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::instanceof_negation_is_recognised ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::buffer_is_buffer_negation_is_recognised ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::positive_array_is_array_is_not_recognised ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::number_is_integer_negation_is_recognised ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::typeof_inequality_on_member_access_is_recognised ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::typeof_loose_inequality_is_recognised ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::typeof_strict_equality_is_not_recognised ... ok [INFO] [stdout] test steps::hof::tests::hof_variants_default_to_noop_through_registry ... ok [INFO] [stdout] test steps::propagators::transparent_method::tests::closed_list_includes_documented_methods ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::unrelated_call_is_not_recognised ... ok [INFO] [stdout] test steps::propagators::transparent_method::tests::sanitisers_and_coercions_are_not_transparent ... ok [INFO] [stdout] test steps::sinks::sql::tests::contains_sql_keyword_matches_standalone_select ... ok [INFO] [stdout] test steps::sinks::sql::tests::contains_sql_keyword_matches_with_punctuation_boundaries ... ok [INFO] [stdout] test steps::sinks::template::template_string_tests::ejs_recognises_unescaped_tag ... ok [INFO] [stdout] test steps::sinks::template::template_string_tests::ejs_silent_on_escaped_or_logic_tags ... ok [INFO] [stdout] test steps::sinks::sql::tests::contains_sql_keyword_rejects_substrings ... ok [INFO] [stdout] test steps::guards::manual_type_guard::tests::typeof_swapped_argument_order_is_recognised ... ok [INFO] [stdout] test steps::sinks::sql::tests::contains_sql_keyword_empty_or_short_is_false ... ok [INFO] [stdout] test steps::sinks::template::template_string_tests::pug_recognises_unescaped_forms ... ok [INFO] [stdout] test steps::tests::sink_and_prop_specs_round_trip ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/stryx_taint-584c092ba1587dbe) [INFO] [stdout] test steps::tests::default_impls_match_substrate_contract ... ok [INFO] [stdout] test steps::sinks::template::template_string_tests::pug_silent_on_escaped_only ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 172 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 66 tests [INFO] [stdout] test origin::tests::fully_opaque_identifier_is_unknown ... ok [INFO] [stdout] test origin::tests::dynamic_property_access_is_unknown ... ok [INFO] [stdout] test origin::tests::parameter_without_decorator_or_config_shape_is_unknown ... ok [INFO] [stdout] test origin::tests::rule10_await_is_transparent ... ok [INFO] [stdout] test origin::tests::cap_breach_returns_unknown ... ok [INFO] [stdout] test origin::tests::call_site_origin_defaults_to_empty_vec ... ok [INFO] [stdout] test origin::tests::rule1_literal_expression_classifies_as_literal_default ... ok [INFO] [stdout] test origin::tests::rule2_identifier_with_body_source_initialiser_is_request_derived ... ok [INFO] [stdout] test origin::tests::rule3_identifier_with_process_env_initialiser_is_env_derived ... ok [INFO] [stdout] test origin::tests::rule4_identifier_with_pure_literal_initialiser_is_literal_default ... ok [INFO] [stdout] test origin::tests::rule5_logical_merges_differing_origins_to_mixed ... ok [INFO] [stdout] test origin::tests::rule9_transparent_call_recurses_on_first_arg ... ok [INFO] [stdout] test origin::tests::rule6_nestjs_body_decorator_parameter_is_request_derived ... ok [INFO] [stdout] test origin::tests::rule7_config_named_parameter_with_config_named_type_is_config_derived ... ok [INFO] [stdout] test origin::tests::source_origin_serde_uses_snake_case ... ok [INFO] [stdout] test origin::tests::unknown_variant_is_serde_other_fallback ... ok [INFO] [stdout] test tests::arg_contributes_no_tainted_leaves ... ok [INFO] [stdout] test origin::tests::rule8_member_expression_recurses_on_leftmost_identifier ... ok [INFO] [stdout] test tests::arg_placeholder_serde_roundtrips ... ok [INFO] [stdout] test tests::canonicalize_clean_still_flattens_arg ... ok [INFO] [stdout] test tests::canonicalize_drops_bare_bot_cell ... ok [INFO] [stdout] test tests::canonicalize_collapses_obj_with_only_clean_to_clean_outer ... ok [INFO] [stdout] test tests::canonicalize_flattens_clean_cell_with_substructure ... ok [INFO] [stdout] test tests::canonicalize_keeps_tainted_cell ... ok [INFO] [stdout] test tests::canonicalize_drops_obj_when_all_entries_useless ... ok [INFO] [stdout] test tests::canonicalize_is_idempotent ... ok [INFO] [stdout] test tests::canonicalize_preserves_none_arg_cell ... ok [INFO] [stdout] test tests::canonicalize_prunes_useless_obj_entries_recursively ... ok [INFO] [stdout] test tests::canonicalize_normalises_tainted_label_list ... ok [INFO] [stdout] test tests::has_tainted_leaf_matches_count_predicate ... ok [INFO] [stdout] test tests::instantiate_tainted_preserves_substructure_under_tainted ... ok [INFO] [stdout] test tests::instantiate_tainted_replaces_leaf_with_replacement ... ok [INFO] [stdout] test tests::mark_clean_at_carves_sub_field_under_tainted_root ... ok [INFO] [stdout] test tests::cell_constructors_produce_canonical_shapes ... ok [INFO] [stdout] test tests::instantiate_tainted_leaves_non_tainted_cells_alone ... ok [INFO] [stdout] test tests::instantiate_tainted_recurses_into_obj ... ok [INFO] [stdout] test tests::mark_clean_at_empty_path_makes_whole_clean ... ok [INFO] [stdout] test tests::mark_clean_at_nested_path_creates_intermediate_objs ... ok [INFO] [stdout] test tests::merge_into_arg_beats_bot ... ok [INFO] [stdout] test tests::merge_into_bot_is_identity ... ok [INFO] [stdout] test tests::merge_into_clean_plus_none_downgrades_to_none ... ok [INFO] [stdout] test tests::merge_into_different_arg_ids_drops_to_bot ... ok [INFO] [stdout] test tests::merge_into_obj_recurses_on_shared_keys ... ok [INFO] [stdout] test tests::merge_into_obj_target_keeps_obj_when_source_is_arg ... ok [INFO] [stdout] test tests::merge_into_obj_beats_arg ... ok [INFO] [stdout] test tests::merge_into_same_arg_id_is_idempotent ... ok [INFO] [stdout] test tests::merge_into_obj_unions_keys_and_recurses ... ok [INFO] [stdout] test tests::offset_ord_matches_phase1_sort_key ... ok [INFO] [stdout] test tests::merge_into_xtaint_tainted_dominates_clean_and_none ... ok [INFO] [stdout] test tests::merge_into_xtaint_tainted_unions_label_sets ... ok [INFO] [stdout] test tests::paramflow_deserializes_pre_slice2_json_without_fetch_flag ... ok [INFO] [stdout] test tests::offset_serde_roundtrips ... ok [INFO] [stdout] test tests::paramflow_with_empty_offsets_deserializes_from_pre_slice1_json ... ok [INFO] [stdout] test tests::project_at_returns_explicit_shape_entry_then_inherits ... ok [INFO] [stdout] test tests::strip_arg_for_does_not_touch_bot_or_tainted_leaves ... ok [INFO] [stderr] Doc-tests stryx_ast [INFO] [stdout] test tests::strip_arg_for_leaves_non_matching_arg_alone ... ok [INFO] [stdout] test tests::strip_arg_for_replaces_matching_arg_with_bot ... ok [INFO] [stdout] test tests::strip_arg_for_recurses_into_obj_map ... ok [INFO] [stdout] test tests::top_tainted_offsets_empty_for_arg_placeholder ... ok [INFO] [stdout] test tests::taints_through_fetch_param_reads_the_fetch_flag_only ... ok [INFO] [stdout] test tests::shape_serde_roundtrips_through_obj_with_nested_cells ... ok [INFO] [stdout] test tests::tainted_at_handles_root_and_field_paths ... ok [INFO] [stdout] test tests::top_tainted_offsets_empty_for_whole_value_taint ... ok [INFO] [stdout] test tests::top_tainted_offsets_includes_only_tainted_subtrees ... ok [INFO] [stdout] test tests::top_tainted_offsets_walks_nested_obj_to_find_taint ... ok [INFO] [stdout] test tests::xtaint_serde_distinguishes_none_clean_and_tainted ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 66 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [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 stryx_cache [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 stryx_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 stryx_core [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests stryx_index [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 stryx_llm [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 stryx_reporter [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 stryx_rules [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test crates/stryx_rules/src/steps/propagators/transparent_method.rs - steps::propagators::transparent_method (line 14) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stderr] Doc-tests stryx_taint [INFO] [stdout] test crates/stryx_rules/src/steps/sanitizers/url_allowlist.rs - steps::sanitizers::url_allowlist (line 7) ... ignored [INFO] [stdout] test crates/stryx_rules/src/steps/sources/body.rs - steps::sources::body::is_search_params_member (line 121) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.30s; merged doctests compilation took 0.30s [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" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b", kill_on_drop: false }` [INFO] [stdout] a9f90ba4484a16ed50b3b3753d854c5450c7afdc8845ab3e6b5efce84f6f9d7b