[INFO] cloning repository https://github.com/AndreGejm/RTK-modified [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AndreGejm/RTK-modified" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndreGejm%2FRTK-modified", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndreGejm%2FRTK-modified'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0222e1c97089c161bf5f4f96c6ff660c43e15551 [INFO] testing AndreGejm/RTK-modified against 1.99.0-beta.8 for beta-1.100-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndreGejm%2FRTK-modified" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/AndreGejm/RTK-modified [INFO] finished tweaking git repo https://github.com/AndreGejm/RTK-modified [INFO] tweaked toml for git repo https://github.com/AndreGejm/RTK-modified written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/AndreGejm/RTK-modified on toolchain 1.99.0-beta.8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/AndreGejm/RTK-modified 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded webpki-roots v0.26.11 [INFO] [stderr] Downloaded which v8.0.1 [INFO] [stderr] Downloaded env_home v0.1.0 [INFO] [stderr] Downloaded hostname v0.4.2 [INFO] [stderr] Downloaded libredox v0.1.14 [INFO] [stderr] Downloaded automod v1.0.16 [INFO] [stderr] Downloaded clap_lex v1.0.0 [INFO] [stderr] Downloaded globset v0.4.18 [INFO] [stderr] Downloaded simd-adler32 v0.3.8 [INFO] [stderr] Downloaded tempfile v3.26.0 [INFO] [stderr] Downloaded clap_derive v4.5.55 [INFO] [stderr] Downloaded ignore v0.4.25 [INFO] [stderr] Downloaded clap v4.5.60 [INFO] [stderr] Downloaded zerocopy-derive v0.8.40 [INFO] [stderr] Downloaded cc v1.2.56 [INFO] [stderr] Downloaded rusqlite v0.31.0 [INFO] [stderr] Downloaded clap_builder v4.5.60 [INFO] [stderr] Downloaded quick-xml v0.37.5 [INFO] [stderr] Downloaded zerocopy v0.8.40 [INFO] [stderr] Downloaded winsafe v0.0.19 [INFO] [stderr] Downloaded bstr v1.12.1 [INFO] [stderr] Downloaded libc v0.2.182 [INFO] [stderr] Downloaded libsqlite3-sys v0.28.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373 [INFO] running `Command { std: "docker" "start" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373", 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" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373", 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" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "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 cfg-if v1.0.4 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling untrusted v0.9.0 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling simd-adler32 v0.3.8 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling clap_lex v1.0.0 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling webpki-roots v0.26.11 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling libsqlite3-sys v0.28.0 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling env_home v0.1.0 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling colored v2.2.0 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling hostname v0.4.2 [INFO] [stderr] Compiling quick-xml v0.37.5 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling which v8.0.1 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling rustls-webpki v0.103.9 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling automod v1.0.16 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling rtk v0.35.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling rusqlite v0.31.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling ureq v2.12.1 [INFO] [stdout] warning: unused imports: `CODEX_DIR`, `CURSOR_DIR`, `GEMINI_DIR`, `GEMINI_HOOK_FILE`, and `OPENCODE_PLUGIN_PATH` [INFO] [stdout] --> src/hooks/hook_check.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | CLAUDE_DIR, CODEX_DIR, CURSOR_DIR, GEMINI_DIR, GEMINI_HOOK_FILE, HOOKS_SUBDIR, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | OPENCODE_PLUGIN_PATH, REWRITE_HOOK_FILE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_sts_identity` is never used [INFO] [stdout] --> src/cmds/cloud/aws_cmd.rs:379:4 [INFO] [stdout] | [INFO] [stdout] 379 | fn run_sts_identity(extra_args: &[String], verbose: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPENCODE_PLUGIN_PATH` is never used [INFO] [stdout] --> src/hooks/constants.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const OPENCODE_PLUGIN_PATH: &str = ".config/opencode/plugins/rtk.ts"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CURSOR_DIR` is never used [INFO] [stdout] --> src/hooks/constants.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const CURSOR_DIR: &str = ".cursor"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CODEX_DIR` is never used [INFO] [stdout] --> src/hooks/constants.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const CODEX_DIR: &str = ".codex"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GEMINI_DIR` is never used [INFO] [stdout] --> src/hooks/constants.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const GEMINI_DIR: &str = ".gemini"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/main.rs:2031:62 [INFO] [stdout] | [INFO] [stdout] 2031 | libc::signal(libc::SIGINT, handle_signal as libc::sighandler_t); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 2031 | libc::signal(libc::SIGINT, handle_signal as *const () as libc::sighandler_t); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/main.rs:2032:63 [INFO] [stdout] | [INFO] [stdout] 2032 | libc::signal(libc::SIGTERM, handle_signal as libc::sighandler_t); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 2032 | libc::signal(libc::SIGTERM, handle_signal as *const () as libc::sighandler_t); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 14s [INFO] running `Command { std: "docker" "inspect" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373", 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" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling rtk v0.35.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: function `run_sts_identity` is never used [INFO] [stdout] --> src/cmds/cloud/aws_cmd.rs:379:4 [INFO] [stdout] | [INFO] [stdout] 379 | fn run_sts_identity(extra_args: &[String], verbose: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/main.rs:2031:62 [INFO] [stdout] | [INFO] [stdout] 2031 | libc::signal(libc::SIGINT, handle_signal as libc::sighandler_t); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 2031 | libc::signal(libc::SIGINT, handle_signal as *const () as libc::sighandler_t); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/main.rs:2032:63 [INFO] [stdout] | [INFO] [stdout] 2032 | libc::signal(libc::SIGTERM, handle_signal as libc::sighandler_t); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 2032 | libc::signal(libc::SIGTERM, handle_signal as *const () as libc::sighandler_t); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 21.18s [INFO] running `Command { std: "docker" "inspect" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373", 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" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] warning: function `run_sts_identity` is never used [INFO] [stderr] --> src/cmds/cloud/aws_cmd.rs:379:4 [INFO] [stderr] | [INFO] [stderr] 379 | fn run_sts_identity(extra_args: &[String], verbose: u8) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: direct cast of function item into an integer [INFO] [stderr] --> src/main.rs:2031:62 [INFO] [stderr] | [INFO] [stderr] 2031 | libc::signal(libc::SIGINT, handle_signal as libc::sighandler_t); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stderr] help: first cast to a pointer `as *const ()` [INFO] [stderr] | [INFO] [stderr] 2031 | libc::signal(libc::SIGINT, handle_signal as *const () as libc::sighandler_t); [INFO] [stderr] | ++++++++++++ [INFO] [stderr] [INFO] [stderr] warning: direct cast of function item into an integer [INFO] [stderr] --> src/main.rs:2032:63 [INFO] [stderr] | [INFO] [stderr] 2032 | libc::signal(libc::SIGTERM, handle_signal as libc::sighandler_t); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: first cast to a pointer `as *const ()` [INFO] [stderr] | [INFO] [stderr] 2032 | libc::signal(libc::SIGTERM, handle_signal as *const () as libc::sighandler_t); [INFO] [stderr] | ++++++++++++ [INFO] [stderr] [INFO] [stderr] warning: `rtk` (bin "rtk" test) generated 3 warnings (run `cargo fix --bin "rtk" -p rtk --tests` to apply 2 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.27s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rtk-a43670522c60c710) [INFO] [stdout] [INFO] [stdout] running 1371 tests [INFO] [stdout] test analytics::cc_economics::tests::test_compute_dual_metrics_no_ccusage_data ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_compute_dual_metrics_with_data ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_compute_weighted_input_cpt ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_compute_totals ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_compute_dual_metrics_zero_tokens ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_set_ccusage_stores_per_type_tokens ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_merge_monthly_both_present ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_compute_weighted_metrics_no_cache ... ok [INFO] [stdout] test analytics::ccusage::tests::test_parse_daily_valid ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_merge_monthly_sorted ... ok [INFO] [stdout] test analytics::ccusage::tests::test_parse_default_cache_fields ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_merge_monthly_only_ccusage ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_merge_monthly_only_rtk ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_compute_weighted_metrics_zero_tokens ... ok [INFO] [stdout] test analytics::gain::tests::test_format_evaluation_report_empty_db_shows_no_data_message ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_period_economics_new ... ok [INFO] [stdout] test analytics::gain::tests::test_format_evaluation_report_shows_core_counts ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_all_rtk ... ok [INFO] [stdout] test analytics::ccusage::tests::test_parse_monthly_valid ... ok [INFO] [stdout] test analytics::ccusage::tests::test_parse_weekly_valid ... ok [INFO] [stdout] test analytics::ccusage::tests::test_parse_malformed_json ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_adoption_pct_75_percent ... ok [INFO] [stdout] test analytics::cc_economics::tests::test_convert_saturday_to_monday ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_adoption_pct_zero_division ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_parse_jsonl_ignores_non_bash_tools ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_parse_jsonl_chained_command ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_chained_commands_split ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_cfn_describe_stacks_no_outputs ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_progress_bar_boundaries ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_dynamodb_ns_type_parsing ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_parse_empty_session ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_empty_commands ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_ec2_token_savings ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_unsupported_commands_not_counted ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_cfn_describe_stacks_with_outputs ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_dynamodb_n_type_parsing ... ok [INFO] [stdout] test analytics::ccusage::tests::test_parse_missing_required_fields ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_cfn_events ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_cfn_events_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_cfn_events_token_savings ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_cfn_list_stacks ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_get_item ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_get_item_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_get_item_no_item ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_cfn_events_failure_count_exceeds_max_items ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_cfn_events_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ec2_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_items ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_items_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_items_with_capacity ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_items_with_pagination ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ec2_no_name_tag ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_null_type ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_dynamodb_token_savings ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ec2_instances ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ec2_instances_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ecs_describe_services ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ecs_list_services ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_iam_roles_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ecs_tasks ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_iam_roles_token_savings ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_eks_cluster ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_iam_roles ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_iam_roles_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_eks_cluster_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ecs_tasks_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_lambda_get ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_logs_events_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_iam_users_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_logs_events ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_lambda_list ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_lambda_list_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_iam_users ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_lambda_get_no_layers ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_logs_query_results_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_logs_events_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_lambda_list_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_lambda_list_token_savings ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_ecs_tasks_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_logs_events_token_savings ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_logs_events_truncation ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_rds_instances ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_s3_ls_basic ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_logs_query_results ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_s3_ls_overflow ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_s3_objects_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_s3_transfer_short_output ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_s3_objects ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_s3_objects_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_s3_transfer_with_operations ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_secrets_get ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_secrets_get_plain_text ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_secrets_get_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_security_groups_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_security_groups_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_sqs_messages_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_sts_identity_missing_fields ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_snapshot_cfn_events_format ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_rds_overflow ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_snapshot_lambda_list_format ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_security_groups ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_snapshot_logs_events_format ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_security_groups_token_savings ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_sts_identity ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_sqs_messages ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_snapshot_sts_identity ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_sts_token_savings ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_sts_identity_invalid_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_snapshot_dynamodb_scan_format ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_snapshot_security_groups_format ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_compact_ports_single ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_build_basic ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_compact_ports_many ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_compact_ports_empty ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_snapshot_ec2_instances ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_ps_empty ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_logs_empty ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_ps_whitespace_only ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_ps_no_ports ... ok [INFO] [stdout] test cmds::cloud::curl_cmd::tests::test_filter_curl_json ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_build_empty ... ok [INFO] [stdout] test cmds::cloud::curl_cmd::tests::test_filter_curl_json_array ... ok [INFO] [stdout] test cmds::cloud::curl_cmd::tests::test_filter_curl_json_small_returns_original ... ok [INFO] [stdout] test cmds::cloud::curl_cmd::tests::test_filter_curl_non_json ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_sqs_messages_empty ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_ps_basic ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_ps_exited_service ... ok [INFO] [stdout] test cmds::cloud::curl_cmd::tests::test_filter_curl_long_output ... ok [INFO] [stdout] test cmds::cloud::aws_cmd::tests::test_filter_logs_query_results_empty ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_ps_long_image_path ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_expanded_basic ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_table_basic ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_expanded_overflow ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_expanded_token_savings ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_expanded_strips_row_count ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_psql_passthrough ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_table_overflow ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_is_expanded_format_detects_records ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_psql_routes_to_table ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_is_table_format_detects_separator ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_is_table_format_rejects_plain ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_snapshot_expanded_format ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_snapshot_table_format ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_psql_routes_to_expanded ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_compact_url_short_unchanged ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_table_strips_row_count ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_compact_url_strips_protocol ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_extract_filename_empty_url_fallback ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_compact_url_truncates_long_url ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_filter_table_empty ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_format_size_megabytes ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_format_size_zero ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_extract_filename_from_output_flag ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_extract_filename_from_url_fallback ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_format_size_bytes ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_format_size_kilobytes ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_table_token_savings ... ok [INFO] [stdout] test cmds::cloud::psql_cmd::tests::test_is_expanded_format_rejects_table ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_parse_error_unknown ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_parse_error_ssl ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_truncate_line_exact ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_parse_error_dns ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_parse_error_404 ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_truncate_line_long ... ok [INFO] [stdout] test cmds::cloud::wget_cmd::tests::test_truncate_line_short ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_is_likely_diagnostic_code_filters_framework_monikers ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_fails_when_binlog_is_unparseable ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_fails_when_binlog_missing ... ok [INFO] [stdout] test cmds::cloud::container::tests::test_format_compose_logs_basic ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_restore_fails_when_binlog_missing ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_extract_binary_like_issues_recovers_code_message_and_path ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_restore_from_text_extracts_project_count ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_restore_from_text_extracts_nuget_error_diagnostic ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_test_fails_when_binlog_missing ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_restore_issues_ignores_summary_warning_error_counts ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_from_text_extracts_issues ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_from_text_extracts_inline_warning_counts ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_from_text_extracts_warning_without_code ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_test_from_text_extracts_failure_summary ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_test_from_fixture_text ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_test_from_text_aggregates_multiple_project_summaries ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_test_from_text_keeps_multiline_failure_details ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_scrub_sensitive_env_vars_masks_values ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_test_reads_message_events ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_test_from_text_prefers_test_summary_duration_and_counts ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_select_best_issues_keeps_primary_when_context_is_good ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_test_from_text_ignores_non_test_failed_prefix_lines ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_sets_project_count_floor ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_both_mtp_properties_in_same_file_still_vstest_bridge ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_does_not_infer_binary_errors_on_successful_build ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_reads_structured_events ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_select_best_issues_prefers_fallback_when_primary_loses_context ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_detect_mode_directory_build_props_vstest_bridge ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_all_formatted ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_build_output_includes_errors_and_warnings ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_from_text_extracts_msbuild_global_error ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_cleanup_temp_file_removes_existing_file ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_needs_formatting ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_detect_mode_vstest_bridge_injects_report_trx ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_preserves_positional_project_argument_order ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_detect_mode_mtp_csproj_is_vstest_bridge_injects_report_trx ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_cleanup_temp_file_ignores_missing_file ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_detect_mode_classic_csproj_injects_trx ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_extract_results_directory_arg_detects_variants ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_parse_build_from_fixture_text ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_report_summary_uses_fresh_report_file ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_report_summary_ignores_stale_report_file ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_restore_output_success ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_test_output_handles_binlog_only_without_counts ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_temp_file_cleanup ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_restore_output_failure ... ok [INFO] [stdout] test cmds::dotnet::binlog::tests::test_scrub_sensitive_env_vars_masks_token_and_connection_values ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_restore_output_includes_error_details ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_forwarding_config_and_framework ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_test_output_shows_failures ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_test_output_surfaces_errors ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_user_report_arg_no_cleanup ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_format_test_output_surfaces_warnings ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_has_results_directory_arg_detects_variants ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_forwarding_args_with_spaces ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_is_global_json_mtp_mode_returns_false_for_vstest_runner ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_is_mtp_project_file_returns_false_for_classic_vstest ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_build_summaries_keeps_structured_issues_when_present ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_build_summaries_keeps_binlog_when_context_is_good ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_forwarding_project_file ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_test_summary_from_trx_keeps_larger_existing_counts ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_restore_summaries_prefers_raw_error_count ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_is_global_json_mtp_mode_detects_mtp_runner ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_forwarding_no_build_and_no_restore ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_test_summary_from_trx_uses_larger_project_count ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_test_summaries_keeps_structured_counts_and_fills_failed_tests ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_normalize_build_summary_sets_success_floor ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_test_summary_from_trx_falls_back_to_testresults ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_test_summary_from_trx_overrides_smaller_existing_counts ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_test_summary_from_trx_uses_primary_and_cleans_file ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_test_summary_from_trx_returns_default_when_no_trx ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_normalize_restore_summary_sets_error_floor_on_failed_command ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_parse_global_json_mtp_mode_detects_mtp_native ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_scan_mtp_kind_detects_use_testing_platform_runner ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_normalize_test_summary_sets_failure_floor ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_resolve_trx_results_dir_generated_directory_is_marked_for_cleanup ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_user_long_verbosity_override ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_test_subcommand_does_not_inject_minimal_verbosity_by_default ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_user_results_directory_prevents_extra_injection ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_user_trx_logger_does_not_duplicate ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_resolve_trx_results_dir_user_directory_is_not_marked_for_cleanup ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_merge_test_summary_from_trx_ignores_stale_fallback_file ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_scan_mtp_kind_detects_use_microsoft_testing_platform_runner ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_scan_mtp_kind_returns_none_when_value_is_false ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_trx_logger_and_results_directory_injected ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_user_logger_override ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_scan_mtp_kind_detects_vstest_bridge ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_vstest_bridge_injects_report_trx_after_separator ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_has_binlog_arg_detects_variants ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_user_verbose_override ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_vstest_bridge_existing_separator_inserts_report_trx_after_it ... ok [INFO] [stdout] test cmds::dotnet::dotnet_format_report::tests::test_parse_format_report_all_formatted ... ok [INFO] [stdout] test cmds::dotnet::dotnet_format_report::tests::test_parse_format_report_empty ... ok [INFO] [stdout] test cmds::dotnet::dotnet_format_report::tests::test_parse_format_report_with_changes ... ok [INFO] [stdout] test cmds::dotnet::dotnet_cmd::tests::test_vstest_bridge_respects_existing_report_trx ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_parse_trx_content_extracts_failed_tests_when_attribute_order_varies ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_find_recent_trx_in_dir_returns_none_when_missing ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_parse_trx_content_extracts_failed_tests_with_details ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_parse_trx_content_extracts_counters_when_attribute_order_varies ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_parse_trx_files_in_dir_aggregates_counts_and_wall_clock_duration ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_compute_diff_empty_inputs ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_compute_diff_modified_line ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_compute_diff_removed_lines ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_condense_unified_diff_empty ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_parse_trx_files_in_dir_since_handles_uppercase_extension ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_compute_diff_identical ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_condense_unified_diff_multiple_files ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_parse_trx_content_extracts_passed_counts ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_parse_trx_content_returns_none_for_invalid_xml ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_long_lines_not_truncated ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_condense_unified_diff_no_false_overflow ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_compute_diff_added_lines ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_find_recent_trx_in_dir_ignores_non_trx_files ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_condense_unified_diff_overflow_count_accuracy ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_similarity_identical ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_similarity_completely_different ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_condense_unified_diff_single_file ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_similarity_empty_strings ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_compute_diff_completely_different_line ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_find_recent_trx_in_dir_picks_newest_trx ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_no_truncation_large_diff ... ok [INFO] [stdout] test cmds::dotnet::dotnet_trx::tests::test_parse_trx_files_in_dir_since_ignores_older_files ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_with_long_repo_flag ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_with_job_flag_after ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_with_job_and_log_failed ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_only_flags ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_similarity_partial_overlap ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_simple ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_with_web_flag ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_with_attempt_flag ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_with_job_flag_before ... ok [INFO] [stdout] test cmds::git::diff_cmd::tests::test_similarity_threshold_for_modified ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_empty ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_with_repo_flag_before ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_with_repo_flag_after ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_extract_identifier_empty ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_has_json_flag_absent ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_has_json_flag_present ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_non_diff_format_flag_absent ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_non_diff_format_flag_name_only ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_non_diff_format_flag_name_status ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_non_diff_format_flag_numstat ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_non_diff_format_flag_regular_args ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_non_diff_format_flag_shortstat ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_horizontal_rules ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_meaningful_content_preserved ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_non_diff_format_flag_stat ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_blank_lines_collapse ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_image_only_lines ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_html_comment_multiline ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_code_block_preserved ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_badge_lines ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_html_comment_single_line ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_run_view_no_passthrough_empty ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_run_view_no_passthrough_other_flags ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_run_view_passthrough_log_failed ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_ok_confirmation_pr_edit ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_issue_view_comments ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_ok_confirmation_pr_comment ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_ok_confirmation_pr_merge ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_issue_view_default ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_ok_confirmation_pr_create ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_issue_view_jq ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_run_view_passthrough_json ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_pr_view_jq ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_filter_markdown_body_token_savings ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_pr_view_json ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_issue_view_json ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_issue_view_web ... ok [INFO] [stdout] test cmds::git::git::tests::test_branch_creation_from_commit ... ignored [INFO] [stdout] test cmds::git::git::tests::test_branch_creation_not_swallowed ... ignored [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_pr_view_comments ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_truncate_empty_and_short ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_truncate_multibyte_utf8 ... ok [INFO] [stdout] test cmds::git::git::tests::test_compact_diff ... ok [INFO] [stdout] test cmds::git::git::tests::test_compact_diff_hunk_truncation_count_accurate ... ok [INFO] [stdout] test cmds::git::git::tests::test_compact_diff_increased_hunk_limit ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_truncate ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_pr_view_default ... ok [INFO] [stdout] test cmds::git::git::tests::test_compact_diff_increased_total_limit ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_should_passthrough_pr_view_web ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_branch_no_remotes ... ok [INFO] [stdout] test cmds::git::git::tests::test_commit_am_flag ... ok [INFO] [stdout] test cmds::git::git::tests::test_commit_single_message ... ok [INFO] [stdout] test cmds::git::git::tests::test_commit_amend ... ok [INFO] [stdout] test cmds::git::git::tests::test_commit_multiple_messages ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_branch_output ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_body_omission_indicator ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_truncate_long ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_user_format_oneline ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_user_format_with_limit ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_user_limit_no_cap ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_emoji ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_cap_lines ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_skips_trailers ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_multibyte ... ok [INFO] [stdout] test cmds::git::gh_cmd::tests::test_run_view_passthrough_log ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_with_body ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_user_limit_wider_truncation ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_stash_list ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_status_with_args ... ok [INFO] [stdout] test cmds::git::git::tests::test_compact_diff_preserves_full_hunk_header_context ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_status_with_args_clean ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output_token_savings ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_worktree_list ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_output_clean ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_output_emoji_filename ... ok [INFO] [stdout] test cmds::git::git::tests::test_compact_diff_recovery_hint_present ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_output_thai_filename ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_output_modified_files ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_output_truncation ... ok [INFO] [stdout] test cmds::git::git::tests::test_git_cmd_no_global_args ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_output_mixed_changes ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_output_untracked_files ... ok [INFO] [stdout] test cmds::git::git::tests::test_git_status_not_a_repo_exits_nonzero ... ignored [INFO] [stdout] test cmds::git::git::tests::test_format_status_untracked_truncation ... ok [INFO] [stdout] test cmds::git::git::tests::test_git_cmd_with_directory ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_modified_truncation ... ok [INFO] [stdout] test cmds::git::git::tests::test_filter_log_output ... ok [INFO] [stdout] test cmds::git::git::tests::test_format_status_overflow_count_exact ... ok [INFO] [stdout] test cmds::git::git::tests::test_parse_user_limit_max_count_eq ... ok [INFO] [stdout] test cmds::git::git::tests::test_parse_user_limit_none ... ok [INFO] [stdout] test cmds::git::git::tests::test_git_cmd_with_multiple_global_args ... ok [INFO] [stdout] test cmds::git::git::tests::test_is_blob_show_arg ... ok [INFO] [stdout] test cmds::git::git::tests::test_run_passthrough_accepts_args ... ok [INFO] [stdout] test cmds::git::git::tests::test_parse_user_limit_combined ... ok [INFO] [stdout] test cmds::git::git::tests::test_git_cmd_with_boolean_flags ... ok [INFO] [stdout] test cmds::git::git::tests::test_parse_user_limit_max_count_space ... ok [INFO] [stdout] test cmds::git::git::tests::test_parse_user_limit_n_space ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_create_empty ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_log_empty ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_create_no_branch_name ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_restack ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_log_exact_format ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_log_long ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_restack_empty ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_submit_empty ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_log_pre_stripped_input ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_restack_token_savings ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_log_token_savings ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_restack_exact_format ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_sync_empty ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_log_truncation ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_sync_no_deletes ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_create_token_savings ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_extract_branch_name ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_create ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_sync_token_savings ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_sync ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_create_exact_format ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_sync_exact_format ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_compact_package_name ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_build_preserves_module_root_and_workspace_errors ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_build_success ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_test_all_pass ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_test_preserves_file_location_and_followup_context ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_build_errors ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_build_ignores_download_lines_with_error_in_package_names ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_vet_no_issues ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_build_preserves_go_config_parse_errors ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_has_golangci_format_flag_v1 ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_has_golangci_format_flag_v2 ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_vet_with_issues ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_has_golangci_format_flag_absent ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_match_go_tool_golangci_lint ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_is_graph_node ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_match_go_tool_bare ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_build_preserves_non_file_error_shapes ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_compact_path ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_submit_with_urls ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_filter_golangci_v2_fields_parse_cleanly ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_match_go_tool_rejects_unknown ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_filter_v1_does_not_show_source_lines ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_filter_golangci_no_issues ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_filter_v2_empty_source_lines_graceful ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_filter_v2_shows_source_lines ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_filter_golangci_with_issues ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_filter_v2_source_line_truncated_to_80_chars ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_parse_version_v1_format ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_parse_version_v2_format ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_is_go_build_error_line_recognizes_real_compiler_errors ... ok [INFO] [stdout] test cmds::go::go_cmd::tests::test_filter_go_test_with_failures ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_parse_version_malformed_returns_1 ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_filter_v2_source_line_truncated_non_ascii ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_detect_linter_after_npx_strip ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_detect_linter_after_pnpm_exec_strip ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_detect_linter_default_on_path ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_detect_linter_eslint ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_parse_version_empty_returns_1 ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_filter_eslint_json ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_filter_pylint_json_no_issues ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_submit_exact_format ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_strip_pm_prefix_bunx ... ok [INFO] [stdout] test cmds::git::gt_cmd::tests::test_filter_gt_submit_token_savings ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_strip_pm_prefix_empty ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_strip_pm_prefix_pnpm_exec ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_filter_pylint_json_with_issues ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_is_python_linter ... ok [INFO] [stdout] test cmds::go::golangci_cmd::tests::test_golangci_v2_token_savings ... ok [INFO] [stdout] test cmds::js::npm_cmd::tests::test_filter_npm_output_empty ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_compact_path ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_detect_linter_default_on_flag ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_strip_pm_prefix_none ... ok [INFO] [stdout] test cmds::js::npm_cmd::tests::test_npm_subcommand_routing ... ok [INFO] [stdout] test cmds::js::lint_cmd::tests::test_strip_pm_prefix_npx ... ok [INFO] [stdout] test cmds::js::playwright_cmd::tests::test_playwright_parser_json ... ok [INFO] [stdout] test cmds::js::pnpm_cmd::tests::test_pnpm_list_parser_json ... ok [INFO] [stdout] test cmds::js::pnpm_cmd::tests::test_package_name_validation ... ok [INFO] [stdout] test cmds::js::prettier_cmd::tests::test_filter_all_formatted ... ok [INFO] [stdout] test cmds::js::playwright_cmd::tests::test_playwright_parser_json_float_duration ... ok [INFO] [stdout] test cmds::js::playwright_cmd::tests::test_playwright_parser_json_with_failure ... ok [INFO] [stdout] test cmds::js::prettier_cmd::tests::test_filter_empty_output ... ok [INFO] [stdout] test cmds::js::next_cmd::tests::test_extract_time ... ok [INFO] [stdout] test cmds::js::pnpm_cmd::tests::test_pnpm_outdated_parser_json ... ok [INFO] [stdout] test cmds::js::pnpm_cmd::tests::test_run_passthrough_accepts_args ... ok [INFO] [stdout] test cmds::js::npm_cmd::tests::test_filter_npm_output ... ok [INFO] [stdout] test cmds::js::prisma_cmd::tests::test_filter_generate ... ok [INFO] [stdout] test cmds::js::prettier_cmd::tests::test_filter_whitespace_only_output ... ok [INFO] [stdout] test cmds::js::prisma_cmd::tests::test_filter_migrate_dev ... ok [INFO] [stdout] test cmds::js::prettier_cmd::tests::test_filter_files_need_formatting ... ok [INFO] [stdout] test cmds::js::prettier_cmd::tests::test_filter_many_files ... ok [INFO] [stdout] test cmds::js::prisma_cmd::tests::test_extract_number ... ok [INFO] [stdout] test cmds::js::vitest_cmd::tests::test_strip_ansi ... ok [INFO] [stdout] test cmds::js::vitest_cmd::tests::test_vitest_parser_json ... ok [INFO] [stdout] test cmds::js::tsc_cmd::tests::test_filter_no_errors ... ok [INFO] [stdout] test cmds::js::tsc_cmd::tests::test_every_error_message_shown ... ok [INFO] [stdout] test cmds::js::playwright_cmd::tests::test_playwright_parser_passthrough ... ok [INFO] [stdout] test cmds::js::tsc_cmd::tests::test_continuation_lines_preserved ... ok [INFO] [stdout] test cmds::js::tsc_cmd::tests::test_no_file_limit ... ok [INFO] [stdout] test cmds::js::tsc_cmd::tests::test_filter_tsc_output ... ok [INFO] [stdout] test cmds::js::next_cmd::tests::test_filter_next_build ... ok [INFO] [stdout] test cmds::js::vitest_cmd::tests::test_vitest_parser_with_pnpm_prefix ... ok [INFO] [stdout] test cmds::js::vitest_cmd::tests::test_vitest_parser_with_dotenv_prefix ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_no_errors ... ok [INFO] [stdout] test cmds::js::vitest_cmd::tests::test_vitest_parser_with_nested_json ... ok [INFO] [stdout] test cmds::js::playwright_cmd::tests::test_playwright_parser_regex_fallback ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_single_code_no_summary ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_every_error_shown ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_top_codes_summary ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_with_column_numbers ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_fileless_errors ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_errors_grouped_by_file ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_no_file_limit ... ok [INFO] [stdout] test cmds::python::pip_cmd::tests::test_filter_pip_list ... ok [INFO] [stdout] test cmds::python::pip_cmd::tests::test_filter_pip_list_empty ... ok [INFO] [stdout] test cmds::python::pip_cmd::tests::test_filter_pip_outdated_none ... ok [INFO] [stdout] test cmds::python::pytest_cmd::tests::test_filter_pytest_all_pass ... ok [INFO] [stdout] test cmds::python::pytest_cmd::tests::test_filter_pytest_multiple_failures ... ok [INFO] [stdout] test cmds::python::pytest_cmd::tests::test_filter_pytest_no_tests ... ok [INFO] [stdout] test cmds::python::ruff_cmd::tests::test_filter_ruff_check_no_issues ... ok [INFO] [stdout] test cmds::python::mypy_cmd::tests::test_filter_mypy_note_continuation ... ok [INFO] [stdout] test cmds::python::ruff_cmd::tests::test_filter_ruff_check_with_issues ... ok [INFO] [stdout] test cmds::python::ruff_cmd::tests::test_filter_ruff_format_all_formatted ... ok [INFO] [stdout] test cmds::python::ruff_cmd::tests::test_filter_ruff_format_needs_formatting ... ok [INFO] [stdout] test cmds::python::pip_cmd::tests::test_filter_pip_outdated_some ... ok [INFO] [stdout] test cmds::python::pytest_cmd::tests::test_filter_pytest_with_failures ... ok [INFO] [stdout] test cmds::python::pytest_cmd::tests::test_parse_summary_line ... ok [INFO] [stdout] test cmds::python::ruff_cmd::tests::test_compact_path ... ok [INFO] [stdout] test cmds::js::vitest_cmd::tests::test_vitest_parser_passthrough ... ok [INFO] [stdout] test cmds::js::vitest_cmd::tests::test_vitest_parser_regex_fallback ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_filter_minitest_empty ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_filter_minitest_reporters_format ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_looks_like_test_path ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_parse_minitest_summary ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_select_runner_flags_not_counted_as_files ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_select_runner_multiple_with_line_numbers ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_filter_minitest_skip ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_select_runner_no_files_uses_rake ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_select_runner_line_number_uses_rails ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_token_savings ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_filter_minitest_with_errors ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_filter_minitest_with_ansi ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_all_pass ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_select_runner_single_file_uses_rake ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_select_runner_single_positional_file_uses_rails ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_select_runner_multiple_files_uses_rails ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_select_runner_non_test_subcommand_uses_rake ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_filter_minitest_multiple_failures ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_filter_minitest_all_pass ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_errors_outside_examples ... ok [INFO] [stdout] test cmds::ruby::rake_cmd::tests::test_filter_minitest_with_failures ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_exception_class_shortened ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_many_failures_caps_at_five ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_empty_output ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_no_examples ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_backtrace_filters_gems ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_text_fallback_extracts_failures ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_text_many_failures_caps_at_five ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_with_pending ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_text_header_to_failed_examples ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_has_format_flag_long ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_has_format_flag_none ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_with_failures ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_has_format_flag_short_combined ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_has_format_flag_equals ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_token_savings_all_pass ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_ansi_wrapped_json ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_strip_noise_spring ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_token_savings_with_failures ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_compact_ruby_path ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_strip_noise_finished_in ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_strip_noise_capybara_screenshot ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_strip_noise_deprecation ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_caps_at_ten_files ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_text_fallback ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_caps_offenses_per_file ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_strip_noise_simplecov ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_text_fallback_no_summary ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_token_savings_text_fallback ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_empty_output ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_invalid_json_falls_back ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_text_autocorrect ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_text_bundler_error ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_correctable_hint ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_severity_ordering ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_text_fallback ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_json_with_ansi_prefix ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_text_with_offenses ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_no_offenses ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_text_load_error ... ok [INFO] [stdout] test cmds::ruby::rspec_cmd::tests::test_filter_rspec_invalid_json_falls_back ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_severity_rank ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_already_installed ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_build_success ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_clippy_clean ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_clippy_includes_error_details ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_from_path ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_clippy_warnings ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_token_savings ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_build_errors ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_locking_and_blocking ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_multiple_errors ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_with_offenses_per_file ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_error ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_up_to_date ... ok [INFO] [stdout] test cmds::ruby::rubocop_cmd::tests::test_filter_rubocop_within_file_line_ordering ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_empty_output ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_path_warning ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_replace ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_install_success ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_empty ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_cancellation_notice ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_multiple_binaries ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_with_failures ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_with_skipped ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_failures ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_single_failure_detail ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_summary_regex_fallback ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_compile_error_preserves_error_header ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_all_pass ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_nextest_compilation_stripped ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_format_crate_info ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_multi_suite_with_failures ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_restore_double_dash_clippy_with_package_flags ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_restore_double_dash_empty_args ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_restore_double_dash_with_test_name ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_restore_double_dash_without_separator ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_restore_double_dash_with_separator ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_is_cloud_var ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_is_cloud_var_negative ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_is_interesting_var ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_restore_double_dash_clippy ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_is_interesting_var_negative ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_is_lang_var_negative ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_is_tool_var ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_mask_value_exactly_four ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_mask_value_long ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_is_lang_var_rust ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_mask_value_five_chars ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_regex_fallback ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::dot_becomes_star ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_sensitive_patterns_contains_keys ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_with_ignored_and_filtered ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_single_suite_compact ... ok [INFO] [stdout] test cmds::rust::runner::tests::test_filter_errors ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_all_pass ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_all_suites_zero_tests ... ok [INFO] [stdout] test cmds::rust::cargo_cmd::tests::test_filter_cargo_test_multi_suite_all_pass ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::glob_match_exact ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::glob_match_complex ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::glob_match_star_rs ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::glob_match_question_mark ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::glob_match_star_all ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_iname ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_maxdepth ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_name_is_case_sensitive ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_empty_args ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_rejects_exec ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_rejects_not ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_type_d ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_name_and_type ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_rtk_syntax_pattern_and_path ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_name ... ok [INFO] [stdout] test cmds::system::env_cmd::tests::test_mask_value_short ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_rtk_syntax_pattern_only ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_native_find_no_path ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::parse_rtk_syntax_with_flags ... ok [INFO] [stdout] test cmds::system::format_cmd::tests::test_compact_path ... ok [INFO] [stdout] test cmds::system::format_cmd::tests::test_detect_formatter_from_explicit_arg ... ok [INFO] [stdout] test cmds::system::format_cmd::tests::test_detect_formatter_from_package_json ... ok [INFO] [stdout] test cmds::system::format_cmd::tests::test_detect_formatter_from_pyproject_black ... ok [INFO] [stdout] test cmds::system::format_cmd::tests::test_detect_formatter_from_pyproject_ruff ... ok [INFO] [stdout] test cmds::system::format_cmd::tests::test_filter_black_all_formatted ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_bre_alternation_translated ... ok [INFO] [stdout] test cmds::system::format_cmd::tests::test_filter_black_needs_formatting ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_clean_line_emoji ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_clean_line_multibyte ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_clean_line ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_compact_path ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_extra_args_accepted ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_grep_overflow_uses_uncapped_total ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_recursive_flag_stripped ... ok [INFO] [stdout] test cmds::system::grep_cmd::tests::test_rg_always_has_line_numbers ... ok [INFO] [stdout] test cmds::system::json_cmd::tests::test_cargo_toml_suggests_deps ... ok [INFO] [stdout] test cmds::system::json_cmd::tests::test_extract_schema_array ... ok [INFO] [stdout] test cmds::system::json_cmd::tests::test_extract_schema_simple ... ok [INFO] [stdout] test cmds::system::json_cmd::tests::test_json_file_accepted ... ok [INFO] [stdout] test cmds::system::json_cmd::tests::test_no_extension_accepted ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::find_rs_files_in_src ... ok [INFO] [stdout] test cmds::system::json_cmd::tests::test_toml_file_rejected ... ok [INFO] [stdout] test cmds::system::json_cmd::tests::test_unknown_extension_accepted ... ok [INFO] [stdout] test cmds::system::json_cmd::tests::test_yaml_file_rejected ... ok [INFO] [stdout] test cmds::system::log_cmd::tests::test_analyze_logs ... ok [INFO] [stdout] test cmds::system::local_llm::tests::test_python_analysis ... ok [INFO] [stdout] test cmds::system::ls::tests::test_compact_basic ... ok [INFO] [stdout] test cmds::system::ls::tests::test_compact_empty ... ok [INFO] [stdout] test cmds::system::ls::tests::test_compact_filters_noise ... ok [INFO] [stdout] test cmds::system::log_cmd::tests::test_analyze_logs_multibyte ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_parse_jsonl_session_and_count ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_hook_rewritten_commands ... ok [INFO] [stdout] test cmds::system::local_llm::tests::test_rust_analysis ... ok [INFO] [stdout] test cmds::system::ls::tests::test_compact_symlinks ... ok [INFO] [stdout] test cmds::system::ls::tests::test_compact_handles_filenames_with_spaces ... ok [INFO] [stdout] test cmds::system::ls::tests::test_entries_no_summary ... ok [INFO] [stdout] test cmds::system::ls::tests::test_compact_show_all ... ok [INFO] [stdout] test cmds::system::ls::tests::test_human_size ... ok [INFO] [stdout] test cmds::system::ls::tests::test_compact_summary ... ok [INFO] [stdout] test cmds::system::ls::tests::test_pipe_line_count ... ok [INFO] [stdout] test cmds::system::read::tests::test_read_stdin_dedup_warning ... ignored [INFO] [stdout] test cmds::system::read::tests::test_read_two_valid_files_concatenated ... ignored [INFO] [stdout] test cmds::system::read::tests::test_read_valid_and_nonexistent ... ignored [INFO] [stdout] test cmds::system::read::tests::test_stdin_support_signature ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::find_gitignored_excluded ... ok [INFO] [stdout] test cmds::system::read::tests::test_apply_line_window_tail_lines ... ok [INFO] [stdout] test cmds::system::read::tests::test_apply_line_window_tail_lines_no_trailing_newline ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_chained_with_semicolon ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_mixed_explicit_and_hook ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_chained_all_supported ... ok [INFO] [stdout] test analytics::session_cmd::tests::test_count_chained_no_false_inflation ... ok [INFO] [stdout] test cmds::system::tree::tests::test_filter_removes_summary ... ok [INFO] [stdout] test cmds::system::tree::tests::test_noise_dirs_constant ... ok [INFO] [stdout] test cmds::system::tree::tests::test_filter_preserves_structure ... ok [INFO] [stdout] test cmds::system::tree::tests::test_filter_removes_trailing_empty_lines ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_deep_common_prefix ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_common_prefix ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_detect_mode_full ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_detect_mode_lines ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_detect_mode_mixed ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_detect_mode_separate_flags ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_empty ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_multi_file_lines ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_multi_file_full ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_no_common_prefix ... ok [INFO] [stdout] test core::config::tests::test_config_without_hooks_section_is_valid ... ok [INFO] [stdout] test core::config::tests::test_evaluation_config_default_disabled ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_single_file_lines_only ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_single_file_full ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_stdin_full ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_stdin_lines ... ok [INFO] [stdout] test cmds::system::wc_cmd::tests::test_single_file_words_only ... ok [INFO] [stdout] test core::config::tests::test_evaluation_config_deserializes ... ok [INFO] [stdout] test cmds::system::read::tests::test_apply_line_window_max_lines_still_works ... ok [INFO] [stdout] test core::config::tests::test_legacy_config_without_evaluation_section_defaults_disabled ... ok [INFO] [stdout] test core::display_helpers::tests::test_month_stats_trait ... ok [INFO] [stdout] test core::config::tests::test_evaluation_enabled_override_is_thread_local ... ok [INFO] [stdout] test core::display_helpers::tests::test_day_stats_trait ... ok [INFO] [stdout] test cmds::system::tree::tests::test_filter_handles_empty ... ok [INFO] [stdout] test core::display_helpers::tests::test_print_period_table_empty ... ok [INFO] [stdout] test cmds::system::tree::tests::test_filter_summary_variations ... ok [INFO] [stdout] test core::config::tests::test_hooks_config_deserialize ... ok [INFO] [stdout] test core::display_helpers::tests::test_print_period_table_with_data ... ok [INFO] [stdout] test core::config::tests::test_hooks_config_default_empty ... ok [INFO] [stdout] test core::filter::tests::test_json_aggressive_filter_preserves_structure ... ok [INFO] [stdout] test core::filter::tests::test_json_no_comment_stripping ... ok [INFO] [stdout] test core::filter::tests::test_language_detection ... ok [INFO] [stdout] test core::display_helpers::tests::test_week_stats_trait ... ok [INFO] [stdout] test core::filter::tests::test_filter_level_parsing ... ok [INFO] [stdout] test core::tee::tests::test_force_tee_hint_skip_small_output ... ok [INFO] [stdout] test core::tee::tests::test_force_tee_hint_respects_env_disable ... ok [INFO] [stdout] test core::tee::tests::test_format_hint ... ok [INFO] [stdout] test core::tee::tests::test_sanitize_slug ... ok [INFO] [stdout] test core::tee::tests::test_should_tee_disabled ... ok [INFO] [stdout] test core::tee::tests::test_should_tee_never_mode ... ok [INFO] [stdout] test core::filter::tests::test_language_detection_data_formats ... ok [INFO] [stdout] test core::tee::tests::test_should_tee_proceed_on_failure ... ok [INFO] [stdout] test core::tee::tests::test_should_tee_always_mode_success ... ok [INFO] [stdout] test cmds::system::read::tests::test_read_rust_file ... ok [INFO] [stdout] test core::tee::tests::test_should_tee_skip_small_output ... ok [INFO] [stdout] test core::tee::tests::test_should_tee_skip_success_in_failures_mode ... ok [INFO] [stdout] test core::filter::tests::test_smart_truncate_overflow_count_exact ... ok [INFO] [stdout] test core::tee::tests::test_cleanup_old_files ... ok [INFO] [stdout] test core::tee::tests::test_tee_config_default ... ok [INFO] [stdout] test core::telemetry::tests::test_install_method_unix_paths ... ok [INFO] [stdout] test core::tee::tests::test_tee_config_deserialize ... ok [INFO] [stdout] test core::tee::tests::test_tee_mode_serde ... ok [INFO] [stdout] test core::telemetry::tests::test_device_hash_is_valid_hex ... ok [INFO] [stdout] test core::telemetry::tests::test_detect_install_method_returns_known_value ... ok [INFO] [stdout] test core::tee::tests::test_write_tee_file_creates_file ... ok [INFO] [stdout] test core::telemetry::tests::test_device_hash_is_stable ... ok [INFO] [stdout] test core::filter::tests::test_minimal_filter_removes_comments ... ok [INFO] [stdout] test core::tee::tests::test_write_tee_file_truncation ... ok [INFO] [stdout] test core::telemetry::tests::test_install_method_windows_paths ... ok [INFO] [stdout] test core::telemetry::tests::test_random_salt_uniqueness ... ok [INFO] [stdout] test core::telemetry::tests::test_get_stats_returns_tuple ... ok [INFO] [stdout] test core::toml_filter::tests::test_builtin_toml_has_schema_version ... ok [INFO] [stdout] test core::toml_filter::tests::test_filters_without_tests_detected ... ok [INFO] [stdout] test core::telemetry::tests::test_salt_file_path_is_in_rtk_dir ... ok [INFO] [stdout] test core::telemetry::tests::test_marker_path_exists ... ok [INFO] [stdout] test core::telemetry::tests::test_salt_is_persisted ... ok [INFO] [stdout] test core::toml_filter::tests::test_empty_input ... ok [INFO] [stdout] test core::toml_filter::tests::test_find_filter_matches_terraform ... ok [INFO] [stdout] test core::toml_filter::tests::test_empty_filter_passthrough ... ok [INFO] [stdout] test core::toml_filter::tests::test_find_filter_no_match_returns_none ... ok [INFO] [stdout] test core::toml_filter::tests::test_head_lines ... ok [INFO] [stdout] test core::toml_filter::tests::test_invalid_regex_returns_err ... ok [INFO] [stdout] test core::toml_filter::tests::test_keep_lines_matching_basic ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::find_respects_max ... ok [INFO] [stdout] test core::toml_filter::tests::test_head_and_tail_combined ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_invalid_regex_rejected ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_basic_short_circuit ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_second_rule_matches ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_no_match_pipeline_continues ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_no_match_then_on_empty ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_strip_ansi_before_match ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_unless_blocks_short_circuit_when_errors_present ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_unless_falls_through_to_next_rule ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_unless_invalid_regex_rejected ... ok [INFO] [stdout] test core::toml_filter::tests::test_mutual_exclusion_strip_keep_errors ... ok [INFO] [stdout] test core::toml_filter::tests::test_full_pipeline_order ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_unless_no_field_behaves_like_before ... ok [INFO] [stdout] test core::toml_filter::tests::test_on_empty_not_triggered_when_output_remains ... ok [INFO] [stdout] test core::toml_filter::tests::test_match_output_unless_allows_short_circuit_when_no_errors ... ok [INFO] [stdout] test core::toml_filter::tests::test_max_lines_counts_omit_message ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::find_no_matches ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::find_dot_pattern_works ... ok [INFO] [stdout] test core::toml_filter::tests::test_replace_basic_all_occurrences ... ok [INFO] [stdout] test core::toml_filter::tests::test_replace_invalid_regex_rejected ... ok [INFO] [stdout] test core::toml_filter::tests::test_replace_empty_input_noop ... ok [INFO] [stdout] test core::toml_filter::tests::test_run_filter_tests_passes_on_correct_expected ... ok [INFO] [stdout] test core::toml_filter::tests::test_replace_chaining_sequential ... ok [INFO] [stdout] test core::toml_filter::tests::test_replace_then_strip_interaction ... ok [INFO] [stdout] test core::toml_filter::tests::test_on_empty_when_all_filtered ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::run_from_args_rtk_syntax ... ok [INFO] [stdout] test core::toml_filter::tests::test_strip_ansi_removes_codes ... ok [INFO] [stdout] test core::toml_filter::tests::test_schema_version_mismatch_errors ... ok [INFO] [stdout] test core::toml_filter::tests::test_strip_lines_matching_basic ... ok [INFO] [stdout] test core::toml_filter::tests::test_run_filter_tests_fails_on_wrong_expected ... ok [INFO] [stdout] test core::toml_filter::tests::test_tail_lines ... ok [INFO] [stdout] test core::toml_filter::tests::test_unicode_preserved ... ok [INFO] [stdout] test core::tracking::tests::test_args_display ... ok [INFO] [stdout] test core::tracking::tests::test_custom_db_path_env ... ok [INFO] [stdout] test core::toml_filter::tests::test_truncate_lines_at_unicode_safe ... ok [INFO] [stdout] test core::toml_filter::tests::test_unknown_field_typo_errors ... ok [INFO] [stdout] test core::tracking::tests::test_default_db_path ... ok [INFO] [stdout] test core::tracking::tests::test_estimate_tokens ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::run_from_args_iname_case_insensitive ... ok [INFO] [stdout] test core::tracking::tests::test_project_filter_params_glob_pattern ... ok [INFO] [stdout] test core::tracking::tests::test_project_filter_params_none ... ok [INFO] [stdout] test core::tracking::tests::test_project_filter_params_underscore_safe ... ok [INFO] [stdout] test core::tracking::tests::test_evaluation_summary_rejects_unknown_outcome ... ok [INFO] [stdout] test core::toml_filter::tests::test_replace_backreferences ... ok [INFO] [stdout] test cmds::system::find_cmd::tests::run_from_args_native_find_syntax ... ok [INFO] [stdout] test core::tracking::tests::test_parse_failure_roundtrip ... ok [INFO] [stdout] test core::tracking::tests::test_parse_failure_recovery_rate ... ok [INFO] [stdout] test core::tracking::tests::test_evaluation_summary_rejects_invalid_timestamp ... ok [INFO] [stdout] test core::tracking::tests::test_evaluation_summary_filtered_uses_literal_project_prefix ... ok [INFO] [stdout] test core::tracking::tests::test_record_evaluation_event_roundtrip ... ok [INFO] [stdout] test core::tracking::tests::test_track_passthrough_no_dilution ... ok [INFO] [stdout] test core::utils::tests::test_count_tokens_basic ... ok [INFO] [stdout] test core::utils::tests::test_count_tokens_empty ... ok [INFO] [stdout] test core::utils::tests::test_count_tokens_multiple_spaces ... ok [INFO] [stdout] test core::utils::tests::test_detect_package_manager_default ... ok [INFO] [stdout] test core::utils::tests::test_format_cpt_edge_cases ... ok [INFO] [stdout] test core::utils::tests::test_format_cpt_normal ... ok [INFO] [stdout] test core::utils::tests::test_format_tokens_millions ... ok [INFO] [stdout] test core::utils::tests::test_format_tokens_small ... ok [INFO] [stdout] test core::utils::tests::test_format_tokens_thousands ... ok [INFO] [stdout] test core::utils::tests::test_format_usd_edge ... ok [INFO] [stdout] test core::utils::tests::test_format_usd_large ... ok [INFO] [stdout] test core::utils::tests::test_format_usd_medium ... ok [INFO] [stdout] test core::utils::tests::test_format_usd_small ... ok [INFO] [stdout] test core::utils::tests::test_human_bytes_bytes ... ok [INFO] [stdout] test core::utils::tests::test_human_bytes_gb ... ok [INFO] [stdout] test core::utils::tests::test_human_bytes_kb ... ok [INFO] [stdout] test core::utils::tests::test_human_bytes_mb ... ok [INFO] [stdout] test core::utils::tests::test_human_bytes_tb ... ok [INFO] [stdout] test core::tracking::tests::test_timed_execution_passthrough ... ok [INFO] [stdout] test core::utils::tests::test_ok_confirmation_no_detail ... ok [INFO] [stdout] test core::utils::tests::test_ok_confirmation_with_detail ... ok [INFO] [stdout] test core::utils::tests::test_resolve_binary_finds_known_command ... ok [INFO] [stdout] test core::utils::tests::test_resolve_binary_path_contains_binary_name ... ok [INFO] [stdout] test core::utils::tests::test_resolve_binary_fails_for_unknown ... ok [INFO] [stdout] test core::utils::tests::test_resolve_binary_returns_absolute_path ... ok [INFO] [stdout] test core::utils::tests::test_shorten_arn_ecs_service ... ok [INFO] [stdout] test core::utils::tests::test_shorten_arn_fallback ... ok [INFO] [stdout] test core::tracking::tests::test_tracker_record_and_recent ... ok [INFO] [stdout] test core::utils::tests::test_shorten_arn_iam_user ... ok [INFO] [stdout] test core::utils::tests::test_shorten_arn_lambda ... ok [INFO] [stdout] test core::utils::tests::test_strip_ansi_complex ... ok [INFO] [stdout] test core::utils::tests::test_strip_ansi_multiple ... ok [INFO] [stdout] test core::utils::tests::test_strip_ansi_simple ... ok [INFO] [stdout] test core::utils::tests::test_strip_ansi_no_codes ... ok [INFO] [stdout] test core::utils::tests::test_tool_exists_finds_git ... ok [INFO] [stdout] test core::utils::tests::test_tool_exists_finds_cargo ... ok [INFO] [stdout] test core::utils::tests::test_truncate_edge_case ... ok [INFO] [stdout] test core::utils::tests::test_truncate_exact_length ... ok [INFO] [stdout] test core::utils::tests::test_truncate_long_string ... ok [INFO] [stdout] test core::utils::tests::test_truncate_multibyte_cjk ... ok [INFO] [stdout] test core::utils::tests::test_truncate_multibyte_emoji ... ok [INFO] [stdout] test core::utils::tests::test_truncate_multibyte_thai ... ok [INFO] [stdout] test core::utils::tests::test_truncate_short_string ... ok [INFO] [stdout] test discover::lexer::tests::test_and_operator ... ok [INFO] [stdout] test discover::lexer::tests::test_background_job_is_shellism ... ok [INFO] [stdout] test discover::lexer::tests::test_background_not_confused_with_amp_redirect ... ok [INFO] [stdout] test discover::lexer::tests::test_backslash_in_single_quotes ... ok [INFO] [stdout] test discover::lexer::tests::test_backtick_substitution ... ok [INFO] [stdout] test discover::lexer::tests::test_brace_expansion ... ok [INFO] [stdout] test discover::lexer::tests::test_combined_redirect_chain ... ok [INFO] [stdout] test discover::lexer::tests::test_command_with_args ... ok [INFO] [stdout] test core::utils::tests::test_tool_exists_rejects_unknown ... ok [INFO] [stdout] test discover::lexer::tests::test_complex_compound ... ok [INFO] [stdout] test discover::lexer::tests::test_dollar_digit_stays_shellism ... ok [INFO] [stdout] test discover::lexer::tests::test_dollar_special_vars_stay_shellism ... ok [INFO] [stdout] test discover::lexer::tests::test_dollar_subshell_stays_shellism ... ok [INFO] [stdout] test discover::lexer::tests::test_double_quoted_string ... ok [INFO] [stdout] test discover::lexer::tests::test_dollar_brace_stays_shellism ... ok [INFO] [stdout] test discover::lexer::tests::test_empty_input ... ok [INFO] [stdout] test discover::lexer::tests::test_empty_quoted_string ... ok [INFO] [stdout] test discover::lexer::tests::test_env_prefix_is_arg ... ok [INFO] [stdout] test discover::lexer::tests::test_escaped_glob ... ok [INFO] [stdout] test discover::lexer::tests::test_escaped_quote_in_double ... ok [INFO] [stdout] test discover::lexer::tests::test_escaped_space ... ok [INFO] [stdout] test discover::lexer::tests::test_exclamation_is_shellism ... ok [INFO] [stdout] test discover::lexer::tests::test_fd_redirect_needs_adjacent_digit ... ok [INFO] [stdout] test discover::lexer::tests::test_fd_redirect_no_space ... ok [INFO] [stdout] test discover::lexer::tests::test_glob_detection ... ok [INFO] [stdout] test discover::lexer::tests::test_leading_trailing_spaces ... ok [INFO] [stdout] test discover::lexer::tests::test_find_pipe_xargs ... ok [INFO] [stdout] test discover::lexer::tests::test_mixed_operators ... ok [INFO] [stdout] test discover::lexer::tests::test_multiple_and ... ok [INFO] [stdout] test discover::lexer::tests::test_multiple_spaces ... ok [INFO] [stdout] test discover::lexer::tests::test_nested_quotes ... ok [INFO] [stdout] test discover::lexer::tests::test_multiple_pipes ... ok [INFO] [stdout] test discover::lexer::tests::test_offset_tracking ... ok [INFO] [stdout] test discover::lexer::tests::test_operator_at_end ... ok [INFO] [stdout] test discover::lexer::tests::test_operator_at_start ... ok [INFO] [stdout] test discover::lexer::tests::test_or_operator ... ok [INFO] [stdout] test discover::lexer::tests::test_pipe_detection ... ok [INFO] [stdout] test discover::lexer::tests::test_quoted_glob_not_shellism ... ok [INFO] [stdout] test discover::lexer::tests::test_quoted_operator_not_split ... ok [INFO] [stdout] test discover::lexer::tests::test_quoted_pipe_not_pipe ... ok [INFO] [stdout] test core::utils::tests::test_resolved_command_executes_known_command ... ok [INFO] [stdout] test discover::lexer::tests::test_offset_segment_extraction ... ok [INFO] [stdout] test discover::lexer::tests::test_quoted_variable_not_shellism ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_2_to_1_with_and ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_1_to_2_single_token ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_2_to_1_single_token ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_2_to_1_with_pipe ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_append ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_append_to_file ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_dev_null ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_amp_gt ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_amp_gt_gt ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_in ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_heredoc_marker ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_out ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_fd_close ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_shorthand_dup ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_stderr ... ok [INFO] [stdout] test discover::lexer::tests::test_redirect_stderr_no_space ... ok [INFO] [stdout] test discover::lexer::tests::test_semicolon ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_backslash_escape ... ok [INFO] [stdout] test discover::lexer::tests::test_semicolon_no_space ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_double_quotes ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_multiple_spaces ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_empty ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_single_quotes ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_mixed_quotes ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_simple ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_single_word ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_tabs ... ok [INFO] [stdout] test discover::lexer::tests::test_shell_split_unclosed_quote ... ok [INFO] [stdout] test discover::lexer::tests::test_simple_command ... ok [INFO] [stdout] test discover::lexer::tests::test_simple_var_enables_native_routing ... ok [INFO] [stdout] test discover::lexer::tests::test_simple_var_is_arg ... ok [INFO] [stdout] test discover::lexer::tests::test_subshell_detection ... ok [INFO] [stdout] test discover::lexer::tests::test_unclosed_double_quote ... ok [INFO] [stdout] test discover::lexer::tests::test_unicode_preservation ... ok [INFO] [stdout] test discover::lexer::tests::test_whitespace_only ... ok [INFO] [stdout] test discover::lexer::tests::test_unclosed_single_quote ... ok [INFO] [stdout] test discover::provider::tests::test_encode_project_path ... ok [INFO] [stdout] test discover::lexer::tests::test_single_quoted_string ... ok [INFO] [stdout] test discover::provider::tests::test_extract_assistant_bash ... ok [INFO] [stdout] test discover::provider::tests::test_encode_project_path_trailing_slash ... ok [INFO] [stdout] test discover::provider::tests::test_extract_multiple_tools ... ok [INFO] [stdout] test discover::provider::tests::test_extract_non_bash_ignored ... ok [INFO] [stdout] test discover::provider::tests::test_extract_is_error_flag ... ok [INFO] [stdout] test discover::provider::tests::test_extract_non_message_ignored ... ok [INFO] [stdout] test discover::provider::tests::test_extract_malformed_line ... ok [INFO] [stdout] test discover::provider::tests::test_match_project_filter ... ok [INFO] [stdout] test discover::provider::tests::test_extract_output_content ... ok [INFO] [stdout] test discover::registry::tests::test_all_rules_are_complete ... ok [INFO] [stdout] test discover::registry::tests::test_classify_absolute_path_git ... ok [INFO] [stdout] test discover::registry::tests::test_classify_absolute_path_grep ... ok [INFO] [stdout] test discover::registry::tests::test_classify_absolute_path_ls ... ok [INFO] [stdout] test discover::registry::tests::test_classify_absolute_path_no_args ... ok [INFO] [stdout] test discover::registry::tests::test_classify_aws ... ok [INFO] [stdout] test discover::registry::tests::test_classify_aws_ec2 ... ok [INFO] [stdout] test discover::provider::tests::test_extract_sequence_ordering ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cargo_check ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cargo_clippy_savings ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cargo_check_all_targets ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cargo_install ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cargo_test_filter ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cat_file ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cargo_fmt_passthrough ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cat_redirect_not_supported ... ok [INFO] [stdout] test discover::registry::tests::test_classify_cd_ignored ... ok [INFO] [stdout] test discover::registry::tests::test_classify_command_substitution_passthrough ... ok [INFO] [stdout] test discover::registry::tests::test_classify_diff ... ok [INFO] [stdout] test discover::registry::tests::test_classify_docker_build ... ok [INFO] [stdout] test discover::registry::tests::test_classify_docker_run ... ok [INFO] [stdout] test discover::registry::tests::test_classify_echo_ignored ... ok [INFO] [stdout] test discover::registry::tests::test_classify_docker_exec ... ok [INFO] [stdout] test discover::registry::tests::test_classify_env_quoted_value_stripped ... ok [INFO] [stdout] test discover::registry::tests::test_classify_env_prefix_stripped ... ok [INFO] [stdout] test discover::registry::tests::test_classify_gh_release ... ok [INFO] [stdout] test discover::registry::tests::test_classify_find_not_blocked_by_fi ... ok [INFO] [stdout] test discover::registry::tests::test_classify_git_dash_c ... ok [INFO] [stdout] test discover::registry::tests::test_classify_git_diff_cached ... ok [INFO] [stdout] test discover::registry::tests::test_classify_git_git_dir ... ok [INFO] [stdout] test discover::registry::tests::test_classify_git_status ... ok [INFO] [stdout] test discover::registry::tests::test_classify_git_no_pager_log ... ok [INFO] [stdout] test discover::registry::tests::test_classify_git_with_dash_c_path ... ok [INFO] [stdout] test discover::registry::tests::test_classify_go_build ... ok [INFO] [stdout] test discover::registry::tests::test_classify_go_vet ... ok [INFO] [stdout] test discover::registry::tests::test_classify_golangci_lint ... ok [INFO] [stdout] test discover::registry::tests::test_classify_go_test ... ok [INFO] [stdout] test discover::registry::tests::test_classify_htop_unsupported ... ok [INFO] [stdout] test discover::registry::tests::test_classify_kubectl_apply ... ok [INFO] [stdout] test discover::registry::tests::test_classify_kubectl_describe ... ok [INFO] [stdout] test discover::registry::tests::test_classify_mypy ... ok [INFO] [stdout] test discover::registry::tests::test_classify_npx_tsc ... ok [INFO] [stdout] test discover::registry::tests::test_classify_pip_list ... ok [INFO] [stdout] test discover::registry::tests::test_classify_psql ... ok [INFO] [stdout] test discover::registry::tests::test_classify_psql_url ... ok [INFO] [stdout] test discover::registry::tests::test_classify_pytest ... ok [INFO] [stdout] test discover::registry::tests::test_classify_prisma ... ok [INFO] [stdout] test discover::registry::tests::test_classify_python_m_pytest ... ok [INFO] [stdout] test discover::registry::tests::test_classify_rtk_already ... ok [INFO] [stdout] test discover::registry::tests::test_classify_python_m_mypy ... ok [INFO] [stdout] test discover::registry::tests::test_classify_ruff_format ... ok [INFO] [stdout] test discover::registry::tests::test_classify_ruff_check ... ok [INFO] [stdout] test discover::registry::tests::test_classify_swift_test ... ok [INFO] [stdout] test discover::registry::tests::test_classify_tree ... ok [INFO] [stdout] test discover::registry::tests::test_classify_uv_pip_list ... ok [INFO] [stdout] test core::tracking::tests::test_timed_execution_preserved_raw ... ok [INFO] [stdout] test discover::registry::tests::test_classify_vitest ... ok [INFO] [stdout] test discover::registry::tests::test_classify_wc_multi_file ... ok [INFO] [stdout] test discover::registry::tests::test_classify_wc_supported ... ok [INFO] [stdout] test discover::registry::tests::test_fi_still_ignored_exact ... ok [INFO] [stdout] test discover::registry::tests::test_has_rtk_disabled_prefix ... ok [INFO] [stdout] test discover::registry::tests::test_classify_sudo_stripped ... ok [INFO] [stdout] test discover::registry::tests::test_registry_covers_all_cargo_subcommands ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_already_rtk ... ok [INFO] [stdout] test discover::registry::tests::test_done_still_ignored_exact ... ok [INFO] [stdout] test discover::registry::tests::test_registry_covers_all_git_subcommands ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_aws_ec2 ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_aws ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_background_amp_non_regression ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_background_does_not_affect_double_amp ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_background_unsupported_right ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_cargo_install ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_cat_file ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_cat_with_compatible_flags ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_cat_with_incompatible_flags_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_command_substitution_passthrough ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_cargo_test ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_all_unsupported_returns_none ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_and ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_mixed_supported_unsupported ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_background_single_amp ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_four_segments ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_or ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_pipe_git_grep ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_partial_exclude ... ok [INFO] [stdout] test core::tracking::tests::test_timed_execution_passthrough_outcome_records_fallback_recovered ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_three_segments ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_pipe_raw_filter ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_diff ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_compound_semicolon ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_docker_compose_down_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_docker_compose_logs ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_docker_compose_build ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_docker_compose_config_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_docker_compose_up_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_docker_run ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_env_escaped_quotes_in_value ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_env_quoted_plus_unquoted ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_env_quoted_value_with_spaces ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_docker_compose_ps ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_empty_excludes_rewrites_curl ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_empty_returns_none ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_env_var_prefix ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_env_single_quoted_value_with_spaces ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_find_pipe_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_find_pipe_xargs_wc ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_excludes_curl ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_find_with_flags ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_exclude_does_not_affect_other_commands ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_gh_api_json_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_gh_jq_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_gh_json_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_gh_template_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_git_dash_c ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_gh_release ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_gh_without_json_still_works ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_find_no_pipe_still_rewritten ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_git_dash_c_diff ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_git_dash_c_log ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_git_status ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_go_build ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_git_no_pager ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_git_dash_c_status ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_go_test ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_git_log ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_go_vet ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_golangci_lint ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_head_lines_long_flag ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_head_no_flag_still_rewrites ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_ignored_cd ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_head_other_flag_skipped ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_kubectl_describe ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_head_numeric_flag ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_heredoc_returns_none ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_mixed_compound_partial ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_non_rtk_disabled_env_still_rewrites ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_next_build ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_npx_playwright ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_pip_list ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_pip_outdated ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_pipe_first_only ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_pnpm_vitest ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_prettier ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_npx_tsc ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_pnpm_list ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_psql ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_prisma ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_pnpm_tsc ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_pytest ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_redirect_2_gt_amp_1_trailing ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_redirect_amp_gt_devnull ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_redirect_double ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_redirect_2_gt_amp_1_with_and ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_redirect_fd_close ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_python_m_pytest ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_redirect_2_gt_amp_1_with_pipe ... ok [INFO] [stdout] test core::tracking::tests::test_timed_execution_passthrough_outcome_records_failure_reason ... ok [INFO] [stdout] test core::toml_filter::tests::test_make_savings_above_60pct ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_rg_pattern ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_redirect_plain_2_devnull ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_redirect_quotes_not_stripped ... ok [INFO] [stdout] test core::toml_filter::tests::test_builtin_all_expected_filters_present ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_rtk_disabled_subprocess_warns ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_sudo_docker ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_rtk_disabled_multi_env ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_rtk_disabled_warns_on_stderr ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_swift_test ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_ruff_format ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_rtk_disabled_git_status ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_ruff_check ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_rtk_disabled_curl ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_tree ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_unsupported_returns_none ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_uv_pip_list ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_tail_numeric_flag ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_tail_n_space_flag ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_vitest ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_with_env_prefix ... ok [INFO] [stdout] test discover::registry::tests::test_split_chain_and ... ok [INFO] [stdout] test discover::registry::tests::test_split_chain_semicolon ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_wc ... ok [INFO] [stdout] test discover::registry::tests::test_split_heredoc_no_split ... ok [INFO] [stdout] test discover::registry::tests::test_split_command_substitution_no_split ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_wc_multi_file ... ok [INFO] [stdout] test discover::registry::tests::test_split_pipe_first_only ... ok [INFO] [stdout] test discover::registry::tests::test_split_quoted_and ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_tail_lines_long_flag ... ok [INFO] [stdout] test discover::registry::tests::test_split_single ... ok [INFO] [stdout] test discover::registry::tests::test_strip_absolute_path_helper ... ok [INFO] [stdout] test discover::registry::tests::test_strip_disabled_prefix ... ok [INFO] [stdout] test hooks::hook_audit_cmd::tests::test_base_command_with_env ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_tail_plain_file_skipped ... ok [INFO] [stdout] test hooks::hook_audit_cmd::tests::test_base_command_single_word ... ok [INFO] [stdout] test hooks::hook_audit_cmd::tests::test_parse_line_invalid ... ok [INFO] [stdout] test discover::registry::tests::test_strip_git_global_opts_helper ... ok [INFO] [stdout] test hooks::hook_audit_cmd::tests::test_parse_line_rewrite ... ok [INFO] [stdout] test hooks::hook_audit_cmd::tests::test_base_command_simple ... ok [INFO] [stdout] test hooks::hook_audit_cmd::tests::test_filter_since_days_zero_returns_all ... ok [INFO] [stdout] test hooks::hook_check::tests::test_hook_status_enum ... ok [INFO] [stdout] test hooks::hook_check::tests::test_other_integration_codex ... ok [INFO] [stdout] test hooks::hook_check::tests::test_other_integration_cursor ... ok [INFO] [stdout] test hooks::hook_check::tests::test_other_integration_gemini ... ok [INFO] [stdout] test hooks::hook_check::tests::test_other_integration_empty_dirs_not_enough ... ok [INFO] [stdout] test hooks::hook_check::tests::test_other_integration_none ... ok [INFO] [stdout] test hooks::hook_check::tests::test_parse_hook_version_future ... ok [INFO] [stdout] test hooks::hook_check::tests::test_parse_hook_version_missing ... ok [INFO] [stdout] test hooks::hook_check::tests::test_parse_hook_version_no_tag ... ok [INFO] [stdout] test hooks::hook_check::tests::test_parse_hook_version_present ... ok [INFO] [stdout] test hooks::hook_check::tests::test_other_integration_opencode ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_tail_other_flag_skipped ... ok [INFO] [stdout] test hooks::hook_check::tests::test_status_returns_valid_variant ... ok [INFO] [stdout] test discover::registry::tests::test_rewrite_tail_lines_space_flag ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_detect_non_bash_is_passthrough ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_detect_copilot_cli_bash ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_gemini_hook_env_prefix_preserved ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_gemini_hook_uses_rewrite_command ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_gemini_hook_excluded_commands ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_get_rewritten_already_rtk ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_detect_unknown_is_passthrough ... ok [INFO] [stdout] test hooks::hook_audit_cmd::tests::test_parse_line_skip ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_detect_vscode_run_terminal_command ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_detect_vscode_bash ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_get_rewritten_heredoc ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_get_rewritten_supported ... ok [INFO] [stdout] test hooks::hook_audit_cmd::tests::test_token_savings ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_get_rewritten_unsupported ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_print_allow_format ... ok [INFO] [stdout] test hooks::init::tests::test_clean_double_blanks ... ok [INFO] [stdout] test hooks::init::tests::test_claude_md_mode_creates_full_injection ... ok [INFO] [stdout] test hooks::init::tests::test_clean_double_blanks_preserves_single ... ok [INFO] [stdout] test hooks::init::tests::test_codex_mode_rejects_auto_patch ... ok [INFO] [stdout] test hooks::init::tests::test_cursor_hook_already_present_false_other_hooks ... ok [INFO] [stdout] test hooks::init::tests::test_cursor_hook_script_has_guards ... ok [INFO] [stdout] test hooks::init::tests::test_cursor_hook_already_present_true ... ok [INFO] [stdout] test hooks::init::tests::test_codex_mode_rejects_no_patch ... ok [INFO] [stdout] test hooks::init::tests::test_cursor_hook_outputs_cursor_format ... ok [INFO] [stdout] test hooks::init::tests::test_hook_already_present_different_path ... ok [INFO] [stdout] test hooks::hook_cmd::tests::test_print_rewrite_format ... ok [INFO] [stdout] test hooks::init::tests::test_hook_has_guards ... ok [INFO] [stdout] test hooks::init::tests::test_cursor_hook_already_present_false_empty ... ok [INFO] [stdout] test hooks::init::tests::test_atomic_write ... ok [INFO] [stdout] test hooks::init::tests::test_default_mode_creates_hook_and_rtk_md ... ok [INFO] [stdout] test hooks::init::tests::test_hook_not_present_empty ... ok [INFO] [stdout] test hooks::init::tests::test_hook_not_present_other_hooks ... ok [INFO] [stdout] test hooks::init::tests::test_init_has_version_marker ... ok [INFO] [stdout] test hooks::init::tests::test_init_mentions_all_top_level_commands ... ok [INFO] [stdout] test hooks::init::tests::test_insert_cursor_hook_entry_empty ... ok [INFO] [stdout] test hooks::init::tests::test_insert_cursor_hook_preserves_existing ... ok [INFO] [stdout] test hooks::init::tests::test_insert_hook_preserves_other_keys ... ok [INFO] [stdout] test hooks::init::tests::test_insert_hook_entry_empty_root ... ok [INFO] [stdout] test hooks::init::tests::test_init_is_idempotent ... ok [INFO] [stdout] test hooks::init::tests::test_migration_removes_old_block ... ok [INFO] [stdout] test hooks::init::tests::test_migration_warns_on_missing_end_marker ... ok [INFO] [stdout] test hooks::init::tests::test_hook_already_present_exact_match ... ok [INFO] [stdout] test hooks::init::tests::test_insert_hook_entry_preserves_existing ... ok [INFO] [stdout] test hooks::init::tests::test_local_init_unchanged ... ok [INFO] [stdout] test core::toml_filter::tests::test_builtin_filters_compile ... ok [INFO] [stdout] test hooks::init::tests::test_opencode_plugin_install_and_update ... ok [INFO] [stdout] test hooks::init::tests::test_patch_agents_md_adds_reference_once ... ok [INFO] [stdout] test hooks::init::tests::test_patch_agents_md_creates_missing_file ... ok [INFO] [stdout] test hooks::init::tests::test_preserve_order_round_trip ... ok [INFO] [stdout] test hooks::init::tests::test_remove_cursor_hook_from_json ... ok [INFO] [stdout] test hooks::init::tests::test_patch_agents_md_migrates_inline_block ... ok [INFO] [stdout] test hooks::init::tests::test_upsert_rtk_block_noop_when_already_current ... ok [INFO] [stdout] test hooks::init::tests::test_opencode_plugin_remove ... ok [INFO] [stdout] test hooks::init::tests::test_upsert_rtk_block_updates_stale_block ... ok [INFO] [stdout] test hooks::init::tests::test_remove_cursor_hook_not_present ... ok [INFO] [stdout] test hooks::init::tests::test_remove_hook_when_not_present ... ok [INFO] [stdout] test hooks::init::tests::test_remove_hook_from_json ... ok [INFO] [stdout] test hooks::init::tests::test_upsert_rtk_block_appends_when_missing ... ok [INFO] [stdout] test hooks::init::tests::test_upsert_rtk_block_detects_malformed_block ... ok [INFO] [stdout] test hooks::init::tests::test_uninstall_codex_at_is_idempotent ... ok [INFO] [stdout] test hooks::integrity::tests::test_compute_hash_deterministic ... ok [INFO] [stdout] test hooks::integrity::tests::test_hash_file_permissions ... ok [INFO] [stdout] test hooks::integrity::tests::test_hash_only_no_filename_rejected ... ok [INFO] [stdout] test hooks::integrity::tests::test_hash_format_compatible_with_sha256sum ... ok [INFO] [stdout] test hooks::integrity::tests::test_invalid_hash_file_rejected ... ok [INFO] [stdout] test hooks::integrity::tests::test_remove_hash_not_found ... ok [INFO] [stdout] test hooks::integrity::tests::test_compute_hash_changes_on_modification ... ok [INFO] [stdout] test hooks::integrity::tests::test_verify_no_baseline ... ok [INFO] [stdout] test hooks::integrity::tests::test_store_and_verify_ok ... ok [INFO] [stdout] test hooks::integrity::tests::test_store_hash_creates_sha256sum_format ... ok [INFO] [stdout] test hooks::integrity::tests::test_verify_not_installed ... ok [INFO] [stdout] test hooks::integrity::tests::test_verify_orphaned_hash ... ok [INFO] [stdout] test hooks::permissions::tests::test_ask_overrides_allow ... ok [INFO] [stdout] test hooks::permissions::tests::test_ask_verdict ... ok [INFO] [stdout] test hooks::permissions::tests::test_compound_command_deny ... ok [INFO] [stdout] test hooks::permissions::tests::test_compound_command_deny_overrides_ask ... ok [INFO] [stdout] test hooks::permissions::tests::test_default_not_allow_when_unmatched ... ok [INFO] [stdout] test hooks::integrity::tests::test_store_hash_overwrites_existing ... ok [INFO] [stdout] test hooks::integrity::tests::test_wrong_separator_rejected ... ok [INFO] [stdout] test hooks::permissions::tests::test_allow_wildcard ... ok [INFO] [stdout] test hooks::permissions::tests::test_deny_overrides_allow ... ok [INFO] [stdout] test hooks::permissions::tests::test_exact_match ... ok [INFO] [stdout] test hooks::permissions::tests::test_deny_precedence_over_ask ... ok [INFO] [stdout] test hooks::permissions::tests::test_explicit_allow_rule ... ok [INFO] [stdout] test hooks::permissions::tests::test_deny_star_colon_star ... ok [INFO] [stdout] test hooks::permissions::tests::test_leading_wildcard ... ok [INFO] [stdout] test hooks::permissions::tests::test_middle_wildcard ... ok [INFO] [stdout] test hooks::permissions::tests::test_leading_wildcard_no_partial ... ok [INFO] [stdout] test hooks::permissions::tests::test_deny_with_leading_wildcard ... ok [INFO] [stdout] test hooks::permissions::tests::test_empty_permissions ... ok [INFO] [stdout] test hooks::permissions::tests::test_middle_wildcard_no_match ... ok [INFO] [stdout] test hooks::permissions::tests::test_multiple_wildcards ... ok [INFO] [stdout] test hooks::permissions::tests::test_no_partial_word_match ... ok [INFO] [stdout] test hooks::permissions::tests::test_no_match ... ok [INFO] [stdout] test hooks::permissions::tests::test_non_bash_rules_ignored ... ok [INFO] [stdout] test hooks::permissions::tests::test_parse_bash_pattern ... ok [INFO] [stdout] test hooks::permissions::tests::test_prefix_match ... ok [INFO] [stdout] test hooks::permissions::tests::test_compound_command_ask ... ok [INFO] [stdout] test hooks::integrity::tests::test_verify_detects_tampering ... ok [INFO] [stdout] test hooks::permissions::tests::test_sudo_wildcard_no_false_positive ... ok [INFO] [stdout] test hooks::permissions::tests::test_wildcard_all ... ok [INFO] [stdout] test hooks::rewrite_cmd::tests::test_run_already_rtk_returns_some ... ok [INFO] [stdout] test hooks::permissions::tests::test_wildcard_colon ... ok [INFO] [stdout] test hooks::trust::tests::test_canonical_key_works ... ok [INFO] [stdout] test hooks::integrity::tests::test_remove_hash ... ok [INFO] [stdout] test hooks::trust::tests::test_missing_store_is_untrusted ... ok [INFO] [stdout] test hooks::permissions::tests::test_star_colon_star_matches_everything ... ok [INFO] [stdout] test hooks::trust::tests::test_risk_summary_detects_match_output ... ok [INFO] [stdout] test hooks::trust::tests::test_env_override_without_ci_is_ignored ... ok [INFO] [stdout] test hooks::trust::tests::test_content_change_detected ... ok [INFO] [stdout] test hooks::rewrite_cmd::tests::test_run_supported_command_succeeds ... ok [INFO] [stdout] test core::toml_filter::tests::test_terraform_savings_above_60pct ... ok [INFO] [stdout] test hooks::trust::tests::test_untrust_revokes ... ok [INFO] [stdout] test hooks::trust::tests::test_untrusted_by_default ... ok [INFO] [stdout] test hooks::rewrite_cmd::tests::test_run_unsupported_returns_none ... ok [INFO] [stdout] test learn::detector::tests::test_deduplicate_corrections_keeps_distinct ... ok [INFO] [stdout] test learn::detector::tests::test_deduplicate_corrections_merges_same ... ok [INFO] [stdout] test learn::detector::tests::test_command_similarity_same_base ... ok [INFO] [stdout] test learn::detector::tests::test_extract_base_command ... ok [INFO] [stdout] test hooks::trust::tests::test_env_override_with_ci ... ok [INFO] [stdout] test hooks::trust::tests::test_trust_then_check ... ok [INFO] [stdout] test hooks::trust::tests::test_risk_summary_detects_replace ... ok [INFO] [stdout] test core::tracking::tests::test_timed_execution_preserves_token_tracking_when_evaluation_disabled ... ok [INFO] [stdout] test learn::detector::tests::test_is_command_error_filters_user_rejection ... ok [INFO] [stdout] test hooks::permissions::tests::test_no_rules_returns_default ... ok [INFO] [stdout] test learn::detector::tests::test_find_corrections_path_exploration ... ok [INFO] [stdout] test learn::detector::tests::test_is_command_error_requires_error_content ... ok [INFO] [stdout] test learn::detector::tests::test_is_command_error_requires_error_flag ... ok [INFO] [stdout] test learn::report::tests::test_write_rules_file_markdown ... ok [INFO] [stdout] test learn::report::tests::test_format_console_report_empty ... ok [INFO] [stdout] test learn::report::tests::test_format_console_report_with_rules ... ok [INFO] [stdout] test parser::formatter::tests::test_compact_shows_full_error_message ... ok [INFO] [stdout] test parser::formatter::tests::test_compact_single_line_error_no_trailing_noise ... ok [INFO] [stdout] test parser::formatter::tests::test_compact_all_pass_is_one_line ... ok [INFO] [stdout] test learn::detector::tests::test_find_corrections_basic ... ok [INFO] [stdout] test learn::detector::tests::test_find_corrections_min_confidence ... ok [INFO] [stdout] test parser::tests::test_extract_json_object_nested_braces ... ok [INFO] [stdout] test parser::tests::test_extract_json_object_string_with_braces ... ok [INFO] [stdout] test parser::tests::test_extract_json_object_with_dotenv_prefix ... ok [INFO] [stdout] test parser::tests::test_extract_json_object_no_json ... ok [INFO] [stdout] test parser::tests::test_extract_json_object_clean ... ok [INFO] [stdout] test parser::formatter::tests::test_compact_summary_line_is_concise ... ok [INFO] [stdout] test parser::tests::test_truncate_output ... ok [INFO] [stdout] test parser::tests::test_truncate_output_multibyte ... ok [INFO] [stdout] test parser::tests::test_parse_result_tier ... ok [INFO] [stdout] test parser::tests::test_extract_json_object_with_pnpm_prefix ... ok [INFO] [stdout] test parser::tests::test_parse_result_map ... ok [INFO] [stdout] test parser::tests::test_truncate_output_emoji ... ok [INFO] [stdout] test tests::test_gain_evaluation_flag_parses ... ok [INFO] [stdout] test learn::detector::tests::test_find_corrections_window_limit ... ok [INFO] [stdout] test learn::detector::tests::test_classify_error_unknown_flag ... ok [INFO] [stdout] test tests::test_git_commit_amend ... ok [INFO] [stdout] test tests::test_gain_failures_flag_parses ... ok [INFO] [stdout] test tests::test_git_global_options_parsing ... ok [INFO] [stdout] test tests::test_gain_failures_short_flag_parses ... ok [INFO] [stdout] test tests::test_git_commit_am_flag ... ok [INFO] [stdout] test tests::test_meta_command_list_is_complete ... ok [INFO] [stdout] test tests::test_git_commit_long_flag_multiple ... ok [INFO] [stdout] test tests::test_shell_split_double_quotes ... ok [INFO] [stdout] test tests::test_git_commit_multiple_messages ... ok [INFO] [stdout] test tests::test_shell_split_empty ... ok [INFO] [stdout] test tests::test_git_commit_single_message ... ok [INFO] [stdout] test tests::test_shell_split_simple ... ok [INFO] [stdout] test learn::detector::tests::test_classify_error_command_not_found ... ok [INFO] [stdout] test tests::test_shell_split_single_quotes ... ok [INFO] [stdout] test discover::registry::tests::test_all_patterns_are_valid_regex ... ok [INFO] [stdout] test tests::test_rewrite_clap_quoted_single_arg ... ok [INFO] [stdout] test tests::test_shell_split_single_word ... ok [INFO] [stdout] test tests::test_try_parse_git_with_dash_c_succeeds ... ok [INFO] [stdout] test tests::test_rewrite_clap_multi_args ... ok [INFO] [stdout] test tests::test_try_parse_version_is_display_version ... ok [INFO] [stdout] test core::toml_filter::tests::test_builtin_all_filters_have_inline_tests ... ok [INFO] [stdout] test tests::test_try_parse_valid_git_status ... ok [INFO] [stdout] test core::tracking::tests::test_timed_execution_records_time ... ok [INFO] [stdout] test tests::test_try_parse_unknown_subcommand_is_error ... ok [INFO] [stdout] test tests::test_try_parse_help_is_display_help ... ok [INFO] [stdout] test core::toml_filter::tests::test_builtin_filter_count ... ok [INFO] [stdout] test learn::detector::tests::test_classify_error_all_types ... ok [INFO] [stdout] test learn::detector::tests::test_find_corrections_excludes_tdd_cycle ... ok [INFO] [stdout] test tests::test_meta_commands_reject_bad_flags ... ok [INFO] [stdout] test core::toml_filter::tests::test_new_filter_discoverable_after_concat ... ok [INFO] [stdout] test core::toml_filter::tests::test_project_filters_priority_over_builtin ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1365 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 1.83s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373", kill_on_drop: false }` [INFO] [stdout] 114b652bd879ec8fb3c36f1417edeeff2b3d585b235fcec516b6db113ccdb373