[INFO] fetching crate linthis 0.19.5... [INFO] testing linthis-0.19.5 against 1.95.0 for beta-1.96-1 [INFO] extracting crate linthis 0.19.5 into /workspace/builds/worker-0-tc1/source [INFO] started tweaking crates.io crate linthis 0.19.5 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate linthis 0.19.5 [INFO] tweaked toml for crates.io crate linthis 0.19.5 written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate linthis 0.19.5 on toolchain 1.95.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate linthis 0.19.5 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded walkdir v2.3.3 [INFO] [stderr] Downloaded tower-lsp-macros v0.9.0 [INFO] [stderr] Downloaded dashmap v5.5.3 [INFO] [stderr] Downloaded castaway v0.2.4 [INFO] [stderr] Downloaded directories v5.0.1 [INFO] [stderr] Downloaded clap_lex v0.5.0 [INFO] [stderr] Downloaded unicode-truncate v1.1.0 [INFO] [stderr] Downloaded anstyle-wincon v1.0.2 [INFO] [stderr] Downloaded anyhow v1.0.71 [INFO] [stderr] Downloaded clap v4.3.0 [INFO] [stderr] Downloaded globset v0.4.14 [INFO] [stderr] Downloaded serde_yaml v0.9.17 [INFO] [stderr] Downloaded compact_str v0.8.1 [INFO] [stderr] Downloaded zvariant v5.9.1 [INFO] [stderr] Downloaded crossterm v0.28.1 [INFO] [stderr] Downloaded serde_json v1.0.96 [INFO] [stderr] Downloaded clap_builder v4.3.0 [INFO] [stderr] Downloaded zbus v5.13.1 [INFO] [stderr] Downloaded notify-rust v4.11.7 [INFO] [stderr] Downloaded env_logger v0.10.0 [INFO] [stderr] Downloaded regex v1.8.4 [INFO] [stderr] Downloaded zbus_macros v5.13.1 [INFO] [stderr] Downloaded tower-lsp v0.20.0 [INFO] [stderr] Downloaded anstream v0.3.2 [INFO] [stderr] Downloaded clap_derive v4.3.0 [INFO] [stderr] Downloaded redox_syscall v0.6.0 [INFO] [stderr] Downloaded cassowary v0.3.0 [INFO] [stderr] Downloaded indoc v2.0.7 [INFO] [stderr] Downloaded lsp-types v0.94.1 [INFO] [stderr] Downloaded colored v2.0.0 [INFO] [stderr] Downloaded libredox v0.1.11 [INFO] [stderr] Downloaded mac-notification-sys v0.6.9 [INFO] [stderr] Downloaded ratatui v0.28.1 [INFO] [stderr] Downloaded zvariant_derive v5.9.1 [INFO] [stderr] Downloaded instability v0.3.11 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7ae02abe420851706e89f6695ff49075b4c2e47a3a66c2d4a396567b471da630 [INFO] running `Command { std: "docker" "start" "-a" "7ae02abe420851706e89f6695ff49075b4c2e47a3a66c2d4a396567b471da630", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7ae02abe420851706e89f6695ff49075b4c2e47a3a66c2d4a396567b471da630", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7ae02abe420851706e89f6695ff49075b4c2e47a3a66c2d4a396567b471da630", kill_on_drop: false }` [INFO] [stdout] 7ae02abe420851706e89f6695ff49075b4c2e47a3a66c2d4a396567b471da630 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d85dd467d32ee4cb55ec6952084a2aa8daf9ab51bedfdb14e71e1b594c1f3c58 [INFO] running `Command { std: "docker" "start" "-a" "d85dd467d32ee4cb55ec6952084a2aa8daf9ab51bedfdb14e71e1b594c1f3c58", kill_on_drop: false }` [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling find-msvc-tools v0.1.5 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling ryu v1.0.20 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling indexmap v2.12.1 [INFO] [stderr] Compiling cc v1.2.50 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling serde_json v1.0.96 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling http-body v0.4.6 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling rayon-core v1.11.0 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling instability v0.3.11 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling anstream v0.3.2 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling regex-syntax v0.7.5 [INFO] [stderr] Compiling clap_lex v0.5.0 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling thiserror v1.0.40 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling anyhow v1.0.71 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling compact_str v0.8.1 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling clap_builder v4.3.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling sct v0.7.1 [INFO] [stderr] Compiling rustls-webpki v0.101.7 [INFO] [stderr] Compiling regex v1.8.4 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [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 tokio-macros v2.6.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling serde_repr v0.1.20 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling pin-project v1.1.10 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling tower v0.4.13 [INFO] [stderr] Compiling auto_impl v1.3.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling clap_derive v4.3.0 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tokio-rustls v0.24.1 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling thiserror-impl v1.0.40 [INFO] [stderr] Compiling h2 v0.3.27 [INFO] [stderr] Compiling lsp-types v0.94.1 [INFO] [stderr] Compiling tower-lsp-macros v0.9.0 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling walkdir v2.3.3 [INFO] [stderr] Compiling inotify v0.9.6 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling mio v0.8.11 [INFO] [stderr] Compiling filetime v0.2.26 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling unsafe-libyaml v0.2.11 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling colored v2.0.0 [INFO] [stderr] Compiling env_logger v0.10.0 [INFO] [stderr] Compiling tempfile v3.23.0 [INFO] [stderr] Compiling serde_yaml v0.9.17 [INFO] [stderr] Compiling hyper v0.14.32 [INFO] [stderr] Compiling globset v0.4.14 [INFO] [stderr] Compiling ratatui v0.28.1 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling notify v6.1.1 [INFO] [stderr] Compiling rayon v1.7.0 [INFO] [stderr] Compiling clap v4.3.0 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling hyper-rustls v0.24.2 [INFO] [stderr] Compiling reqwest v0.11.27 [INFO] [stderr] Compiling directories v5.0.1 [INFO] [stderr] Compiling fs2 v0.4.3 [INFO] [stderr] Compiling xxhash-rust v0.8.15 [INFO] [stderr] Compiling tower-lsp v0.20.0 [INFO] [stderr] Compiling linthis v0.19.5 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 53s [INFO] running `Command { std: "docker" "inspect" "d85dd467d32ee4cb55ec6952084a2aa8daf9ab51bedfdb14e71e1b594c1f3c58", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d85dd467d32ee4cb55ec6952084a2aa8daf9ab51bedfdb14e71e1b594c1f3c58", kill_on_drop: false }` [INFO] [stdout] d85dd467d32ee4cb55ec6952084a2aa8daf9ab51bedfdb14e71e1b594c1f3c58 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] dc942f15cd7e19cee6cee40c1351a30eda902d83c399164a0c34d7fa726214a9 [INFO] running `Command { std: "docker" "start" "-a" "dc942f15cd7e19cee6cee40c1351a30eda902d83c399164a0c34d7fa726214a9", kill_on_drop: false }` [INFO] [stderr] Compiling linthis v0.19.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `ALL_AGENT_PROVIDERS` and `agent_event_skill_metadata` [INFO] [stdout] --> src/cli/hook/mod.rs:279:9 [INFO] [stdout] | [INFO] [stdout] 279 | agent_event_skill_metadata, agent_skill_path, copy_dir_recursive, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 280 | install_agent_plugin_from_dir, ALL_AGENT_PROVIDERS, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::script::build_hook_command` [INFO] [stdout] --> src/cli/hook/mod.rs:283:9 [INFO] [stdout] | [INFO] [stdout] 283 | use super::script::build_hook_command; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/cli/hook/mod.rs:284:9 [INFO] [stdout] | [INFO] [stdout] 284 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 59.42s [INFO] running `Command { std: "docker" "inspect" "dc942f15cd7e19cee6cee40c1351a30eda902d83c399164a0c34d7fa726214a9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dc942f15cd7e19cee6cee40c1351a30eda902d83c399164a0c34d7fa726214a9", kill_on_drop: false }` [INFO] [stdout] dc942f15cd7e19cee6cee40c1351a30eda902d83c399164a0c34d7fa726214a9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] e231d3d74232b786d07449f3c02eb71bac4d68d203c90d2a5732043c62dd26c1 [INFO] running `Command { std: "docker" "start" "-a" "e231d3d74232b786d07449f3c02eb71bac4d68d203c90d2a5732043c62dd26c1", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `ALL_AGENT_PROVIDERS` and `agent_event_skill_metadata` [INFO] [stderr] --> src/cli/hook/mod.rs:279:9 [INFO] [stderr] | [INFO] [stderr] 279 | agent_event_skill_metadata, agent_skill_path, copy_dir_recursive, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 280 | install_agent_plugin_from_dir, ALL_AGENT_PROVIDERS, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::script::build_hook_command` [INFO] [stderr] --> src/cli/hook/mod.rs:283:9 [INFO] [stderr] | [INFO] [stderr] 283 | use super::script::build_hook_command; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> src/cli/hook/mod.rs:284:9 [INFO] [stderr] | [INFO] [stderr] 284 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `linthis` (bin "linthis" test) generated 3 warnings (run `cargo fix --bin "linthis" -p linthis --tests` to apply 3 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.53s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/linthis-7d45e99b9db11716) [INFO] [stdout] [INFO] [stdout] running 621 tests [INFO] [stdout] test agent_stream::tests::edit_with_empty_old_string_shows_create ... ok [INFO] [stdout] test agent_stream::tests::edit_shows_update_header_with_native_stats_and_preview ... ok [INFO] [stdout] test agent_stream::tests::notebook_edit_uses_edit_notebook_verb ... ok [INFO] [stdout] test agent_stream::tests::preview_truncates_long_lines ... ok [INFO] [stdout] test agent_stream::tests::renders_glob_and_grep_as_search ... ok [INFO] [stdout] test agent_stream::tests::renders_assistant_text_block ... ok [INFO] [stdout] test agent_stream::tests::renders_bash_with_bash_parens_prefix ... ok [INFO] [stdout] test agent_stream::tests::renders_skill_tool_with_name ... ok [INFO] [stdout] test agent_stream::tests::renders_task_create_with_subject ... ok [INFO] [stdout] test agent_stream::tests::renders_system_init_with_model ... ok [INFO] [stdout] test agent_stream::tests::renders_task_agent_with_description_and_subtype ... ok [INFO] [stdout] test agent_stream::tests::renders_task_list_header_only ... ok [INFO] [stdout] test agent_stream::tests::renders_task_stop_with_id ... ok [INFO] [stdout] test agent_stream::tests::renders_todowrite_first_item ... ok [INFO] [stdout] test agent_stream::tests::renders_task_update_owner_when_no_status ... ok [INFO] [stdout] test agent_stream::tests::renders_skill_tool_with_name_and_args ... ok [INFO] [stdout] test agent_stream::tests::multi_edit_aggregates_stats_and_uses_update_header ... ok [INFO] [stdout] test agent_stream::tests::renders_task_update_with_status ... ok [INFO] [stdout] test agent_stream::tests::renders_webfetch_as_fetch ... ok [INFO] [stdout] test agent_stream::tests::renders_read_tool_as_read_with_path ... ok [INFO] [stdout] test agent_stream::tests::result_error_event_shows_failure ... ok [INFO] [stdout] test agent_stream::tests::singular_vs_plural_line_phrasing ... ok [INFO] [stdout] test agent_stream::tests::successful_result_is_silent ... ok [INFO] [stdout] test agent_stream::tests::stream_event_text_delta_is_appended_inline ... ok [INFO] [stdout] test agent_stream::tests::to_display_path_converts_when_under_cwd ... ok [INFO] [stdout] test agent_stream::tests::thinking_block_shows_marker_not_content ... ok [INFO] [stdout] test agent_stream::tests::tool_result_silent_on_success_shows_reason_on_error ... ok [INFO] [stdout] test ai::context::tests::test_context_options_default ... ok [INFO] [stdout] test agent_stream::tests::truncates_long_bash_command ... ok [INFO] [stdout] test agent_stream::tests::to_display_path_uses_tilde_for_home ... ok [INFO] [stdout] test ai::context::tests::test_detect_language ... ok [INFO] [stdout] test ai::context::tests::test_extract_imports ... ok [INFO] [stdout] test ai::prompts::tests::test_category_specific_templates ... ok [INFO] [stdout] test agent_stream::tests::to_display_path_passes_through_when_outside_cwd_and_home ... ok [INFO] [stdout] test agent_stream::tests::write_uses_write_header_and_shows_line_count ... ok [INFO] [stdout] test ai::prompts::tests::test_issue_category_parsing ... ok [INFO] [stdout] test ai::provider::tests::test_cli_name ... ok [INFO] [stdout] test ai::prompts::tests::test_prompt_builder ... ok [INFO] [stdout] test ai::provider::tests::test_mock_provider_available ... ok [INFO] [stdout] test ai::prompts::tests::test_prompt_template ... ok [INFO] [stdout] test ai::provider::tests::test_mock_provider ... ok [INFO] [stdout] test ai::provider::tests::test_provider_kind_parsing ... ok [INFO] [stdout] test ai::context::tests::test_extract_context ... ok [INFO] [stdout] test ai::provider::tests::test_mock_no_fallback_needed ... ok [INFO] [stdout] test ai::provider::tests::test_provider_config_defaults ... ok [INFO] [stdout] test ai::provider::tests::test_provider_name ... ok [INFO] [stdout] test ai::suggestions::tests::test_ai_suggester_mock ... ok [INFO] [stdout] test ai::suggestions::tests::test_categorize_issue ... ok [INFO] [stdout] test ai::suggestions::tests::test_detect_language ... ok [INFO] [stdout] test ai::suggestions::tests::test_fix_suggestion ... ok [INFO] [stdout] test ai::suggestions::tests::test_suggestions_report ... ok [INFO] [stdout] test benchmark::tests::test_benchmark_result_total_duration ... ok [INFO] [stdout] test ai::suggestions::tests::test_suggestion_result ... ok [INFO] [stdout] test ai::suggestions::tests::test_suggestion_options_default ... ok [INFO] [stdout] test ai::suggestions::tests::test_parse_ai_response ... ok [INFO] [stdout] test ai::suggestions::tests::test_parse_unified_diff_multiline ... ok [INFO] [stdout] test benchmark::tests::test_speedup_calculation ... ok [INFO] [stdout] test cache::hash::tests::test_file_hash_deterministic ... ok [INFO] [stdout] test cache::hash::tests::test_is_file_changed_same_content ... ok [INFO] [stdout] test benchmark::tests::test_format_speedup ... ok [INFO] [stdout] test cache::storage::tests::test_cache_new ... ok [INFO] [stdout] test cache::storage::tests::test_cache_prune ... ok [INFO] [stdout] test cache::storage::tests::test_cache_stats ... ok [INFO] [stdout] test cache::storage::tests::test_cache_update_and_check ... ok [INFO] [stdout] test cache::types::tests::test_cache_stats ... ok [INFO] [stdout] test cache::types::tests::test_cache_stats_empty ... ok [INFO] [stdout] test cache::types::tests::test_cached_issue_roundtrip ... ok [INFO] [stdout] test ai::suggestions::tests::test_parse_unified_diff ... ok [INFO] [stdout] test benchmark::tests::test_format_duration_ms ... ok [INFO] [stdout] test ai::suggestions::tests::test_parse_diff_with_context ... ok [INFO] [stdout] test checkers::cpp::tests::test_check_objc_method_lengths_blank_and_comments_not_counted ... ok [INFO] [stdout] test checkers::cpp::tests::test_check_objc_method_lengths_custom_threshold ... ok [INFO] [stdout] test cache::hash::tests::test_file_hash_different_content ... ok [INFO] [stdout] test checkers::cpp::tests::test_check_objc_method_lengths_multiple_methods_each_checked ... ok [INFO] [stdout] test checkers::cpp::tests::test_check_objc_method_lengths_under_threshold_no_issue ... ok [INFO] [stdout] test checkers::cpp::tests::test_count_sloc_plain_code ... ok [INFO] [stdout] test checkers::cpp::tests::test_check_objc_method_lengths_over_threshold_reports_issue ... ok [INFO] [stdout] test checkers::cpp::tests::test_count_sloc_skips_single_line_block_comment ... ok [INFO] [stdout] test checkers::cpp::tests::test_count_sloc_trailing_comment_counts_as_code ... ok [INFO] [stdout] test checkers::cpp::tests::test_count_sloc_skips_blank_lines ... ok [INFO] [stdout] test checkers::cpp::tests::test_count_sloc_skips_line_comments ... ok [INFO] [stdout] test checkers::cpp::tests::test_count_sloc_skips_multiline_block_comment ... ok [INFO] [stdout] test checkers::cpp::tests::test_check_objc_method_lengths_exactly_at_threshold_no_issue ... ok [INFO] [stdout] test cache::hash::tests::test_is_file_changed_different_hash ... ok [INFO] [stdout] test checkers::cpp::tests::test_cpplint_config_default ... ok [INFO] [stdout] test checkers::cpp::tests::test_extract_method_name_class_method ... ok [INFO] [stdout] test checkers::cpp::tests::test_extract_method_name_multi_arg ... ok [INFO] [stdout] test checkers::cpp::tests::test_extract_method_name_simple ... ok [INFO] [stdout] test checkers::cpp::tests::test_extract_method_name_with_single_arg ... ok [INFO] [stdout] test checkers::cpp::tests::test_merge_filters_base_none ... ok [INFO] [stdout] test checkers::cpp::tests::test_merge_filters_both_present ... ok [INFO] [stdout] test checkers::cpp::tests::test_merge_filters_empty_strings ... ok [INFO] [stdout] test checkers::cpp::tests::test_merge_filters_removes_duplicates ... ok [INFO] [stdout] test checkers::cpp::tests::test_merge_filters_trims_whitespace ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_clang_tidy_clang_diagnostic_filtered ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_clang_tidy_error ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_clang_tidy_irrelevant_line ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_clang_tidy_no_bracket ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_clang_tidy_note_line ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_clang_tidy_warning ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_cfg_both ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_cfg_empty_lines ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_cfg_filter ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_cfg_linelength ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_cfg_multiple_filters ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_cfg_nonexistent_file ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_cfg_with_comments ... ok [INFO] [stdout] test checkers::cpp::tests::test_cpp_checker_with_cpplint_oc_config ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_done_processing ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_comment_spacing ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_endif_comment ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_header_guard ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_line_length ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_multiline_string_filtered ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_standard_warning ... ok [INFO] [stdout] test checkers::cpp::tests::test_parse_cpplint_total_errors ... ok [INFO] [stdout] test checkers::csharp::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::csharp::tests::test_parse_dotnet_output ... ok [INFO] [stdout] test checkers::csharp::tests::test_parse_filters_other_files ... ok [INFO] [stdout] test checkers::dart::tests::test_parse_analyze_output ... ok [INFO] [stdout] test checkers::dart::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::cpp::tests::test_cpp_checker_with_compile_commands_dir ... ok [INFO] [stdout] test checkers::cpp::tests::test_cpp_checker_with_cpplint_cpp_config ... ok [INFO] [stdout] test checkers::dart::tests::test_parse_warning ... ok [INFO] [stdout] test checkers::kotlin::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::kotlin::tests::test_parse_ktlint_output ... ok [INFO] [stdout] test checkers::lua::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::php::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::lua::tests::test_parse_luacheck_output ... ok [INFO] [stdout] test checkers::python::tests::test_parse_invalid_json ... ok [INFO] [stdout] test checkers::python::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::php::tests::test_parse_phpcs_output ... ok [INFO] [stdout] test checkers::python::tests::test_severity_mapping ... ok [INFO] [stdout] test checkers::python::tests::test_parse_ruff_json_output ... ok [INFO] [stdout] test checkers::ruby::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::ruby::tests::test_parse_warning_severity ... ok [INFO] [stdout] test checkers::ruby::tests::test_parse_rubocop_output ... ok [INFO] [stdout] test checkers::scala::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::shell::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::shell::tests::test_parse_info_level ... ok [INFO] [stdout] test cache::storage::tests::test_cache_clear ... ok [INFO] [stdout] test checkers::cpp::tests::test_cpp_checker_default_oc_fn_length ... ok [INFO] [stdout] test checkers::cpp::tests::test_cpp_checker_with_config ... ok [INFO] [stdout] test checkers::scala::tests::test_parse_simple_format ... ok [INFO] [stdout] test checkers::swift::tests::test_parse_empty_output ... ok [INFO] [stdout] test checkers::shell::tests::test_parse_shellcheck_output ... ok [INFO] [stdout] test checkers::swift::tests::test_parse_swiftlint_output ... ok [INFO] [stdout] test checkers::typescript::tests::test_eslint_file_ignored_filtered ... ok [INFO] [stdout] test checkers::typescript::tests::test_eslint_file_ignored_pattern_filtered ... ok [INFO] [stdout] test complexity::analyzer::tests::test_analysis_options_default ... ok [INFO] [stdout] test complexity::analyzer::tests::test_analysis_result_default ... ok [INFO] [stdout] test checkers::typescript::tests::test_eslint_real_issue_not_filtered ... ok [INFO] [stdout] test checkers::scala::tests::test_parse_scalafix_output ... ok [INFO] [stdout] test complexity::languages::go::tests::test_detect_function ... ok [INFO] [stdout] test complexity::languages::go::tests::test_go_analyzer_creation ... ok [INFO] [stdout] test complexity::languages::go::tests::test_analyze_simple_function ... ok [INFO] [stdout] test complexity::languages::java::tests::test_analyze_simple_class ... ok [INFO] [stdout] test complexity::languages::java::tests::test_detect_method ... ok [INFO] [stdout] test complexity::languages::java::tests::test_java_analyzer_creation ... ok [INFO] [stdout] test complexity::languages::java::tests::test_complexity_with_conditionals ... ok [INFO] [stdout] test complexity::languages::go::tests::test_complexity_with_conditionals ... ok [INFO] [stdout] test complexity::languages::python::tests::test_python_analyzer_creation ... ok [INFO] [stdout] test complexity::languages::rust::tests::test_analyze_simple_function ... ok [INFO] [stdout] test complexity::languages::python::tests::test_analyze_simple_function ... ok [INFO] [stdout] test complexity::languages::rust::tests::test_detect_function ... ok [INFO] [stdout] test complexity::languages::rust::tests::test_rust_analyzer_creation ... ok [INFO] [stdout] test complexity::languages::rust::tests::test_cyclomatic_complexity ... ok [INFO] [stdout] test complexity::languages::typescript::tests::test_analyze_simple_function ... ok [INFO] [stdout] test complexity::languages::python::tests::test_complexity_with_conditionals ... ok [INFO] [stdout] test complexity::languages::typescript::tests::test_detect_function ... ok [INFO] [stdout] test complexity::languages::typescript::tests::test_typescript_analyzer_creation ... ok [INFO] [stdout] test complexity::languages::python::tests::test_extract_function_name ... ok [INFO] [stdout] test complexity::metrics::tests::test_complexity_metrics_default ... ok [INFO] [stdout] test complexity::metrics::tests::test_cyclomatic_level ... ok [INFO] [stdout] test complexity::metrics::tests::test_file_metrics ... ok [INFO] [stdout] test complexity::analyzer::tests::test_complexity_analyzer_creation ... ok [INFO] [stdout] test complexity::report::tests::test_format_human ... ok [INFO] [stdout] test complexity::report::tests::test_format_markdown ... ok [INFO] [stdout] test complexity::report::tests::test_format_parsing ... ok [INFO] [stdout] test complexity::metrics::tests::test_function_metrics ... ok [INFO] [stdout] test complexity::thresholds::tests::test_threshold_defaults ... ok [INFO] [stdout] test complexity::report::tests::test_format_html ... ok [INFO] [stdout] test complexity::thresholds::tests::test_check_cyclomatic ... ok [INFO] [stdout] test complexity::thresholds::tests::test_threshold_strict ... ok [INFO] [stdout] test config::cli::tests::test_config_set_max_complexity ... ok [INFO] [stdout] test config::migrate::converters::eslint::tests::test_generate_eslint_js ... ok [INFO] [stdout] test config::cli::tests::test_parse_scalar_value ... ok [INFO] [stdout] test config::migrate::converters::prettier::tests::test_generate_prettier_js ... ok [INFO] [stdout] test complexity::report::tests::test_format_json ... ok [INFO] [stdout] test cache::storage::tests::test_cache_save_load ... ok [INFO] [stdout] test config::migrate::detect::tests::test_detect_eslint_json_config ... ok [INFO] [stdout] test config::migrate::detect::tests::test_detect_black_config ... ok [INFO] [stdout] test config::migrate::converters::python::tests::test_generate_ruff_toml_from_black ... ok [INFO] [stdout] test config::migrate::converters::python::tests::test_generate_ruff_toml_with_isort ... ok [INFO] [stdout] test config::migrate::parsers::eslint::tests::test_parse_json_config ... ok [INFO] [stdout] test config::migrate::parsers::eslint::tests::test_parse_rule_value ... ok [INFO] [stdout] test config::cli::tests::test_config_add_includes ... ok [INFO] [stdout] test config::migrate::detect::tests::test_detect_no_configs ... ok [INFO] [stdout] test config::migrate::parsers::python::tests::test_parse_black_config ... ok [INFO] [stdout] test config::migrate::detect::tests::test_detect_prettier_config ... ok [INFO] [stdout] test config::cli::tests::test_config_add_dedup ... ok [INFO] [stdout] test config::migrate::parsers::prettier::tests::test_to_js_object ... ok [INFO] [stdout] test config::migrate::parsers::prettier::tests::test_parse_json_config ... ok [INFO] [stdout] test config::resolver::tests::test_config_source_priority ... ok [INFO] [stdout] test config::resolver::tests::test_get_config_names_python ... ok [INFO] [stdout] test config::resolver::tests::test_config_resolver_sorting ... ok [INFO] [stdout] test config::resolver::tests::test_get_plugin_config ... ok [INFO] [stdout] test config::resolver::tests::test_get_config_names_typescript ... ok [INFO] [stdout] test config::migrate::parsers::python::tests::test_parse_isort_config ... ok [INFO] [stdout] test config::migrate::validate::tests::test_validate_suggests_linthis_init ... ok [INFO] [stdout] test config::migrate::validate::tests::test_validate_warns_about_multiple_eslint_configs ... ok [INFO] [stdout] test config::resolver::tests::test_builder ... ok [INFO] [stdout] test config::resolver::tests::test_get_plugin_config_not_found ... ok [INFO] [stdout] test config::tests::test_config_default ... ok [INFO] [stdout] test config::resolver::tests::test_is_plugin_config_path ... ok [INFO] [stdout] test config::tests::test_backward_compatibility ... ok [INFO] [stdout] test config::resolver::tests::test_local_config_has_priority ... ok [INFO] [stdout] test config::tests::test_built_in_defaults ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_len_and_is_empty ... ok [INFO] [stdout] test config::tests::test_config_merge ... ok [INFO] [stdout] test config::tests::test_config_merge_languages ... ok [INFO] [stdout] test config::resolver::tests::test_plugin_config_used_when_no_local ... ok [INFO] [stdout] test config::tests::test_config_merge_empty_languages_preserves ... ok [INFO] [stdout] test config::tests::test_config_merge_includes_extends ... ok [INFO] [stdout] test config::tests::test_config_merge_verbose ... ok [INFO] [stdout] test config::tests::test_config_new ... ok [INFO] [stdout] test config::tests::test_cpp_fn_length_from_toml ... ok [INFO] [stdout] test config::tests::test_cpp_language_config_from_toml ... ok [INFO] [stdout] test config::tests::test_fn_length_merge_order_plugin_then_project ... ok [INFO] [stdout] test config::tests::test_fn_length_no_plugin_falls_back_to_none ... ok [INFO] [stdout] test config::tests::test_generate_default_toml_has_expected_values ... ok [INFO] [stdout] test config::tests::test_fn_length_project_config_without_plugin ... ok [INFO] [stdout] test config::tests::test_language_overrides_merge ... ok [INFO] [stdout] test config::tests::test_get_plugin_sources_empty ... ok [INFO] [stdout] test config::tests::test_language_overrides_merge_none_preserves ... ok [INFO] [stdout] test config::tests::test_get_plugin_sources_with_plugins ... ok [INFO] [stdout] test config::tests::test_generate_default_toml_is_valid ... ok [INFO] [stdout] test config::tests::test_fn_length_project_config_overrides_plugin ... ok [INFO] [stdout] test config::tests::test_new_field_names ... ok [INFO] [stdout] test config::tests::test_objectivec_alias ... ok [INFO] [stdout] test config::tests::test_oc_fn_length_default_is_none ... ok [INFO] [stdout] test config::tests::test_language_overrides_simplified_syntax ... ok [INFO] [stdout] test config::tests::test_oc_fn_length_from_toml ... ok [INFO] [stdout] test config::tests::test_plugin_config_default ... ok [INFO] [stdout] test config::tests::test_project_config_path ... ok [INFO] [stdout] test config::tests::test_plugin_source_enabled_default ... ok [INFO] [stdout] test config::tests::test_plugin_source_with_all_fields ... ok [INFO] [stdout] test config::tests::test_source_config_default ... ok [INFO] [stdout] test config::tests::test_source_config_from_toml ... ok [INFO] [stdout] test fixers::cpplint::tests::test_fix_comment_spacing_cpplint ... ok [INFO] [stdout] test fixers::cpplint::tests::test_fix_comment_spacing_preserves_url ... ok [INFO] [stdout] test fixers::cpplint::tests::test_fix_comment_spacing_url_and_comment ... ok [INFO] [stdout] test fixers::cpplint::tests::test_fix_comment_spacing_triple_slash ... ok [INFO] [stdout] test fixers::cpplint::tests::test_fix_todo_from_error ... ok [INFO] [stdout] test fixers::cpplint::tests::test_insert_header_guard_after_block_comment ... ok [INFO] [stdout] test fixers::cpplint::tests::test_insert_missing_header_guard ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_already_has_space ... ok [INFO] [stdout] test fixers::cpplint::tests::test_parse_whitespace_comments_error ... ok [INFO] [stdout] test fixers::cpplint::tests::test_parse_missing_header_guard ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_empty_comment ... ok [INFO] [stdout] test fixers::cpplint::tests::test_fix_header_guard_from_error ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_basic ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_chinese ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_char_literal ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_escaped_quote ... ok [INFO] [stdout] test fixers::cpplint::tests::test_parse_cpplint_output ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_preserves_multiple_urls ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_preserves_url ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_quote_in_char_literal ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_string_with_slashes ... ok [INFO] [stdout] test fixers::source::tests::test_fix_lone_semicolon_with_whitespace ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_url_and_comment ... ok [INFO] [stdout] test fixers::source::tests::test_fix_lone_semicolon_removes ... ok [INFO] [stdout] test fixers::source::tests::test_fix_long_comments_breaks_long_line ... ok [INFO] [stdout] test fixers::source::tests::test_fix_lone_semicolon_keeps_valid ... ok [INFO] [stdout] test fixers::source::tests::test_fix_long_comments_short_line ... ok [INFO] [stdout] test fixers::source::tests::test_fix_pragma_keeps_normal ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_after_paren ... ok [INFO] [stdout] test fixers::source::tests::test_fix_long_comments_chinese ... ok [INFO] [stdout] test fixers::source::tests::test_fix_comment_spacing_triple_slash ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_after_space ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_at_line_start ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_no_false_positive_dns ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_no_false_positive_part_of_word ... ok [INFO] [stdout] test fixers::source::tests::test_fix_pragma_mark_separator ... ok [INFO] [stdout] test fixers::source::tests::test_fix_pragma_with_section_name ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_no_false_positive_lowercase ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_nsstring ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_nsarray ... ok [INFO] [stdout] test fixers::source::tests::test_is_in_cpp_string ... ok [INFO] [stdout] test fixers::cpplint::tests::test_fix_endif_line ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_ns_type_pure_cpp ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_implementation ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_interface ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_array_literal ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_class_method ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_instance_method ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nonnull ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_ns_options ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nserror ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_ns_enum ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nsstring ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nsdictionary ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nsuinteger ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nsarray ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_protocol ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nsurl ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_string_literal ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nullable ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_pure_cpp ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nsinteger ... ok [INFO] [stdout] test formatters::cpp::tests::test_contains_objc_syntax_nsobject ... ok [INFO] [stdout] test formatters::cpp::tests::test_detect_language_cpp_file ... ok [INFO] [stdout] test formatters::cpp::tests::test_detect_language_h_file_cpp ... ok [INFO] [stdout] test gitignore::tests::test_generate_gitignore_multiple_languages ... ok [INFO] [stdout] test formatters::cpp::tests::test_detect_language_h_file_oc_interface ... ok [INFO] [stdout] test formatters::cpp::tests::test_detect_language_h_file_oc_property ... ok [INFO] [stdout] test formatters::cpp::tests::test_detect_language_m_file ... ok [INFO] [stdout] test formatters::cpp::tests::test_detect_language_mm_file ... ok [INFO] [stdout] test gitignore::tests::test_detect_markers_empty ... ok [INFO] [stdout] test interactive::ai_fix::tests::test_ai_fix_result_default ... ok [INFO] [stdout] test gitignore::tests::test_generate_gitignore_with_node ... ok [INFO] [stdout] test gitignore::tests::test_generate_gitignore_no_markers ... ok [INFO] [stdout] test interactive::menu::tests::test_interactive_action_goto ... ok [INFO] [stdout] test interactive::menu::tests::test_interactive_result_default ... ok [INFO] [stdout] test interactive::ai_fix::tests::test_ai_fix_config_default ... ok [INFO] [stdout] test interactive::editor::tests::test_get_editor_default ... ok [INFO] [stdout] test interactive::menu::tests::test_interactive_action_clone ... ok [INFO] [stdout] test interactive::menu::tests::test_interactive_action_variants ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_eslint_disable ... ok [INFO] [stdout] test interactive::nolint::tests::test_describe_nolint_action ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_cpp_nolint_cpplint ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_cpp_nolint_empty ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_cpp_nolint_clang_tidy ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_java_suppress ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_python_noqa ... ok [INFO] [stdout] test interactive::ai_fix::tests::test_ai_fix_config_with_provider ... ok [INFO] [stdout] test interactive::nolint::tests::test_get_indentation ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_python_type_ignore ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_rust_allow ... ok [INFO] [stdout] test interactive::quickfix::tests::test_format_issue_quickfix_basic ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_rust_allow_short ... ok [INFO] [stdout] test interactive::quickfix::tests::test_generate_quickfix_empty ... ok [INFO] [stdout] test interactive::quickfix::tests::test_generate_quickfix_multiple ... ok [INFO] [stdout] test license::languages::go::tests::test_go_scanner_detect ... ok [INFO] [stdout] test license::languages::java::tests::test_java_scanner_detect ... ok [INFO] [stdout] test interactive::quickfix::tests::test_format_issue_quickfix_escapes_newlines ... ok [INFO] [stdout] test interactive::quickfix::tests::test_format_issue_quickfix_no_code ... ok [INFO] [stdout] test interactive::quickfix::tests::test_format_issue_quickfix_no_column ... ok [INFO] [stdout] test license::languages::python::tests::test_python_scanner_detect ... ok [INFO] [stdout] test license::languages::node::tests::test_node_scanner_detect ... ok [INFO] [stdout] test license::languages::rust::tests::test_rust_scanner_detect ... ok [INFO] [stdout] test license::policy::tests::test_policy_check_denied ... ok [INFO] [stdout] test license::policy::tests::test_policy_default ... ok [INFO] [stdout] test license::report::tests::test_report_format_from_str ... ok [INFO] [stdout] test license::policy::tests::test_license_category ... ok [INFO] [stdout] test license::policy::tests::test_policy_check_allowed ... ok [INFO] [stdout] test license::scanner::tests::test_license_scanner_creation ... ok [INFO] [stdout] test license::scanner::tests::test_package_license_new ... ok [INFO] [stdout] test license::scanner::tests::test_scan_options_default ... ok [INFO] [stdout] test license::scanner::tests::test_scan_result_default ... ok [INFO] [stdout] test license::spdx::tests::test_pattern_matching ... ok [INFO] [stdout] test license::report::tests::test_report_format ... ok [INFO] [stdout] test license::spdx::tests::test_spdx_from_str ... ok [INFO] [stdout] test license::policy::tests::test_policy_strict ... ok [INFO] [stdout] test license::spdx::tests::test_parse_expression ... ok [INFO] [stdout] test license::spdx::tests::test_spdx_is_copyleft ... ok [INFO] [stdout] test license::spdx::tests::test_spdx_is_permissive ... ok [INFO] [stdout] test lsp::diagnostics::tests::test_to_diagnostic ... ok [INFO] [stdout] test lsp::diagnostics::tests::test_diagnostic_with_suggestion ... ok [INFO] [stdout] test lsp::diagnostics::tests::test_severity_mapping ... ok [INFO] [stdout] test lsp::server::tests::test_lsp_mode_default ... ok [INFO] [stdout] test lsp::server::tests::test_lsp_mode_from_str ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_auto_sync_config_default ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_auto_sync_config_should_prompt ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_auto_sync_config_is_disabled ... ok [INFO] [stdout] test lsp::document::tests::test_document_lifecycle ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_auto_sync_config_validate ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_should_sync_never_synced ... ok [INFO] [stdout] test plugin::cache::tests::test_format_size ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_should_sync_disabled ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_update_and_get_last_sync_time ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_get_last_sync_time_none ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_time_since_last_sync ... ok [INFO] [stdout] test plugin::auto_sync::tests::test_should_sync_interval ... ok [INFO] [stdout] test plugin::cache::tests::test_is_cached_empty ... ok [INFO] [stdout] test plugin::config_manager::tests::test_remove_nonexistent ... ok [INFO] [stdout] test plugin::config_manager::tests::test_get_plugin_by_alias ... ok [INFO] [stdout] test plugin::cache::tests::test_url_to_cache_path ... ok [INFO] [stdout] test interactive::nolint::tests::test_generate_go_nolint ... ok [INFO] [stdout] test plugin::config_manager::tests::test_add_plugin ... ok [INFO] [stdout] test plugin::config_manager::tests::test_add_plugin_with_ref ... ok [INFO] [stdout] test plugin::config_manager::tests::test_add_duplicate_alias ... ok [INFO] [stdout] test plugin::fetcher::tests::test_https_to_ssh_url ... ok [INFO] [stdout] test plugin::fetcher::tests::test_looks_like_commit_hash ... ok [INFO] [stdout] test plugin::config_manager::tests::test_remove_plugin ... ok [INFO] [stdout] test plugin::manifest::tests::test_scaffold_manifest ... ok [INFO] [stdout] test plugin::registry::tests::test_builtin_registry_has_official ... ok [INFO] [stdout] test plugin::fetcher::tests::test_git_available ... ok [INFO] [stdout] test plugin::loader::tests::test_extract_configs ... ok [INFO] [stdout] test plugin::manifest::tests::test_parse_minimal_manifest ... ok [INFO] [stdout] test plugin::manifest::tests::test_parse_full_manifest ... ok [INFO] [stdout] test plugin::tests::test_name_from_url_github_ssh ... ok [INFO] [stdout] test plugin::registry::tests::test_resolve_url_passthrough ... ok [INFO] [stdout] test plugin::registry::tests::test_resolve_unknown_name ... ok [INFO] [stdout] test plugin::tests::test_name_from_url_no_git_suffix ... ok [INFO] [stdout] test plugin::tests::test_name_from_url_github_https ... ok [INFO] [stdout] test plugin::tests::test_name_from_url_simple_path ... ok [INFO] [stdout] test plugin::registry::tests::test_resolve_registry_name ... ok [INFO] [stdout] test plugin::tests::test_plugin_error_display_git_not_installed ... ok [INFO] [stdout] test plugin::tests::test_plugin_error_display_clone_failed ... ok [INFO] [stdout] test plugin::tests::test_plugin_error_display_incompatible_version ... ok [INFO] [stdout] test plugin::tests::test_plugin_error_display_invalid_manifest ... ok [INFO] [stdout] test plugin::tests::test_plugin_error_display_not_cached ... ok [INFO] [stdout] test plugin::tests::test_plugin_error_display_unknown_plugin ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_is_not_local_path ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_new_from_registry_name ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_new_from_ssh_url ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_new_from_https_url_no_git_suffix ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_new_from_local_path_absolute ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_new_from_local_path_parent ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_new_from_local_path_relative ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_with_ref ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_new_from_https_url ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_with_ref_branch ... ok [INFO] [stdout] test presets::tests::test_google_preset ... ok [INFO] [stdout] test presets::tests::test_airbnb_preset ... ok [INFO] [stdout] test reports::consistency::tests::test_consistency_analysis_empty ... ok [INFO] [stdout] test presets::tests::test_preset_name_parse ... ok [INFO] [stdout] test plugin::tests::test_plugin_source_with_ref_commit_hash ... ok [INFO] [stdout] test presets::tests::test_standard_preset ... ok [INFO] [stdout] test reports::consistency::tests::test_calculate_consistency_score ... ok [INFO] [stdout] test reports::html::tests::test_html_escape ... ok [INFO] [stdout] test reports::statistics::tests::test_format_human ... ok [INFO] [stdout] test reports::html::tests::test_generate_html_report_with_issues ... ok [INFO] [stdout] test reports::consistency::tests::test_consistency_analysis_with_issues ... ok [INFO] [stdout] test reports::html::tests::test_generate_html_report_empty ... ok [INFO] [stdout] test reports::html::tests::test_truncate_message ... ok [INFO] [stdout] test reports::statistics::tests::test_severity_counts_total ... ok [INFO] [stdout] test reports::templates::tests::test_generate_bar_chart_svg ... ok [INFO] [stdout] test reports::templates::tests::test_generate_trend_chart_svg ... ok [INFO] [stdout] test reports::templates::tests::test_html_report_template ... ok [INFO] [stdout] test reports::statistics::tests::test_statistics_from_run_result ... ok [INFO] [stdout] test reports::templates::tests::test_report_css_not_empty ... ok [INFO] [stdout] test reports::templates::tests::test_truncate_label ... ok [INFO] [stdout] test reports::trends::tests::test_trend_analysis_empty ... ok [INFO] [stdout] test reports::trends::tests::test_trend_analysis_improving ... ok [INFO] [stdout] test reports::trends::tests::test_parse_result_timestamp ... ok [INFO] [stdout] test review::analyzer::tests::test_determine_assessment_ready ... ok [INFO] [stdout] test reports::trends::tests::test_trend_direction_display ... ok [INFO] [stdout] test review::analyzer::tests::test_extract_json_plain ... ok [INFO] [stdout] test review::analyzer::tests::test_extract_json_with_surrounding_text ... ok [INFO] [stdout] test review::analyzer::tests::test_determine_assessment_needs_work ... ok [INFO] [stdout] test review::background::tests::test_review_status_display ... ok [INFO] [stdout] test review::background::tests::test_review_status_display_completed ... ok [INFO] [stdout] test review::analyzer::tests::test_parse_review_response ... ok [INFO] [stdout] test review::background::tests::test_timestamp_is_numeric ... ok [INFO] [stdout] test review::diff::tests::test_chunk_diff_single_chunk ... ok [INFO] [stdout] test review::diff::tests::test_estimate_tokens ... ok [INFO] [stdout] test review::diff::tests::test_parse_binary_file ... ok [INFO] [stdout] test review::diff::tests::test_hunk_header_parsing ... ok [INFO] [stdout] test review::diff::tests::test_parse_deleted_file ... ok [INFO] [stdout] test review::diff::tests::test_parse_multi_file_diff ... ok [INFO] [stdout] test review::diff::tests::test_parse_empty_diff ... ok [INFO] [stdout] test review::diff::tests::test_parse_single_file_diff ... ok [INFO] [stdout] test review::diff::tests::test_parse_new_file ... ok [INFO] [stdout] test review::diff::tests::test_parse_renamed_file ... ok [INFO] [stdout] test review::fixer::tests::test_generate_and_apply_fixes_no_fixable ... ok [INFO] [stdout] test review::notifier::tests::test_build_template_vars ... ok [INFO] [stdout] test review::notifier::tests::test_expand_template_no_match ... ok [INFO] [stdout] test review::fixer::tests::test_apply_fix_multi_line ... ok [INFO] [stdout] test review::platform::tests::test_expand_template ... ok [INFO] [stdout] test reports::trends::tests::test_trend_analysis_degrading ... ok [INFO] [stdout] test review::fixer::tests::test_apply_fix_single_line ... ok [INFO] [stdout] test review::analyzer::tests::test_determine_assessment_critical ... ok [INFO] [stdout] test review::analyzer::tests::test_extract_json_from_markdown ... ok [INFO] [stdout] test review::platform::tests::test_extract_domain_ssh ... ok [INFO] [stdout] test review::platform::tests::test_extract_domain_ssh_scheme ... ok [INFO] [stdout] test review::platform::tests::test_resolve_platform_builtin ... ok [INFO] [stdout] test review::platform::tests::test_extract_domain_https ... ok [INFO] [stdout] test review::prompts::tests::test_build_review_prompt_single_file ... ok [INFO] [stdout] test review::platform::tests::test_resolve_platform_user_override ... ok [INFO] [stdout] test review::prompts::tests::test_build_review_prompt_skips_binary ... ok [INFO] [stdout] test review::platform::tests::test_sanitize_branch_name ... ok [INFO] [stdout] test review::notifier::tests::test_expand_template ... ok [INFO] [stdout] test review::reviewer::tests::test_resolve_reviewers_config_fallback ... ok [INFO] [stdout] test review::reviewer::tests::test_resolve_reviewers_empty_cli ... ok [INFO] [stdout] test rules::config::tests::test_custom_rule_applies_to_all ... ok [INFO] [stdout] test rules::config::tests::test_custom_rule_builder ... ok [INFO] [stdout] test review::prompts::tests::test_system_prompt_contains_dimensions ... ok [INFO] [stdout] test review::report::tests::test_notification_summary ... ok [INFO] [stdout] test review::report::tests::test_markdown_report_contains_sections ... ok [INFO] [stdout] test review::report::tests::test_empty_result_report ... ok [INFO] [stdout] test review::reviewer::tests::test_resolve_reviewers_cli_priority ... ok [INFO] [stdout] test rules::config::tests::test_deserialize_rules_config ... ok [INFO] [stdout] test review::report::tests::test_markdown_report_issue_formatting ... ok [INFO] [stdout] test rules::config::tests::test_rules_config_default ... ok [INFO] [stdout] test rules::config::tests::test_rules_config_merge ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_empty ... ok [INFO] [stdout] test rules::config::tests::test_severity_override_to_severity ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_disabled_rule ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_column_tracking ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_simple_pattern ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_with_severity ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_extension_filter ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_invalid_regex ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_language_filter ... ok [INFO] [stdout] test rules::custom_checker::tests::test_custom_checker_with_suggestion ... ok [INFO] [stdout] test rules::filter::tests::test_filter_severity_override ... ok [INFO] [stdout] test rules::filter::tests::test_filter_issues ... ok [INFO] [stdout] test rules::custom_checker::tests::test_rule_info ... ok [INFO] [stdout] test rules::filter::tests::test_filter_disabled_exact ... ok [INFO] [stdout] test rules::filter::tests::test_filter_disabled_prefix ... ok [INFO] [stdout] test security::advisories::tests::test_advisory_database ... ok [INFO] [stdout] test rules::filter::tests::test_merge_language_config ... ok [INFO] [stdout] test security::languages::node::tests::test_node_scanner_detect ... ok [INFO] [stdout] test rules::filter::tests::test_filter_stats ... ok [INFO] [stdout] test security::languages::go::tests::test_go_scanner_detect ... ok [INFO] [stdout] test security::languages::java::tests::test_java_scanner_detect ... ok [INFO] [stdout] test security::sast::tools::secrets::tests::detects_ascii_repeating_pattern ... ok [INFO] [stdout] test security::languages::rust::tests::test_rust_scanner_detect ... ok [INFO] [stdout] test security::languages::python::tests::test_python_scanner_detect ... ok [INFO] [stdout] test security::report::tests::test_report_format ... ok [INFO] [stdout] test security::advisories::tests::test_suppression_list ... ok [INFO] [stdout] test security::sast::tools::secrets::tests::handles_multibyte_chars_in_repeating_pattern_check ... ok [INFO] [stdout] test security::scanner::tests::test_scan_result_default ... ok [INFO] [stdout] test security::sast::tools::secrets::tests::rejects_nonrepeating_mixed_content ... ok [INFO] [stdout] test security::sast::tools::secrets::tests::detects_multibyte_repeating_pattern ... ok [INFO] [stdout] test security::scanner::tests::test_scan_options_default ... ok [INFO] [stdout] test self_update::tests::test_get_current_version ... ok [INFO] [stdout] test security::vulnerability::tests::test_severity_from_str ... ok [INFO] [stdout] test security::vulnerability::tests::test_severity_ordering ... ok [INFO] [stdout] test security::vulnerability::tests::test_severity_threshold ... ok [INFO] [stdout] test self_update::tests::test_self_update_config_should_prompt ... ok [INFO] [stdout] test self_update::tests::test_self_update_config_default ... ok [INFO] [stdout] test self_update::tests::test_self_update_config_is_disabled ... ok [INFO] [stdout] test self_update::tests::test_self_update_config_validate ... ok [INFO] [stdout] test tui::app::tests::test_app_state_transitions ... ok [INFO] [stdout] test tui::app::tests::test_focus_switching ... ok [INFO] [stdout] test self_update::tests::test_should_check_never_checked ... ok [INFO] [stdout] test tui::event::tests::test_navigation_keys ... ok [INFO] [stdout] test tui::event::tests::test_quit_with_ctrl_c ... ok [INFO] [stdout] test tui::event::tests::test_quit_with_q ... ok [INFO] [stdout] test tui::event::tests::test_rerun_request ... ok [INFO] [stdout] test tui::event::tests::test_tab_switches_focus ... ok [INFO] [stdout] test tui::app::tests::test_navigation ... ok [INFO] [stdout] test tui::event::tests::test_help_toggle ... ok [INFO] [stdout] test tui::ui::tests::test_format_path_short ... ok [INFO] [stdout] test tui::app::tests::test_force_rerun ... ok [INFO] [stdout] test tui::ui::tests::test_format_path_long ... ok [INFO] [stdout] test tui::ui::tests::test_severity_color ... ok [INFO] [stdout] test tui::widgets::file_tree::tests::test_truncate_path ... ok [INFO] [stdout] test tui::widgets::file_tree::tests::test_status_display ... ok [INFO] [stdout] test tui::widgets::issue_list::tests::test_severity_display ... ok [INFO] [stdout] test self_update::tests::test_update_and_get_last_check_time ... ok [INFO] [stdout] test utils::language::tests::test_extension_mapping ... ok [INFO] [stdout] test utils::language::tests::test_parse_languages ... ok [INFO] [stdout] test self_update::tests::test_version_comparison ... ok [INFO] [stdout] test utils::output::tests::test_format_issue_github_actions ... ok [INFO] [stdout] test utils::types::tests::test_format_result_changed ... ok [INFO] [stdout] test utils::types::tests::test_format_result_error ... ok [INFO] [stdout] test utils::types::tests::test_format_result_unchanged ... ok [INFO] [stdout] test utils::types::tests::test_lint_issue_new ... ok [INFO] [stdout] test utils::types::tests::test_lint_issue_with_code ... ok [INFO] [stdout] test utils::types::tests::test_lint_issue_with_column ... ok [INFO] [stdout] test utils::types::tests::test_lint_issue_with_language ... ok [INFO] [stdout] test utils::types::tests::test_lint_issue_with_source ... ok [INFO] [stdout] test utils::types::tests::test_lint_issue_with_suggestion ... ok [INFO] [stdout] test utils::types::tests::test_run_mode_kind_default ... ok [INFO] [stdout] test utils::types::tests::test_run_result_add_format_result_changed ... ok [INFO] [stdout] test utils::types::tests::test_run_result_add_format_result_unchanged ... ok [INFO] [stdout] test utils::output::tests::test_format_issue_human ... ok [INFO] [stdout] test utils::types::tests::test_format_result_with_diff ... ok [INFO] [stdout] test utils::types::tests::test_lint_issue_builder_chaining ... ok [INFO] [stdout] test tui::widgets::help::tests::test_centered_rect ... ok [INFO] [stdout] test utils::types::tests::test_run_result_add_issue ... ok [INFO] [stdout] test utils::types::tests::test_run_result_calculate_exit_code_format_error ... ok [INFO] [stdout] test utils::types::tests::test_run_result_calculate_exit_code_success ... ok [INFO] [stdout] test utils::types::tests::test_run_result_calculate_exit_code_with_warning ... ok [INFO] [stdout] test utils::types::tests::test_run_result_count_files_with_issues ... ok [INFO] [stdout] test utils::types::tests::test_run_result_calculate_exit_code_with_error ... ok [INFO] [stdout] test utils::types::tests::test_severity_display_warning ... ok [INFO] [stdout] test utils::types::tests::test_severity_equality ... ok [INFO] [stdout] test utils::unicode::tests::test_break_text_at_space ... ok [INFO] [stdout] test utils::unicode::tests::test_break_text_chinese_punctuation ... ok [INFO] [stdout] test utils::unicode::tests::test_break_text_no_break_point ... ok [INFO] [stdout] test utils::unicode::tests::test_break_text_short ... ok [INFO] [stdout] test utils::unicode::tests::test_column_width_ascii ... ok [INFO] [stdout] test utils::unicode::tests::test_column_width_cjk ... ok [INFO] [stdout] test utils::unicode::tests::test_column_width_empty ... ok [INFO] [stdout] test utils::types::tests::test_run_result_count_files_with_issues_empty ... ok [INFO] [stdout] test utils::types::tests::test_severity_display_error ... ok [INFO] [stdout] test utils::types::tests::test_run_result_new ... ok [INFO] [stdout] test utils::types::tests::test_severity_display_info ... ok [INFO] [stdout] test utils::unicode::tests::test_column_width_mixed ... ok [INFO] [stdout] test utils::unicode::tests::test_is_wide_char ... ok [INFO] [stdout] test utils::unicode::tests::test_is_wide_char_cjk_ranges ... ok [INFO] [stdout] test utils::unicode::tests::test_is_wide_char_japanese ... ok [INFO] [stdout] test utils::unicode::tests::test_is_wide_char_korean ... ok [INFO] [stdout] test utils::walker::tests::test_is_excluded ... ok [INFO] [stdout] test utils::walker::tests::test_matches_language_filter ... ok [INFO] [stdout] test utils::unicode::tests::test_column_width_fullwidth ... ok [INFO] [stdout] test utils::unicode::tests::test_column_width_japanese ... ok [INFO] [stdout] test utils::unicode::tests::test_column_width_korean ... ok [INFO] [stdout] test watch::debounce::tests::test_debouncer_flush ... ok [INFO] [stdout] test watch::debounce::tests::test_debouncer_remove_not_debounced ... ok [INFO] [stdout] test watch::state::tests::test_file_info_creation ... ok [INFO] [stdout] test watch::state::tests::test_file_info_update ... ok [INFO] [stdout] test watch::state::tests::test_file_status_symbols ... ok [INFO] [stdout] test watch::state::tests::test_watch_state_counts ... ok [INFO] [stdout] test watch::state::tests::test_watch_state_recent_changes ... ok [INFO] [stdout] test watch::watcher::tests::test_file_watcher_creation ... ok [INFO] [stdout] test watch::watcher::tests::test_should_skip_path ... ok [INFO] [stdout] test watch::watcher::tests::test_watch_event_lintable ... ok [INFO] [stdout] test security::scanner::tests::test_security_scanner_creation ... ok [INFO] [stdout] test config::tests::test_fn_length_plugin_linthis_toml_loaded ... FAILED [INFO] [stdout] test watch::debounce::tests::test_debouncer_multiple_files ... ok [INFO] [stdout] test watch::debounce::tests::test_debouncer_basic ... ok [INFO] [stdout] test watch::debounce::tests::test_time_until_ready ... ok [INFO] [stdout] test watch::watcher::tests::test_file_watcher_detects_changes ... ok [INFO] [stdout] test watch::debounce::tests::test_debouncer_coalesce ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- config::tests::test_fn_length_plugin_linthis_toml_loaded stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'config::tests::test_fn_length_plugin_linthis_toml_loaded' (309) panicked at src/config/mod.rs:2163:9: [INFO] [stdout] assertion `left == right` failed [INFO] [stdout] left: None [INFO] [stdout] right: Some(60) [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x627db701ac0a - std[e28293b1aa0f68bd]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x627db701ac0a - std[e28293b1aa0f68bd]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x627db701ac0a - std[e28293b1aa0f68bd]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x627db701ac0a - <::print::DisplayBacktrace as core[c1f1a4ba060b9bfa]::fmt::Display>::fmt [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x627db70346fa - ::fmt [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x627db70346fa - core[c1f1a4ba060b9bfa]::fmt::write [INFO] [stdout] 6: 0x627db701ffa2 - std[e28293b1aa0f68bd]::io::default_write_fmt::> [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x627db701ffa2 - as std[e28293b1aa0f68bd]::io::Write>::write_fmt [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x627db6ff591f - ::print [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x627db6ff591f - std[e28293b1aa0f68bd]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x627db7011579 - std[e28293b1aa0f68bd]::panicking::default_hook [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x627db68a749c - core[c1f1a4ba060b9bfa]::ops::function::Fn<(&'a std[e28293b1aa0f68bd]::panic::PanicHookInfo<'b>,), Output = ()> + core[c1f1a4ba060b9bfa]::marker::Sync + core[c1f1a4ba060b9bfa]::marker::Send> as core[c1f1a4ba060b9bfa]::ops::function::Fn<(&std[e28293b1aa0f68bd]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x627db68a749c - test[273d7611820c9051]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x627db70117f2 - core[c1f1a4ba060b9bfa]::ops::function::Fn<(&'a std[e28293b1aa0f68bd]::panic::PanicHookInfo<'b>,), Output = ()> + core[c1f1a4ba060b9bfa]::marker::Sync + core[c1f1a4ba060b9bfa]::marker::Send> as core[c1f1a4ba060b9bfa]::ops::function::Fn<(&std[e28293b1aa0f68bd]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x627db70117f2 - std[e28293b1aa0f68bd]::panicking::panic_with_hook [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x627db6ff59d8 - std[e28293b1aa0f68bd]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x627db6fecea9 - std[e28293b1aa0f68bd]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x627db6ff6a6d - __rustc[b7974e8690430dd9]::rust_begin_unwind [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x627db703508c - core[c1f1a4ba060b9bfa]::panicking::panic_fmt [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x627db7034f13 - core[c1f1a4ba060b9bfa]::panicking::assert_failed_inner [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/panicking.rs:439:17 [INFO] [stdout] 20: 0x627db5d8cc6a - core::panicking::assert_failed::ha12426a53f0ef5a2 [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/panicking.rs:394:5 [INFO] [stdout] 21: 0x627db604c4af - linthis::config::tests::test_fn_length_plugin_linthis_toml_loaded::h12c7325488560e8e [INFO] [stdout] at /opt/rustwide/workdir/src/config/mod.rs:2163:9 [INFO] [stdout] 22: 0x627db604c637 - linthis::config::tests::test_fn_length_plugin_linthis_toml_loaded::{{closure}}::hb16b118c4ae6044d [INFO] [stdout] at /opt/rustwide/workdir/src/config/mod.rs:2151:51 [INFO] [stdout] 23: 0x627db632b7c6 - core::ops::function::FnOnce::call_once::h1ef10f2413cc35bb [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x627db689b57b - core[c1f1a4ba060b9bfa]::result::Result<(), alloc[fdfd2bd8633a6659]::string::String> as core[c1f1a4ba060b9bfa]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x627db689b57b - test[273d7611820c9051]::__rust_begin_short_backtrace::, fn() -> core[c1f1a4ba060b9bfa]::result::Result<(), alloc[fdfd2bd8633a6659]::string::String>> [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/test/src/lib.rs:663:18 [INFO] [stdout] 26: 0x627db68a7f6b - test[273d7611820c9051]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/test/src/lib.rs:686:74 [INFO] [stdout] 27: 0x627db68a7f6b - as core[c1f1a4ba060b9bfa]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 28: 0x627db68a7f6b - std[e28293b1aa0f68bd]::panicking::catch_unwind::do_call::, core[c1f1a4ba060b9bfa]::result::Result<(), alloc[fdfd2bd8633a6659]::string::String>> [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:581:40 [INFO] [stdout] 29: 0x627db68a7f6b - std[e28293b1aa0f68bd]::panicking::catch_unwind::, core[c1f1a4ba060b9bfa]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:544:19 [INFO] [stdout] 30: 0x627db68a7f6b - std[e28293b1aa0f68bd]::panic::catch_unwind::, core[c1f1a4ba060b9bfa]::result::Result<(), alloc[fdfd2bd8633a6659]::string::String>> [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panic.rs:359:14 [INFO] [stdout] 31: 0x627db68a7f6b - test[273d7611820c9051]::run_test_in_process [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/test/src/lib.rs:686:27 [INFO] [stdout] 32: 0x627db68a7f6b - test[273d7611820c9051]::run_test::{closure#0} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/test/src/lib.rs:607:43 [INFO] [stdout] 33: 0x627db68a3684 - test[273d7611820c9051]::run_test::{closure#1} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/test/src/lib.rs:637:41 [INFO] [stdout] 34: 0x627db68a3684 - std[e28293b1aa0f68bd]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 35: 0x627db68aab72 - std[e28293b1aa0f68bd]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 36: 0x627db68aab72 - ::{closure#1}::{closure#0}> as core[c1f1a4ba060b9bfa]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 37: 0x627db68aab72 - std[e28293b1aa0f68bd]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:581:40 [INFO] [stdout] 38: 0x627db68aab72 - std[e28293b1aa0f68bd]::panicking::catch_unwind::<(), core[c1f1a4ba060b9bfa]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panicking.rs:544:19 [INFO] [stdout] 39: 0x627db68aab72 - std[e28293b1aa0f68bd]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/panic.rs:359:14 [INFO] [stdout] 40: 0x627db68aab72 - std[e28293b1aa0f68bd]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 41: 0x627db68aab72 - ::{closure#1} as core[c1f1a4ba060b9bfa]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 42: 0x627db7019cbf - + core[c1f1a4ba060b9bfa]::marker::Send> as core[c1f1a4ba060b9bfa]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 43: 0x627db7019cbf - ::new::thread_start [INFO] [stdout] at /rustc/59807616e1fa2540724bfbac14d7976d7e4a3860/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 44: 0x79d8688b2aa4 - [INFO] [stdout] 45: 0x79d86893fa64 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] config::tests::test_fn_length_plugin_linthis_toml_loaded [INFO] [stdout] [INFO] [stdout] test result: FAILED. 620 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.45s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] running `Command { std: "docker" "inspect" "e231d3d74232b786d07449f3c02eb71bac4d68d203c90d2a5732043c62dd26c1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e231d3d74232b786d07449f3c02eb71bac4d68d203c90d2a5732043c62dd26c1", kill_on_drop: false }` [INFO] [stdout] e231d3d74232b786d07449f3c02eb71bac4d68d203c90d2a5732043c62dd26c1