[INFO] fetching crate valknut-rs 1.2.1...
[INFO] testing valknut-rs-1.2.1 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-8
[INFO] extracting crate valknut-rs 1.2.1 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate valknut-rs 1.2.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate valknut-rs 1.2.1
[INFO] tweaked toml for crates.io crate valknut-rs 1.2.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate valknut-rs 1.2.1 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate valknut-rs 1.2.1 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded config v0.13.4
[INFO] [stderr]   Downloaded vte_generate_state_changes v0.1.2
[INFO] [stderr]   Downloaded tree-sitter v0.25.9
[INFO] [stderr]   Downloaded jsonrpsee-core v0.21.0
[INFO] [stderr]   Downloaded quickcheck_macros v1.1.0
[INFO] [stderr]   Downloaded tree-sitter-javascript v0.20.0
[INFO] [stderr]   Downloaded ansitok v0.2.0
[INFO] [stderr]   Downloaded nalgebra v0.32.6
[INFO] [stderr]   Downloaded assert_cmd v2.0.17
[INFO] [stderr]   Downloaded ordered-multimap v0.4.3
[INFO] [stderr]   Downloaded dialoguer v0.11.0
[INFO] [stderr]   Downloaded statrs v0.16.1
[INFO] [stderr]   Downloaded proc-macro-crate v2.0.2
[INFO] [stderr]   Downloaded packed_simd v0.3.9
[INFO] [stderr]   Downloaded dlv-list v0.3.0
[INFO] [stderr]   Downloaded wasm_sync v0.1.2
[INFO] [stderr]   Downloaded papergrid v0.10.0
[INFO] [stderr]   Downloaded edit-distance v2.1.3
[INFO] [stderr]   Downloaded tabled v0.14.0
[INFO] [stderr]   Downloaded ansi-str v0.8.0
[INFO] [stderr]   Downloaded rust-ini v0.18.0
[INFO] [stderr]   Downloaded tree-sitter-rust v0.20.3
[INFO] [stderr]   Downloaded jsonrpsee-proc-macros v0.21.0
[INFO] [stderr]   Downloaded jsonrpsee v0.21.0
[INFO] [stderr]   Downloaded hyperloglog v1.0.2
[INFO] [stderr]   Downloaded deprecate-until v0.1.1
[INFO] [stderr]   Downloaded jsonrpsee-server v0.21.0
[INFO] [stderr]   Downloaded vte v0.10.1
[INFO] [stderr]   Downloaded libredox v0.1.9
[INFO] [stderr]   Downloaded probabilistic-collections v0.7.0
[INFO] [stderr]   Downloaded toml_edit v0.20.2
[INFO] [stderr]   Downloaded tree-sitter-typescript v0.20.3
[INFO] [stderr]   Downloaded tree-sitter-python v0.20.3
[INFO] [stderr]   Downloaded jemallocator v0.5.4
[INFO] [stderr]   Downloaded mimalloc v0.1.48
[INFO] [stderr]   Downloaded rand_xorshift v0.2.0
[INFO] [stderr]   Downloaded tabled_derive v0.6.0
[INFO] [stderr]   Downloaded libmimalloc-sys v0.1.44
[INFO] [stderr]   Downloaded jemalloc-sys v0.5.4+5.3.0-patched
[INFO] [stderr]   Downloaded webpki-roots v1.0.2
[INFO] [stderr]   Downloaded pathfinding v4.14.0
[INFO] [stderr]   Downloaded route-recognizer v0.3.1
[INFO] [stderr]   Downloaded jsonrpsee-types v0.21.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bc3d031dfd80642afd57bcf00570bb186fead285dc32dd01cebdf74f522c8ae5
[INFO] running `Command { std: "docker" "start" "-a" "bc3d031dfd80642afd57bcf00570bb186fead285dc32dd01cebdf74f522c8ae5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bc3d031dfd80642afd57bcf00570bb186fead285dc32dd01cebdf74f522c8ae5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc3d031dfd80642afd57bcf00570bb186fead285dc32dd01cebdf74f522c8ae5", kill_on_drop: false }`
[INFO] [stdout] bc3d031dfd80642afd57bcf00570bb186fead285dc32dd01cebdf74f522c8ae5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 64083a3d555ee7d080fe8f11e0b8608dae6070bdec449464c19d92b9a963891d
[INFO] running `Command { std: "docker" "start" "-a" "64083a3d555ee7d080fe8f11e0b8608dae6070bdec449464c19d92b9a963891d", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling find-msvc-tools v0.1.1
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling cc v1.2.36
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling indexmap v2.11.1
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling serde_json v1.0.143
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling pest v2.8.1
[INFO] [stderr]    Compiling regex-automata v0.4.10
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tree-sitter v0.20.10
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling anyhow v1.0.99
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling pest_meta v2.8.1
[INFO] [stderr]    Compiling vte_generate_state_changes v0.1.2
[INFO] [stderr]    Compiling arrayvec v0.5.2
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling vte v0.10.1
[INFO] [stderr]    Compiling pest_generator v2.8.1
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling regex v1.11.2
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling toml_datetime v0.6.3
[INFO] [stderr]    Compiling tree-sitter v0.25.9
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]    Compiling unicode-width v0.2.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling toml_edit v0.20.2
[INFO] [stderr]    Compiling sha-1 v0.9.8
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling pest_derive v2.8.1
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling ansitok v0.2.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling jsonrpsee-types v0.21.0
[INFO] [stderr]    Compiling libmimalloc-sys v0.1.44
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling dlv-list v0.3.0
[INFO] [stderr]    Compiling wasm_sync v0.1.2
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling bytecount v0.6.9
[INFO] [stderr]    Compiling portable-atomic v1.11.1
[INFO] [stderr]    Compiling anstyle-query v1.1.4
[INFO] [stderr]    Compiling ordered-multimap v0.4.3
[INFO] [stderr]    Compiling anstream v0.6.20
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling proc-macro-crate v2.0.2
[INFO] [stderr]    Compiling ansi-str v0.8.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling soketto v0.7.1
[INFO] [stderr]    Compiling pin-project v1.1.10
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling simba v0.6.0
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling nalgebra-macros v0.1.0
[INFO] [stderr]    Compiling tree-sitter-rust v0.20.3
[INFO] [stderr]    Compiling tree-sitter-typescript v0.20.3
[INFO] [stderr]    Compiling tree-sitter-python v0.20.3
[INFO] [stderr]    Compiling tree-sitter-go v0.20.0
[INFO] [stderr]    Compiling tree-sitter-javascript v0.20.0
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling route-recognizer v0.3.1
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling clap_builder v4.5.47
[INFO] [stderr]    Compiling wyz v0.5.1
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling ron v0.7.1
[INFO] [stderr]    Compiling papergrid v0.10.0
[INFO] [stderr]    Compiling tempfile v3.22.0
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling nalgebra v0.29.0
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling deprecate-until v0.1.1
[INFO] [stderr]    Compiling tabled_derive v0.6.0
[INFO] [stderr]    Compiling jsonrpsee-proc-macros v0.21.0
[INFO] [stderr]    Compiling rust-ini v0.18.0
[INFO] [stderr]    Compiling json5 v0.4.1
[INFO] [stderr]    Compiling simba v0.8.1
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling rand_xorshift v0.2.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling integer-sqrt v0.1.5
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling funty v2.0.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling nu-ansi-term v0.50.1
[INFO] [stderr]    Compiling unicode-linebreak v0.1.5
[INFO] [stderr]    Compiling smawk v0.3.2
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling shell-words v1.1.0
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]    Compiling dialoguer v0.11.0
[INFO] [stderr]    Compiling textwrap v0.16.2
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling config v0.13.4
[INFO] [stderr]    Compiling tracing-subscriber v0.3.20
[INFO] [stderr]    Compiling bitvec v1.0.1
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling twox-hash v1.6.3
[INFO] [stderr]    Compiling probabilistic-collections v0.7.0
[INFO] [stderr]    Compiling pathfinding v4.14.0
[INFO] [stderr]    Compiling jsonrpsee-core v0.21.0
[INFO] [stderr]    Compiling nalgebra v0.32.6
[INFO] [stderr]    Compiling indicatif v0.17.11
[INFO] [stderr]    Compiling tabled v0.14.0
[INFO] [stderr]    Compiling mimalloc v0.1.48
[INFO] [stderr]    Compiling clap v4.5.47
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling jsonrpsee-server v0.21.0
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling hyperloglog v1.0.2
[INFO] [stderr]    Compiling handlebars v4.5.0
[INFO] [stderr]    Compiling statrs v0.16.1
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling edit-distance v2.1.3
[INFO] [stderr]    Compiling seahash v4.1.0
[INFO] [stderr]    Compiling jsonrpsee v0.21.0
[INFO] [stderr]    Compiling owo-colors v3.5.0
[INFO] [stderr]    Compiling valknut-rs v1.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]   --> src/core/pipeline/pipeline_config.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn from(config: ValknutConfig) -> Self {
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `refactoring`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |         refactoring: &super::pipeline_results::RefactoringAnalysisResults,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_refactoring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `impact`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:305:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |         impact: &super::pipeline_results::ImpactAnalysisResults,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_impact`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:484:9
[INFO] [stdout]     |
[INFO] [stdout] 484 |         config: &QualityGateConfig,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]    --> src/core/featureset.rs:310:31
[INFO] [stdout]     |
[INFO] [stdout] 310 |     fn supports_entity(&self, entity: &CodeEntity) -> bool {
[INFO] [stdout]     |                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/detectors/complexity.rs:1806:17
[INFO] [stdout]      |
[INFO] [stdout] 1806 |                 _ => {}
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/detectors/complexity.rs:1806:17
[INFO] [stdout]      |
[INFO] [stdout] 1726 |                 ComplexityIssueType::HighCyclomaticComplexity => {
[INFO] [stdout]      |                 --------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1743 |                 ComplexityIssueType::HighCognitiveComplexity => {
[INFO] [stdout]      |                 -------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1752 |                 ComplexityIssueType::DeepNesting => {
[INFO] [stdout]      |                 -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1761 |                 ComplexityIssueType::LongFile => {
[INFO] [stdout]      |                 ----------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1806 |                 _ => {}
[INFO] [stdout]      |                 ^ ...and 4 other patterns collectively make this unreachable
[INFO] [stdout]      = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash_vec`
[INFO] [stdout]    --> src/detectors/lsh.rs:189:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 let hash_vec = u64x4::from(hashes);
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hash_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sig_vec`
[INFO] [stdout]    --> src/detectors/lsh.rs:190:21
[INFO] [stdout]     |
[INFO] [stdout] 190 |                 let sig_vec = u64x4::from(current_sigs);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sig_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `part1_set`
[INFO] [stdout]    --> src/detectors/structure/directory.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |         let part1_set: HashSet<_> = part1.iter().copied().collect();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_part1_set`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub mod pipeline;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:500:5
[INFO] [stdout]     |
[INFO] [stdout] 500 |     pub fn new() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:504:5
[INFO] [stdout]     |
[INFO] [stdout] 504 |     pub fn get_all_extractors(&self) -> std::iter::Empty<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub structure_extractor: StructureExtractor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub complexity_analyzer: ComplexityAnalyzer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub refactoring_analyzer: RefactoringAnalyzer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub beta: f64,   // Failure count + 1 (shape parameter)
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub expected_max: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub expected_mean: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub variance_threshold: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub higher_is_worse: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub typical_distribution: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/complexity.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct ComplexityThresholds {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub low: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub moderate: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub high: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub very_high: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     Low,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     Moderate,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     VeryHigh,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     Critical,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/complexity.rs:229:1
[INFO] [stdout]     |
[INFO] [stdout] 229 | pub enum ComplexityIssueType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:230:5
[INFO] [stdout]     |
[INFO] [stdout] 230 |     HighCyclomaticComplexity,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:231:5
[INFO] [stdout]     |
[INFO] [stdout] 231 |     HighCognitiveComplexity,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 232 |     DeepNesting,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:233:5
[INFO] [stdout]     |
[INFO] [stdout] 233 |     TooManyParameters,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:234:5
[INFO] [stdout]     |
[INFO] [stdout] 234 |     LongFunction,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:235:5
[INFO] [stdout]     |
[INFO] [stdout] 235 |     LongFile,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 236 |     HighTechnicalDebt,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     LowMaintainability,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/complexity.rs:256:1
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub enum RefactoringType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:257:5
[INFO] [stdout]     |
[INFO] [stdout] 257 |     ExtractMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:258:5
[INFO] [stdout]     |
[INFO] [stdout] 258 |     SimplifyConditions,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 |     ReduceNesting,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:260:5
[INFO] [stdout]     |
[INFO] [stdout] 260 |     SplitFunction,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:261:5
[INFO] [stdout]     |
[INFO] [stdout] 261 |     ExtractClass,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 |     ReduceParameters,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 263 |     SimplifyExpressions,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     RemoveDeadCode,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/lsh.rs:340:5
[INFO] [stdout]     |
[INFO] [stdout] 340 |     pub shingle_size: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/structure/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub branch_reorg_packs: Vec<BranchReorgPack>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/structure/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub file_split_packs: Vec<FileSplitPack>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/mod.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/mod.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn with_config(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct StructureToggles {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct FsDirectoryConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:48:1
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct FsFileConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct PartitioningConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/directory.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DirectoryAnalyzer {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/directory.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn new(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/file.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct FileAnalyzer {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/file.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     CoveragePyXml,      // coverage.py XML format
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Lcov,               // LCOV .info format  
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     Cobertura,          // Cobertura XML format
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     JaCoCo,             // JaCoCo XML format
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     IstanbulJson,       // Istanbul JSON format
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub line_number: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub hits: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub is_covered: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub start: usize,  // inclusive
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub end: usize,    // inclusive  
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub hits: Option<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub gap_loc: usize,                    // Lines of code in gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub cyclomatic_in_gap: f64,           // Complexity within gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub cognitive_in_gap: f64,            // Cognitive complexity within gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub fan_in_gap: usize,                // Number of callsites
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub exports_touched: bool,            // Contains public APIs
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub dependency_centrality_file: f64,  // File's import graph centrality
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub interface_surface: usize,         // Parameters + return types
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub docstring_or_comment_present: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub exception_density_in_gap: f64,    // Exception handling per KLOC
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub span: UncoveredSpan,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub file_loc: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub language: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub score: f64,                       // 0-1 priority score
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub features: GapFeatures,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub symbols: Vec<GapSymbol>,          // Functions/classes in gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub preview: SnippetPreview,          // Context for agents
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub kind: SymbolKind,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub signature: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub line_start: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub line_end: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/detectors/coverage.rs:80:1
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub enum SymbolKind {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 81 |     Function,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 |     Method,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     Class,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     Module,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub language: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub pre: Vec<String>,      // Context lines before gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub head: Vec<String>,     // First few lines of gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub tail: Vec<String>,     // Last few lines of gap  
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub post: Vec<String>,     // Context lines after gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub markers: GapMarkers,   // Line number markers
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub imports: Vec<String>,  // Imports used in gap (for mocking)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/detectors/coverage.rs:100:1
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct GapMarkers {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub start_line: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub end_line: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub file_cov_gain: f64,       // Expected file coverage increase
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub repo_cov_gain_est: f64,   // Expected repo coverage increase
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub tests_to_write_est: usize,  // Estimated number of tests needed
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub mocks_est: usize,           // Estimated mocks needed
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub kind: String,                    // Always "coverage"
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub pack_id: String,                 // e.g., "cov:src/lib.rs"
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub path: PathBuf,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub file_info: FileInfo,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub gaps: Vec<CoverageGap>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub value: PackValue,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub effort: PackEffort,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub coverage_before: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub coverage_after_if_filled: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub total_gap_loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub avg_complexity: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub centrality: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub gap_count: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub report_paths: Vec<PathBuf>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     pub max_gaps_per_file: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     pub min_gap_loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub snippet_context_lines: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub long_gap_head_tail: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub group_cross_file: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub target_repo_gain: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub weights: ScoringWeights,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     pub exclude_patterns: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     pub size: f64,          // 0.40
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     pub complexity: f64,    // 0.20
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fan_in: f64,        // 0.15
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     pub exports: f64,       // 0.10
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub centrality: f64,    // 0.10
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub docs: f64,          // 0.05
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:215:5
[INFO] [stdout]     |
[INFO] [stdout] 215 |     pub config: CoverageConfig,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/detectors/coverage.rs:219:5
[INFO] [stdout]     |
[INFO] [stdout] 219 |     pub fn new(config: CoverageConfig) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     ExtractMethod,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     ExtractClass,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     ReduceComplexity,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     EliminateDuplication,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     ImproveNaming,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     SimplifyConditionals,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     RemoveDeadCode,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/detectors/refactoring.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | pub struct RefactoringExtractor;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/names_simple.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct SideEffects {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/names_simple.rs:88:1
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct ReturnTypeInfo {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/detectors/names_simple.rs:98:1
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub enum TypeCategory {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/names_simple.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Scalar,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     Object,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     Collection,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     Unit,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/names_simple.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum ExecutionPattern {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     Synchronous,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     Asynchronous,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     Ambiguous,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/names_simple.rs:126:1
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub enum MismatchType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:22
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:40
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:27
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:45
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:27
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:45
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:21
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:39
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:25
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:43
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/lang/common.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     Function,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/lang/common.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Method,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Class,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Interface,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Module,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Variable,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Constant,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Enum,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Struct,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/io/cache.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Cache;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/io/cache.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub fn new() -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/io/reports.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum ReportError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Template(#[from] handlebars::TemplateError),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Render(#[from] handlebars::RenderError),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Io(#[from] std::io::Error),
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     Serialization(#[from] serde_json::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/io/reports.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct ReportGenerator {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/io/reports.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/io/reports.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn with_templates_dir<P: AsRef<Path>>(mut self, templates_dir: P) -> Result<Self, ReportError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/io/reports.rs:95:5
[INFO] [stdout]     |
[INFO] [stdout]  95 | /     pub fn generate_report<P: AsRef<Path>>(
[INFO] [stdout]  96 | |         &self,
[INFO] [stdout]  97 | |         results: &AnalysisResults,
[INFO] [stdout]  98 | |         output_path: P,
[INFO] [stdout]  99 | |         format: ReportFormat,
[INFO] [stdout] 100 | |     ) -> Result<(), ReportError> {
[INFO] [stdout]     | |________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/bin/mcp/protocol.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[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: `protocol::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use protocol::*;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tools::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use tools::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `server::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use server::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `survey`
[INFO] [stdout]   --> src/bin/cli/commands.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     survey: bool,
[INFO] [stdout]    |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_survey`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `survey_verbosity`
[INFO] [stdout]   --> src/bin/cli/commands.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     survey_verbosity: SurveyVerbosity
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_survey_verbosity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/bin/cli/commands.rs:665:36
[INFO] [stdout]     |
[INFO] [stdout] 665 | pub async fn analyze_impact_legacy(args: ImpactArgs) -> anyhow::Result<()> {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOOL_EXECUTION_ERROR` is never used
[INFO] [stdout]    --> src/bin/mcp/protocol.rs:118:15
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub const TOOL_EXECUTION_ERROR: i32 = -32002;
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 32s
[INFO] running `Command { std: "docker" "inspect" "64083a3d555ee7d080fe8f11e0b8608dae6070bdec449464c19d92b9a963891d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "64083a3d555ee7d080fe8f11e0b8608dae6070bdec449464c19d92b9a963891d", kill_on_drop: false }`
[INFO] [stdout] 64083a3d555ee7d080fe8f11e0b8608dae6070bdec449464c19d92b9a963891d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 42eafa83be55fcb2f94075834c0c738f43f0800cedfd00bcac967a1509fccb89
[INFO] running `Command { std: "docker" "start" "-a" "42eafa83be55fcb2f94075834c0c738f43f0800cedfd00bcac967a1509fccb89", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling predicates-core v1.0.9
[INFO] [stderr]    Compiling doc-comment v0.3.3
[INFO] [stderr]    Compiling tempfile v3.22.0
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling dialoguer v0.11.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling soketto v0.7.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling twox-hash v1.6.3
[INFO] [stderr]    Compiling hyperloglog v1.0.2
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling assert_cmd v2.0.17
[INFO] [stderr]    Compiling nalgebra v0.29.0
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling predicates-tree v1.0.12
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling predicates v3.1.3
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling env_logger v0.8.4
[INFO] [stderr]    Compiling bstr v1.12.0
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling proptest v1.7.0
[INFO] [stderr]    Compiling quickcheck v1.0.3
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling quickcheck_macros v1.1.0
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling tokio-test v0.4.4
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling statrs v0.16.1
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling jsonrpsee-core v0.21.0
[INFO] [stderr]    Compiling jsonrpsee-server v0.21.0
[INFO] [stderr]    Compiling jsonrpsee v0.21.0
[INFO] [stderr]    Compiling valknut-rs v1.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]   --> src/core/pipeline/mod.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     use std::path::PathBuf;
[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: `crate::lang::common::EntityKind`
[INFO] [stdout]    --> src/core/featureset.rs:611:9
[INFO] [stdout]     |
[INFO] [stdout] 611 |     use crate::lang::common::EntityKind;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ParseFloatError` and `ParseIntError`
[INFO] [stdout]    --> src/core/errors.rs:423:20
[INFO] [stdout]     |
[INFO] [stdout] 423 |     use std::num::{ParseIntError, ParseFloatError};
[INFO] [stdout]     |                    ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]    --> src/detectors/complexity.rs:270:9
[INFO] [stdout]     |
[INFO] [stdout] 270 |     use std::path::PathBuf;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]    --> src/detectors/complexity.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |     use std::io::Write;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]    --> src/detectors/names_simple.rs:546:9
[INFO] [stdout]     |
[INFO] [stdout] 546 |     use std::path::PathBuf;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ScoringResult`
[INFO] [stdout]    --> src/io/reports.rs:432:32
[INFO] [stdout]     |
[INFO] [stdout] 432 |     use crate::core::scoring::{ScoringResult, Priority};
[INFO] [stdout]     |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::featureset::FeatureVector`
[INFO] [stdout]    --> src/io/reports.rs:433:9
[INFO] [stdout]     |
[INFO] [stdout] 433 |     use crate::core::featureset::FeatureVector;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]   --> src/core/pipeline/pipeline_config.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn from(config: ValknutConfig) -> Self {
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `refactoring`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |         refactoring: &super::pipeline_results::RefactoringAnalysisResults,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_refactoring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `impact`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:305:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |         impact: &super::pipeline_results::ImpactAnalysisResults,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_impact`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:484:9
[INFO] [stdout]     |
[INFO] [stdout] 484 |         config: &QualityGateConfig,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]    --> src/core/featureset.rs:310:31
[INFO] [stdout]     |
[INFO] [stdout] 310 |     fn supports_entity(&self, entity: &CodeEntity) -> bool {
[INFO] [stdout]     |                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]   --> src/core/pipeline/pipeline_config.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn from(config: ValknutConfig) -> Self {
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `refactoring`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |         refactoring: &super::pipeline_results::RefactoringAnalysisResults,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_refactoring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `impact`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:305:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |         impact: &super::pipeline_results::ImpactAnalysisResults,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_impact`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:484:9
[INFO] [stdout]     |
[INFO] [stdout] 484 |         config: &QualityGateConfig,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats`
[INFO] [stdout]    --> src/core/scoring.rs:836:13
[INFO] [stdout]     |
[INFO] [stdout] 836 |         let stats = NormalizationStatistics::from_values(values);
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/detectors/complexity.rs:1806:17
[INFO] [stdout]      |
[INFO] [stdout] 1806 |                 _ => {}
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/detectors/complexity.rs:1806:17
[INFO] [stdout]      |
[INFO] [stdout] 1726 |                 ComplexityIssueType::HighCyclomaticComplexity => {
[INFO] [stdout]      |                 --------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1743 |                 ComplexityIssueType::HighCognitiveComplexity => {
[INFO] [stdout]      |                 -------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1752 |                 ComplexityIssueType::DeepNesting => {
[INFO] [stdout]      |                 -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1761 |                 ComplexityIssueType::LongFile => {
[INFO] [stdout]      |                 ----------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1806 |                 _ => {}
[INFO] [stdout]      |                 ^ ...and 4 other patterns collectively make this unreachable
[INFO] [stdout]      = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats`
[INFO] [stdout]    --> src/core/bayesian.rs:785:13
[INFO] [stdout]     |
[INFO] [stdout] 785 |         let stats = FeatureStatistics {
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/core/bayesian.rs:854:13
[INFO] [stdout]     |
[INFO] [stdout] 854 |         let mut normalizer = BayesianNormalizer::new("z_score");
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats`
[INFO] [stdout]    --> src/core/bayesian.rs:857:13
[INFO] [stdout]     |
[INFO] [stdout] 857 |         let stats = FeatureStatistics {
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash_vec`
[INFO] [stdout]    --> src/detectors/lsh.rs:189:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 let hash_vec = u64x4::from(hashes);
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hash_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sig_vec`
[INFO] [stdout]    --> src/detectors/lsh.rs:190:21
[INFO] [stdout]     |
[INFO] [stdout] 190 |                 let sig_vec = u64x4::from(current_sigs);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sig_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]    --> src/core/featureset.rs:310:31
[INFO] [stdout]     |
[INFO] [stdout] 310 |     fn supports_entity(&self, entity: &CodeEntity) -> bool {
[INFO] [stdout]     |                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `part1_set`
[INFO] [stdout]    --> src/detectors/structure/directory.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |         let part1_set: HashSet<_> = part1.iter().copied().collect();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_part1_set`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/detectors/complexity.rs:1806:17
[INFO] [stdout]      |
[INFO] [stdout] 1806 |                 _ => {}
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/detectors/complexity.rs:1806:17
[INFO] [stdout]      |
[INFO] [stdout] 1726 |                 ComplexityIssueType::HighCyclomaticComplexity => {
[INFO] [stdout]      |                 --------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1743 |                 ComplexityIssueType::HighCognitiveComplexity => {
[INFO] [stdout]      |                 -------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1752 |                 ComplexityIssueType::DeepNesting => {
[INFO] [stdout]      |                 -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1761 |                 ComplexityIssueType::LongFile => {
[INFO] [stdout]      |                 ----------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1806 |                 _ => {}
[INFO] [stdout]      |                 ^ ...and 4 other patterns collectively make this unreachable
[INFO] [stdout]      = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash_vec`
[INFO] [stdout]    --> src/detectors/lsh.rs:189:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 let hash_vec = u64x4::from(hashes);
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hash_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sig_vec`
[INFO] [stdout]    --> src/detectors/lsh.rs:190:21
[INFO] [stdout]     |
[INFO] [stdout] 190 |                 let sig_vec = u64x4::from(current_sigs);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sig_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `part1_set`
[INFO] [stdout]    --> src/detectors/structure/directory.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |         let part1_set: HashSet<_> = part1.iter().copied().collect();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_part1_set`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/detectors/coverage.rs:2474:13
[INFO] [stdout]      |
[INFO] [stdout] 2474 |         let mut extractor = CoverageExtractor::new(config);
[INFO] [stdout]      |             ----^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub mod pipeline;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:500:5
[INFO] [stdout]     |
[INFO] [stdout] 500 |     pub fn new() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:504:5
[INFO] [stdout]     |
[INFO] [stdout] 504 |     pub fn get_all_extractors(&self) -> std::iter::Empty<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub structure_extractor: StructureExtractor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub complexity_analyzer: ComplexityAnalyzer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub refactoring_analyzer: RefactoringAnalyzer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub beta: f64,   // Failure count + 1 (shape parameter)
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub expected_max: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub expected_mean: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub variance_threshold: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub higher_is_worse: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub typical_distribution: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/complexity.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct ComplexityThresholds {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub low: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub moderate: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub high: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub very_high: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     Low,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     Moderate,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     VeryHigh,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     Critical,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/complexity.rs:229:1
[INFO] [stdout]     |
[INFO] [stdout] 229 | pub enum ComplexityIssueType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:230:5
[INFO] [stdout]     |
[INFO] [stdout] 230 |     HighCyclomaticComplexity,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:231:5
[INFO] [stdout]     |
[INFO] [stdout] 231 |     HighCognitiveComplexity,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 232 |     DeepNesting,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:233:5
[INFO] [stdout]     |
[INFO] [stdout] 233 |     TooManyParameters,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:234:5
[INFO] [stdout]     |
[INFO] [stdout] 234 |     LongFunction,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:235:5
[INFO] [stdout]     |
[INFO] [stdout] 235 |     LongFile,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 236 |     HighTechnicalDebt,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     LowMaintainability,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/complexity.rs:256:1
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub enum RefactoringType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:257:5
[INFO] [stdout]     |
[INFO] [stdout] 257 |     ExtractMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:258:5
[INFO] [stdout]     |
[INFO] [stdout] 258 |     SimplifyConditions,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 |     ReduceNesting,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:260:5
[INFO] [stdout]     |
[INFO] [stdout] 260 |     SplitFunction,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:261:5
[INFO] [stdout]     |
[INFO] [stdout] 261 |     ExtractClass,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 |     ReduceParameters,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 263 |     SimplifyExpressions,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     RemoveDeadCode,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/lsh.rs:340:5
[INFO] [stdout]     |
[INFO] [stdout] 340 |     pub shingle_size: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/structure/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub branch_reorg_packs: Vec<BranchReorgPack>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/structure/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub file_split_packs: Vec<FileSplitPack>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/mod.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/mod.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn with_config(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct StructureToggles {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct FsDirectoryConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:48:1
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct FsFileConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct PartitioningConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/directory.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DirectoryAnalyzer {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/directory.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn new(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/file.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct FileAnalyzer {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/file.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     CoveragePyXml,      // coverage.py XML format
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Lcov,               // LCOV .info format  
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     Cobertura,          // Cobertura XML format
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     JaCoCo,             // JaCoCo XML format
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     IstanbulJson,       // Istanbul JSON format
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub line_number: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub hits: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub is_covered: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub start: usize,  // inclusive
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub end: usize,    // inclusive  
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub hits: Option<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub gap_loc: usize,                    // Lines of code in gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub cyclomatic_in_gap: f64,           // Complexity within gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub cognitive_in_gap: f64,            // Cognitive complexity within gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub fan_in_gap: usize,                // Number of callsites
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub exports_touched: bool,            // Contains public APIs
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub dependency_centrality_file: f64,  // File's import graph centrality
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub interface_surface: usize,         // Parameters + return types
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub docstring_or_comment_present: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub exception_density_in_gap: f64,    // Exception handling per KLOC
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub span: UncoveredSpan,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub file_loc: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub language: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub score: f64,                       // 0-1 priority score
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub features: GapFeatures,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub symbols: Vec<GapSymbol>,          // Functions/classes in gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub preview: SnippetPreview,          // Context for agents
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub kind: SymbolKind,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub signature: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub line_start: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub line_end: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/detectors/coverage.rs:80:1
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub enum SymbolKind {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 81 |     Function,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 |     Method,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     Class,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     Module,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub language: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub pre: Vec<String>,      // Context lines before gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub head: Vec<String>,     // First few lines of gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub tail: Vec<String>,     // Last few lines of gap  
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub post: Vec<String>,     // Context lines after gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub markers: GapMarkers,   // Line number markers
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub imports: Vec<String>,  // Imports used in gap (for mocking)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/detectors/coverage.rs:100:1
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct GapMarkers {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub start_line: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub end_line: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub file_cov_gain: f64,       // Expected file coverage increase
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub repo_cov_gain_est: f64,   // Expected repo coverage increase
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub tests_to_write_est: usize,  // Estimated number of tests needed
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub mocks_est: usize,           // Estimated mocks needed
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub kind: String,                    // Always "coverage"
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub pack_id: String,                 // e.g., "cov:src/lib.rs"
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub path: PathBuf,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub file_info: FileInfo,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub gaps: Vec<CoverageGap>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub value: PackValue,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub effort: PackEffort,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub coverage_before: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub coverage_after_if_filled: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub total_gap_loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub avg_complexity: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub centrality: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub gap_count: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub report_paths: Vec<PathBuf>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     pub max_gaps_per_file: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     pub min_gap_loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub snippet_context_lines: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub long_gap_head_tail: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub group_cross_file: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub target_repo_gain: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub weights: ScoringWeights,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     pub exclude_patterns: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     pub size: f64,          // 0.40
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     pub complexity: f64,    // 0.20
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fan_in: f64,        // 0.15
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     pub exports: f64,       // 0.10
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub centrality: f64,    // 0.10
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub docs: f64,          // 0.05
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:215:5
[INFO] [stdout]     |
[INFO] [stdout] 215 |     pub config: CoverageConfig,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/detectors/coverage.rs:219:5
[INFO] [stdout]     |
[INFO] [stdout] 219 |     pub fn new(config: CoverageConfig) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     ExtractMethod,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     ExtractClass,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     ReduceComplexity,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     EliminateDuplication,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     ImproveNaming,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     SimplifyConditionals,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     RemoveDeadCode,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/detectors/refactoring.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | pub struct RefactoringExtractor;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/names_simple.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct SideEffects {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/names_simple.rs:88:1
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct ReturnTypeInfo {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/detectors/names_simple.rs:98:1
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub enum TypeCategory {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/names_simple.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Scalar,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     Object,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     Collection,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     Unit,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/names_simple.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum ExecutionPattern {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     Synchronous,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     Asynchronous,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     Ambiguous,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/names_simple.rs:126:1
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub enum MismatchType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:22
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:40
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:27
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:45
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:27
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:45
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:21
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:39
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:25
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:43
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/lang/common.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     Function,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/lang/common.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Method,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Class,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Interface,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Module,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Variable,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Constant,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Enum,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Struct,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/io/cache.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Cache;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/io/cache.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub fn new() -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/io/reports.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum ReportError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Template(#[from] handlebars::TemplateError),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Render(#[from] handlebars::RenderError),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Io(#[from] std::io::Error),
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     Serialization(#[from] serde_json::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/io/reports.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct ReportGenerator {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/io/reports.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/io/reports.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn with_templates_dir<P: AsRef<Path>>(mut self, templates_dir: P) -> Result<Self, ReportError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/io/reports.rs:95:5
[INFO] [stdout]     |
[INFO] [stdout]  95 | /     pub fn generate_report<P: AsRef<Path>>(
[INFO] [stdout]  96 | |         &self,
[INFO] [stdout]  97 | |         results: &AnalysisResults,
[INFO] [stdout]  98 | |         output_path: P,
[INFO] [stdout]  99 | |         format: ReportFormat,
[INFO] [stdout] 100 | |     ) -> Result<(), ReportError> {
[INFO] [stdout]     | |________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub mod pipeline;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:500:5
[INFO] [stdout]     |
[INFO] [stdout] 500 |     pub fn new() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/core/pipeline/pipeline_executor.rs:504:5
[INFO] [stdout]     |
[INFO] [stdout] 504 |     pub fn get_all_extractors(&self) -> std::iter::Empty<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub structure_extractor: StructureExtractor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub complexity_analyzer: ComplexityAnalyzer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/pipeline/pipeline_stages.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub refactoring_analyzer: RefactoringAnalyzer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub beta: f64,   // Failure count + 1 (shape parameter)
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub expected_max: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub expected_mean: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub variance_threshold: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub higher_is_worse: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/core/bayesian.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub typical_distribution: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/complexity.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct ComplexityThresholds {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub low: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub moderate: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub high: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/complexity.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub very_high: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     Low,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     Moderate,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     VeryHigh,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     Critical,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/complexity.rs:229:1
[INFO] [stdout]     |
[INFO] [stdout] 229 | pub enum ComplexityIssueType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:230:5
[INFO] [stdout]     |
[INFO] [stdout] 230 |     HighCyclomaticComplexity,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:231:5
[INFO] [stdout]     |
[INFO] [stdout] 231 |     HighCognitiveComplexity,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 232 |     DeepNesting,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:233:5
[INFO] [stdout]     |
[INFO] [stdout] 233 |     TooManyParameters,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:234:5
[INFO] [stdout]     |
[INFO] [stdout] 234 |     LongFunction,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:235:5
[INFO] [stdout]     |
[INFO] [stdout] 235 |     LongFile,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 236 |     HighTechnicalDebt,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     LowMaintainability,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/complexity.rs:256:1
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub enum RefactoringType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:257:5
[INFO] [stdout]     |
[INFO] [stdout] 257 |     ExtractMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:258:5
[INFO] [stdout]     |
[INFO] [stdout] 258 |     SimplifyConditions,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 |     ReduceNesting,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:260:5
[INFO] [stdout]     |
[INFO] [stdout] 260 |     SplitFunction,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:261:5
[INFO] [stdout]     |
[INFO] [stdout] 261 |     ExtractClass,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 |     ReduceParameters,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 263 |     SimplifyExpressions,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/complexity.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     RemoveDeadCode,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/lsh.rs:340:5
[INFO] [stdout]     |
[INFO] [stdout] 340 |     pub shingle_size: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/structure/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub branch_reorg_packs: Vec<BranchReorgPack>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/structure/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub file_split_packs: Vec<FileSplitPack>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/mod.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/mod.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn with_config(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct StructureToggles {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct FsDirectoryConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:48:1
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct FsFileConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/config.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct PartitioningConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/directory.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DirectoryAnalyzer {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/directory.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn new(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]     --> src/detectors/structure/directory.rs:1763:17
[INFO] [stdout]      |
[INFO] [stdout] 1763 |         assert!(graph.edge_count() >= 0); // May have edges if imports are resolved
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]     --> src/detectors/structure/directory.rs:1815:17
[INFO] [stdout]      |
[INFO] [stdout] 1815 |         assert!(gain.cross_edges_reduced >= 0);
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]     --> src/detectors/structure/directory.rs:1964:17
[INFO] [stdout]      |
[INFO] [stdout] 1964 |         assert!(result >= 0);
[INFO] [stdout]      |                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/structure/file.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct FileAnalyzer {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/detectors/structure/file.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(config: StructureConfig) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]     --> src/detectors/structure/file.rs:1511:17
[INFO] [stdout]      |
[INFO] [stdout] 1511 |         assert!(graph.node_count() >= 0);
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     CoveragePyXml,      // coverage.py XML format
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Lcov,               // LCOV .info format  
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     Cobertura,          // Cobertura XML format
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     JaCoCo,             // JaCoCo XML format
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     IstanbulJson,       // Istanbul JSON format
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     Unknown,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub line_number: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub hits: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub is_covered: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub start: usize,  // inclusive
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub end: usize,    // inclusive  
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub hits: Option<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub gap_loc: usize,                    // Lines of code in gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub cyclomatic_in_gap: f64,           // Complexity within gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub cognitive_in_gap: f64,            // Cognitive complexity within gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub fan_in_gap: usize,                // Number of callsites
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub exports_touched: bool,            // Contains public APIs
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub dependency_centrality_file: f64,  // File's import graph centrality
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub interface_surface: usize,         // Parameters + return types
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub docstring_or_comment_present: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub exception_density_in_gap: f64,    // Exception handling per KLOC
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub span: UncoveredSpan,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub file_loc: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub language: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub score: f64,                       // 0-1 priority score
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub features: GapFeatures,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub symbols: Vec<GapSymbol>,          // Functions/classes in gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub preview: SnippetPreview,          // Context for agents
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub kind: SymbolKind,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub signature: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub line_start: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub line_end: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/detectors/coverage.rs:80:1
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub enum SymbolKind {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 81 |     Function,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 |     Method,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     Class,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/coverage.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     Module,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub language: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub pre: Vec<String>,      // Context lines before gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub head: Vec<String>,     // First few lines of gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub tail: Vec<String>,     // Last few lines of gap  
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub post: Vec<String>,     // Context lines after gap
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub markers: GapMarkers,   // Line number markers
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/coverage.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub imports: Vec<String>,  // Imports used in gap (for mocking)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/detectors/coverage.rs:100:1
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct GapMarkers {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub start_line: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub end_line: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub file_cov_gain: f64,       // Expected file coverage increase
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub repo_cov_gain_est: f64,   // Expected repo coverage increase
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub tests_to_write_est: usize,  // Estimated number of tests needed
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub mocks_est: usize,           // Estimated mocks needed
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub kind: String,                    // Always "coverage"
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub pack_id: String,                 // e.g., "cov:src/lib.rs"
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub path: PathBuf,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub file_info: FileInfo,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub gaps: Vec<CoverageGap>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub value: PackValue,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub effort: PackEffort,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub coverage_before: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub coverage_after_if_filled: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub total_gap_loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub avg_complexity: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:144:5
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub centrality: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub gap_count: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub report_paths: Vec<PathBuf>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     pub max_gaps_per_file: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     pub min_gap_loc: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub snippet_context_lines: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub long_gap_head_tail: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub group_cross_file: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub target_repo_gain: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub weights: ScoringWeights,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     pub exclude_patterns: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     pub size: f64,          // 0.40
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     pub complexity: f64,    // 0.20
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fan_in: f64,        // 0.15
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     pub exports: f64,       // 0.10
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub centrality: f64,    // 0.10
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub docs: f64,          // 0.05
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/coverage.rs:215:5
[INFO] [stdout]     |
[INFO] [stdout] 215 |     pub config: CoverageConfig,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/detectors/coverage.rs:219:5
[INFO] [stdout]     |
[INFO] [stdout] 219 |     pub fn new(config: CoverageConfig) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     ExtractMethod,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     ExtractClass,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     ReduceComplexity,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     EliminateDuplication,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     ImproveNaming,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     SimplifyConditionals,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/refactoring.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     RemoveDeadCode,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/detectors/refactoring.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | pub struct RefactoringExtractor;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/names_simple.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct SideEffects {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/names_simple.rs:88:1
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct ReturnTypeInfo {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/detectors/names_simple.rs:98:1
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub enum TypeCategory {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/detectors/names_simple.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Scalar,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     Object,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     Collection,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     Unit,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/names_simple.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum ExecutionPattern {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     Synchronous,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     Asynchronous,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     Ambiguous,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/detectors/names_simple.rs:126:1
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub enum MismatchType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:22
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:127:40
[INFO] [stdout]     |
[INFO] [stdout] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:27
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:128:45
[INFO] [stdout]     |
[INFO] [stdout] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:27
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:129:45
[INFO] [stdout]     |
[INFO] [stdout] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:21
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:130:39
[INFO] [stdout]     |
[INFO] [stdout] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:25
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/detectors/names_simple.rs:131:43
[INFO] [stdout]     |
[INFO] [stdout] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/lang/common.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     Function,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/lang/common.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Method,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Class,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Interface,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Module,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Variable,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Constant,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Enum,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/lang/common.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Struct,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/io/cache.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Cache;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/io/cache.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub fn new() -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/io/reports.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum ReportError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Template(#[from] handlebars::TemplateError),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Render(#[from] handlebars::RenderError),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Io(#[from] std::io::Error),
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/io/reports.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     Serialization(#[from] serde_json::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/io/reports.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct ReportGenerator {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/io/reports.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/io/reports.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn with_templates_dir<P: AsRef<Path>>(mut self, templates_dir: P) -> Result<Self, ReportError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/io/reports.rs:95:5
[INFO] [stdout]     |
[INFO] [stdout]  95 | /     pub fn generate_report<P: AsRef<Path>>(
[INFO] [stdout]  96 | |         &self,
[INFO] [stdout]  97 | |         results: &AnalysisResults,
[INFO] [stdout]  98 | |         output_path: P,
[INFO] [stdout]  99 | |         format: ReportFormat,
[INFO] [stdout] 100 | |     ) -> Result<(), ReportError> {
[INFO] [stdout]     | |________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/api/engine.rs:397:17
[INFO] [stdout]     |
[INFO] [stdout] 397 |         assert!(results.summary.entities_analyzed >= 0); // At least no crash
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/api/engine.rs:527:17
[INFO] [stdout]     |
[INFO] [stdout] 527 |         assert!(results.summary.entities_analyzed >= 0);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Command as StdCommand`
[INFO] [stdout]   --> tests/mcp_integration_tests.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::process::{Command as StdCommand, Stdio};
[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: `NamedTempFile`
[INFO] [stdout]   --> tests/mcp_integration_tests.rs:12:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tempfile::{tempdir, NamedTempFile};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Stdio`
[INFO] [stdout]   --> tests/mcp_integration_tests_fixed.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | use std::process::Stdio;
[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: `tokio::process::Command as TokioCommand`
[INFO] [stdout]   --> tests/mcp_integration_tests_fixed.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | use tokio::process::Command as TokioCommand;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> tests/mcp_integration_tests.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/bin/mcp/protocol.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[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: `protocol::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use protocol::*;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tools::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use tools::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `server::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use server::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> tests/mcp_integration_tests_fixed.rs:1074:9
[INFO] [stdout]      |
[INFO] [stdout] 1074 |         timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1074 |         let _ = timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> tests/mcp_integration_tests_fixed.rs:1091:9
[INFO] [stdout]      |
[INFO] [stdout] 1091 |         timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1091 |         let _ = timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> tests/mcp_integration_tests_fixed.rs:1115:9
[INFO] [stdout]      |
[INFO] [stdout] 1115 |         timeout(Duration::from_secs(10), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1115 |         let _ = timeout(Duration::from_secs(10), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> tests/mcp_integration_tests_fixed.rs:1137:9
[INFO] [stdout]      |
[INFO] [stdout] 1137 |         timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1137 |         let _ = timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> tests/mcp_integration_tests_fixed.rs:1166:9
[INFO] [stdout]      |
[INFO] [stdout] 1166 |         timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1166 |         let _ = timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> tests/mcp_integration_tests_fixed.rs:1212:13
[INFO] [stdout]      |
[INFO] [stdout] 1212 | /             timeout(Duration::from_secs(30), reader.read_line(&mut response)).await
[INFO] [stdout] 1213 | |                 .expect("Should receive response within timeout");
[INFO] [stdout]      | |_________________________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1212 |             let _ = timeout(Duration::from_secs(30), reader.read_line(&mut response)).await
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NamedTempFile`
[INFO] [stdout]     --> src/bin/cli/output.rs:1232:29
[INFO] [stdout]      |
[INFO] [stdout] 1232 |     use tempfile::{TempDir, NamedTempFile};
[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: `std::collections::HashMap`
[INFO] [stdout]  --> src/bin/mcp/protocol.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocol::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use protocol::*;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tools::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use tools::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `server::*`
[INFO] [stdout]   --> src/bin/mcp/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use server::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]   --> src/bin/valknut.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     use std::env;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AnalyzeArgs`, `ImpactArgs`, `InitConfigArgs`, `McpManifestArgs`, `McpStdioArgs`, `StructureArgs`, and `ValidateConfigArgs`
[INFO] [stdout]   --> src/bin/valknut.rs:74:21
[INFO] [stdout]    |
[INFO] [stdout] 74 |     use cli::args::{AnalyzeArgs, InitConfigArgs, ValidateConfigArgs, McpStdioArgs, McpManifestArgs, StructureArgs, ImpactArgs, Outpu...
[INFO] [stdout]    |                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `survey`
[INFO] [stdout]   --> src/bin/cli/commands.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     survey: bool,
[INFO] [stdout]    |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_survey`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `survey_verbosity`
[INFO] [stdout]   --> src/bin/cli/commands.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     survey_verbosity: SurveyVerbosity
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_survey_verbosity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/bin/cli/commands.rs:665:36
[INFO] [stdout]     |
[INFO] [stdout] 665 | pub async fn analyze_impact_legacy(args: ImpactArgs) -> anyhow::Result<()> {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOOL_EXECUTION_ERROR` is never used
[INFO] [stdout]    --> src/bin/mcp/protocol.rs:118:15
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub const TOOL_EXECUTION_ERROR: i32 = -32002;
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `survey`
[INFO] [stdout]   --> src/bin/cli/commands.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     survey: bool,
[INFO] [stdout]    |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_survey`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `survey_verbosity`
[INFO] [stdout]   --> src/bin/cli/commands.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     survey_verbosity: SurveyVerbosity
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_survey_verbosity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/bin/cli/commands.rs:665:36
[INFO] [stdout]     |
[INFO] [stdout] 665 | pub async fn analyze_impact_legacy(args: ImpactArgs) -> anyhow::Result<()> {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOOL_EXECUTION_ERROR` is never used
[INFO] [stdout]    --> src/bin/mcp/protocol.rs:118:15
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub const TOOL_EXECUTION_ERROR: i32 = -32002;
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 55s
[INFO] running `Command { std: "docker" "inspect" "42eafa83be55fcb2f94075834c0c738f43f0800cedfd00bcac967a1509fccb89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "42eafa83be55fcb2f94075834c0c738f43f0800cedfd00bcac967a1509fccb89", kill_on_drop: false }`
[INFO] [stdout] 42eafa83be55fcb2f94075834c0c738f43f0800cedfd00bcac967a1509fccb89
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1996c8c3b3e2a651617b736602498108de4c4d13ec85a93b0f085746be333ab0
[INFO] running `Command { std: "docker" "start" "-a" "1996c8c3b3e2a651617b736602498108de4c4d13ec85a93b0f085746be333ab0", kill_on_drop: false }`
[INFO] [stderr] warning: unused variable: `config`
[INFO] [stderr]   --> src/core/pipeline/pipeline_config.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |     fn from(config: ValknutConfig) -> Self {
[INFO] [stderr]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `refactoring`
[INFO] [stderr]    --> src/core/pipeline/pipeline_executor.rs:245:9
[INFO] [stderr]     |
[INFO] [stderr] 245 |         refactoring: &super::pipeline_results::RefactoringAnalysisResults,
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_refactoring`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `impact`
[INFO] [stderr]    --> src/core/pipeline/pipeline_executor.rs:305:9
[INFO] [stderr]     |
[INFO] [stderr] 305 |         impact: &super::pipeline_results::ImpactAnalysisResults,
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_impact`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `config`
[INFO] [stderr]    --> src/core/pipeline/pipeline_executor.rs:484:9
[INFO] [stderr]     |
[INFO] [stderr] 484 |         config: &QualityGateConfig,
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `entity`
[INFO] [stderr]    --> src/core/featureset.rs:310:31
[INFO] [stderr]     |
[INFO] [stderr] 310 |     fn supports_entity(&self, entity: &CodeEntity) -> bool {
[INFO] [stderr]     |                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]     --> src/detectors/complexity.rs:1806:17
[INFO] [stderr]      |
[INFO] [stderr] 1806 |                 _ => {}
[INFO] [stderr]      |                 ^ no value can reach this
[INFO] [stderr]      |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]     --> src/detectors/complexity.rs:1806:17
[INFO] [stderr]      |
[INFO] [stderr] 1726 |                 ComplexityIssueType::HighCyclomaticComplexity => {
[INFO] [stderr]      |                 --------------------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 1743 |                 ComplexityIssueType::HighCognitiveComplexity => {
[INFO] [stderr]      |                 -------------------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 1752 |                 ComplexityIssueType::DeepNesting => {
[INFO] [stderr]      |                 -------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 1761 |                 ComplexityIssueType::LongFile => {
[INFO] [stderr]      |                 ----------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 1806 |                 _ => {}
[INFO] [stderr]      |                 ^ ...and 4 other patterns collectively make this unreachable
[INFO] [stderr]      = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `hash_vec`
[INFO] [stderr]    --> src/detectors/lsh.rs:189:21
[INFO] [stderr]     |
[INFO] [stderr] 189 |                 let hash_vec = u64x4::from(hashes);
[INFO] [stderr]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hash_vec`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sig_vec`
[INFO] [stderr]    --> src/detectors/lsh.rs:190:21
[INFO] [stderr]     |
[INFO] [stderr] 190 |                 let sig_vec = u64x4::from(current_sigs);
[INFO] [stderr]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sig_vec`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `part1_set`
[INFO] [stderr]    --> src/detectors/structure/directory.rs:410:13
[INFO] [stderr]     |
[INFO] [stderr] 410 |         let part1_set: HashSet<_> = part1.iter().copied().collect();
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_part1_set`
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/lib.rs:76:5
[INFO] [stderr]    |
[INFO] [stderr] 76 |     pub mod pipeline;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/lib.rs:56:9
[INFO] [stderr]    |
[INFO] [stderr] 56 | #![warn(missing_docs)]
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]    --> src/core/pipeline/pipeline_executor.rs:500:5
[INFO] [stderr]     |
[INFO] [stderr] 500 |     pub fn new() -> Self {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/core/pipeline/pipeline_executor.rs:504:5
[INFO] [stderr]     |
[INFO] [stderr] 504 |     pub fn get_all_extractors(&self) -> std::iter::Empty<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/pipeline/pipeline_stages.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pub structure_extractor: StructureExtractor,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/pipeline/pipeline_stages.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     pub complexity_analyzer: ComplexityAnalyzer,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/pipeline/pipeline_stages.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 |     pub refactoring_analyzer: RefactoringAnalyzer,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/bayesian.rs:71:5
[INFO] [stderr]    |
[INFO] [stderr] 71 |     pub beta: f64,   // Failure count + 1 (shape parameter)
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/bayesian.rs:75:5
[INFO] [stderr]    |
[INFO] [stderr] 75 |     pub expected_max: f64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/bayesian.rs:76:5
[INFO] [stderr]    |
[INFO] [stderr] 76 |     pub expected_mean: f64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/bayesian.rs:80:5
[INFO] [stderr]    |
[INFO] [stderr] 80 |     pub variance_threshold: f64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/bayesian.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 84 |     pub higher_is_worse: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/core/bayesian.rs:85:5
[INFO] [stderr]    |
[INFO] [stderr] 85 |     pub typical_distribution: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/complexity.rs:47:1
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub struct ComplexityThresholds {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/complexity.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 48 |     pub low: f64,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/complexity.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 |     pub moderate: f64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/complexity.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 50 |     pub high: f64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/complexity.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 51 |     pub very_high: f64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:185:5
[INFO] [stderr]     |
[INFO] [stderr] 185 |     Low,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:186:5
[INFO] [stderr]     |
[INFO] [stderr] 186 |     Moderate,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:187:5
[INFO] [stderr]     |
[INFO] [stderr] 187 |     High,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:188:5
[INFO] [stderr]     |
[INFO] [stderr] 188 |     VeryHigh,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:189:5
[INFO] [stderr]     |
[INFO] [stderr] 189 |     Critical,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]    --> src/detectors/complexity.rs:229:1
[INFO] [stderr]     |
[INFO] [stderr] 229 | pub enum ComplexityIssueType {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:230:5
[INFO] [stderr]     |
[INFO] [stderr] 230 |     HighCyclomaticComplexity,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:231:5
[INFO] [stderr]     |
[INFO] [stderr] 231 |     HighCognitiveComplexity,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:232:5
[INFO] [stderr]     |
[INFO] [stderr] 232 |     DeepNesting,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:233:5
[INFO] [stderr]     |
[INFO] [stderr] 233 |     TooManyParameters,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:234:5
[INFO] [stderr]     |
[INFO] [stderr] 234 |     LongFunction,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:235:5
[INFO] [stderr]     |
[INFO] [stderr] 235 |     LongFile,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:236:5
[INFO] [stderr]     |
[INFO] [stderr] 236 |     HighTechnicalDebt,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:237:5
[INFO] [stderr]     |
[INFO] [stderr] 237 |     LowMaintainability,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]    --> src/detectors/complexity.rs:256:1
[INFO] [stderr]     |
[INFO] [stderr] 256 | pub enum RefactoringType {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:257:5
[INFO] [stderr]     |
[INFO] [stderr] 257 |     ExtractMethod,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:258:5
[INFO] [stderr]     |
[INFO] [stderr] 258 |     SimplifyConditions,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:259:5
[INFO] [stderr]     |
[INFO] [stderr] 259 |     ReduceNesting,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:260:5
[INFO] [stderr]     |
[INFO] [stderr] 260 |     SplitFunction,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:261:5
[INFO] [stderr]     |
[INFO] [stderr] 261 |     ExtractClass,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:262:5
[INFO] [stderr]     |
[INFO] [stderr] 262 |     ReduceParameters,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:263:5
[INFO] [stderr]     |
[INFO] [stderr] 263 |     SimplifyExpressions,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/complexity.rs:264:5
[INFO] [stderr]     |
[INFO] [stderr] 264 |     RemoveDeadCode,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/lsh.rs:340:5
[INFO] [stderr]     |
[INFO] [stderr] 340 |     pub shingle_size: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/structure/mod.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 36 |     pub branch_reorg_packs: Vec<BranchReorgPack>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/structure/mod.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub file_split_packs: Vec<FileSplitPack>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/detectors/structure/mod.rs:92:5
[INFO] [stderr]    |
[INFO] [stderr] 92 |     pub fn new() -> Self {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/detectors/structure/mod.rs:97:5
[INFO] [stderr]    |
[INFO] [stderr] 97 |     pub fn with_config(config: StructureConfig) -> Self {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/structure/config.rs:22:1
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub struct StructureToggles {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/structure/config.rs:32:1
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub struct FsDirectoryConfig {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/structure/config.rs:48:1
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub struct FsFileConfig {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/structure/config.rs:60:1
[INFO] [stderr]    |
[INFO] [stderr] 60 | pub struct PartitioningConfig {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/structure/directory.rs:19:1
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub struct DirectoryAnalyzer {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/detectors/structure/directory.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     pub fn new(config: StructureConfig) -> Self {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/structure/file.rs:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct FileAnalyzer {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/detectors/structure/file.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub fn new(config: StructureConfig) -> Self {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     CoveragePyXml,      // coverage.py XML format
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     Lcov,               // LCOV .info format  
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 |     Cobertura,          // Cobertura XML format
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     JaCoCo,             // JaCoCo XML format
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     IstanbulJson,       // Istanbul JSON format
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     Unknown,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 28 |     pub line_number: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 |     pub hits: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 30 |     pub is_covered: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 36 |     pub path: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub start: usize,  // inclusive
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     pub end: usize,    // inclusive  
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 |     pub hits: Option<usize>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 |     pub gap_loc: usize,                    // Lines of code in gap
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub cyclomatic_in_gap: f64,           // Complexity within gap
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:47:5
[INFO] [stderr]    |
[INFO] [stderr] 47 |     pub cognitive_in_gap: f64,            // Cognitive complexity within gap
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 48 |     pub fan_in_gap: usize,                // Number of callsites
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 |     pub exports_touched: bool,            // Contains public APIs
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 50 |     pub dependency_centrality_file: f64,  // File's import graph centrality
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 51 |     pub interface_surface: usize,         // Parameters + return types
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub docstring_or_comment_present: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:53:5
[INFO] [stderr]    |
[INFO] [stderr] 53 |     pub exception_density_in_gap: f64,    // Exception handling per KLOC
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:59:5
[INFO] [stderr]    |
[INFO] [stderr] 59 |     pub path: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 |     pub span: UncoveredSpan,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:61:5
[INFO] [stderr]    |
[INFO] [stderr] 61 |     pub file_loc: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:62:5
[INFO] [stderr]    |
[INFO] [stderr] 62 |     pub language: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:63:5
[INFO] [stderr]    |
[INFO] [stderr] 63 |     pub score: f64,                       // 0-1 priority score
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:64:5
[INFO] [stderr]    |
[INFO] [stderr] 64 |     pub features: GapFeatures,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:65:5
[INFO] [stderr]    |
[INFO] [stderr] 65 |     pub symbols: Vec<GapSymbol>,          // Functions/classes in gap
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:66:5
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub preview: SnippetPreview,          // Context for agents
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:72:5
[INFO] [stderr]    |
[INFO] [stderr] 72 |     pub kind: SymbolKind,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:73:5
[INFO] [stderr]    |
[INFO] [stderr] 73 |     pub name: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:74:5
[INFO] [stderr]    |
[INFO] [stderr] 74 |     pub signature: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:75:5
[INFO] [stderr]    |
[INFO] [stderr] 75 |     pub line_start: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:76:5
[INFO] [stderr]    |
[INFO] [stderr] 76 |     pub line_end: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]   --> src/detectors/coverage.rs:80:1
[INFO] [stderr]    |
[INFO] [stderr] 80 | pub enum SymbolKind {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:81:5
[INFO] [stderr]    |
[INFO] [stderr] 81 |     Function,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:82:5
[INFO] [stderr]    |
[INFO] [stderr] 82 |     Method,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:83:5
[INFO] [stderr]    |
[INFO] [stderr] 83 |     Class,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/coverage.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 84 |     Module,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:90:5
[INFO] [stderr]    |
[INFO] [stderr] 90 |     pub language: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:91:5
[INFO] [stderr]    |
[INFO] [stderr] 91 |     pub pre: Vec<String>,      // Context lines before gap
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:92:5
[INFO] [stderr]    |
[INFO] [stderr] 92 |     pub head: Vec<String>,     // First few lines of gap
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:93:5
[INFO] [stderr]    |
[INFO] [stderr] 93 |     pub tail: Vec<String>,     // Last few lines of gap  
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:94:5
[INFO] [stderr]    |
[INFO] [stderr] 94 |     pub post: Vec<String>,     // Context lines after gap
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 95 |     pub markers: GapMarkers,   // Line number markers
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/detectors/coverage.rs:96:5
[INFO] [stderr]    |
[INFO] [stderr] 96 |     pub imports: Vec<String>,  // Imports used in gap (for mocking)
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]    --> src/detectors/coverage.rs:100:1
[INFO] [stderr]     |
[INFO] [stderr] 100 | pub struct GapMarkers {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:101:5
[INFO] [stderr]     |
[INFO] [stderr] 101 |     pub start_line: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:102:5
[INFO] [stderr]     |
[INFO] [stderr] 102 |     pub end_line: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:108:5
[INFO] [stderr]     |
[INFO] [stderr] 108 |     pub file_cov_gain: f64,       // Expected file coverage increase
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:109:5
[INFO] [stderr]     |
[INFO] [stderr] 109 |     pub repo_cov_gain_est: f64,   // Expected repo coverage increase
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:115:5
[INFO] [stderr]     |
[INFO] [stderr] 115 |     pub tests_to_write_est: usize,  // Estimated number of tests needed
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:116:5
[INFO] [stderr]     |
[INFO] [stderr] 116 |     pub mocks_est: usize,           // Estimated mocks needed
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:122:5
[INFO] [stderr]     |
[INFO] [stderr] 122 |     pub kind: String,                    // Always "coverage"
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:123:5
[INFO] [stderr]     |
[INFO] [stderr] 123 |     pub pack_id: String,                 // e.g., "cov:src/lib.rs"
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:124:5
[INFO] [stderr]     |
[INFO] [stderr] 124 |     pub path: PathBuf,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:125:5
[INFO] [stderr]     |
[INFO] [stderr] 125 |     pub file_info: FileInfo,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:126:5
[INFO] [stderr]     |
[INFO] [stderr] 126 |     pub gaps: Vec<CoverageGap>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:127:5
[INFO] [stderr]     |
[INFO] [stderr] 127 |     pub value: PackValue,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:128:5
[INFO] [stderr]     |
[INFO] [stderr] 128 |     pub effort: PackEffort,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:134:5
[INFO] [stderr]     |
[INFO] [stderr] 134 |     pub loc: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:135:5
[INFO] [stderr]     |
[INFO] [stderr] 135 |     pub coverage_before: f64,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:136:5
[INFO] [stderr]     |
[INFO] [stderr] 136 |     pub coverage_after_if_filled: f64,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:142:5
[INFO] [stderr]     |
[INFO] [stderr] 142 |     pub total_gap_loc: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:143:5
[INFO] [stderr]     |
[INFO] [stderr] 143 |     pub avg_complexity: f64,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:144:5
[INFO] [stderr]     |
[INFO] [stderr] 144 |     pub centrality: f64,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:145:5
[INFO] [stderr]     |
[INFO] [stderr] 145 |     pub gap_count: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:151:5
[INFO] [stderr]     |
[INFO] [stderr] 151 |     pub enabled: bool,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:152:5
[INFO] [stderr]     |
[INFO] [stderr] 152 |     pub report_paths: Vec<PathBuf>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:153:5
[INFO] [stderr]     |
[INFO] [stderr] 153 |     pub max_gaps_per_file: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:154:5
[INFO] [stderr]     |
[INFO] [stderr] 154 |     pub min_gap_loc: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:155:5
[INFO] [stderr]     |
[INFO] [stderr] 155 |     pub snippet_context_lines: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:156:5
[INFO] [stderr]     |
[INFO] [stderr] 156 |     pub long_gap_head_tail: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:157:5
[INFO] [stderr]     |
[INFO] [stderr] 157 |     pub group_cross_file: bool,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:158:5
[INFO] [stderr]     |
[INFO] [stderr] 158 |     pub target_repo_gain: f64,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:159:5
[INFO] [stderr]     |
[INFO] [stderr] 159 |     pub weights: ScoringWeights,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:160:5
[INFO] [stderr]     |
[INFO] [stderr] 160 |     pub exclude_patterns: Vec<String>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:166:5
[INFO] [stderr]     |
[INFO] [stderr] 166 |     pub size: f64,          // 0.40
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:167:5
[INFO] [stderr]     |
[INFO] [stderr] 167 |     pub complexity: f64,    // 0.20
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:168:5
[INFO] [stderr]     |
[INFO] [stderr] 168 |     pub fan_in: f64,        // 0.15
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:169:5
[INFO] [stderr]     |
[INFO] [stderr] 169 |     pub exports: f64,       // 0.10
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:170:5
[INFO] [stderr]     |
[INFO] [stderr] 170 |     pub centrality: f64,    // 0.10
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:171:5
[INFO] [stderr]     |
[INFO] [stderr] 171 |     pub docs: f64,          // 0.05
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/coverage.rs:215:5
[INFO] [stderr]     |
[INFO] [stderr] 215 |     pub config: CoverageConfig,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]    --> src/detectors/coverage.rs:219:5
[INFO] [stderr]     |
[INFO] [stderr] 219 |     pub fn new(config: CoverageConfig) -> Self {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/refactoring.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 |     ExtractMethod,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/refactoring.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 |     ExtractClass,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/refactoring.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 36 |     ReduceComplexity,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/refactoring.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 |     EliminateDuplication,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/refactoring.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     ImproveNaming,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/refactoring.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 |     SimplifyConditionals,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/refactoring.rs:40:5
[INFO] [stderr]    |
[INFO] [stderr] 40 |     RemoveDeadCode,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]    --> src/detectors/refactoring.rs:402:1
[INFO] [stderr]     |
[INFO] [stderr] 402 | pub struct RefactoringExtractor;
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/names_simple.rs:76:1
[INFO] [stderr]    |
[INFO] [stderr] 76 | pub struct SideEffects {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/detectors/names_simple.rs:88:1
[INFO] [stderr]    |
[INFO] [stderr] 88 | pub struct ReturnTypeInfo {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]   --> src/detectors/names_simple.rs:98:1
[INFO] [stderr]    |
[INFO] [stderr] 98 | pub enum TypeCategory {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/detectors/names_simple.rs:99:5
[INFO] [stderr]    |
[INFO] [stderr] 99 |     Scalar,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:100:5
[INFO] [stderr]     |
[INFO] [stderr] 100 |     Object,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:101:5
[INFO] [stderr]     |
[INFO] [stderr] 101 |     Collection,
[INFO] [stdout] 
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stdout] running 359 tests
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:102:5
[INFO] [stderr]     |
[INFO] [stderr] 102 |     Unit,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]    --> src/detectors/names_simple.rs:106:1
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub enum ExecutionPattern {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:107:5
[INFO] [stderr]     |
[INFO] [stderr] 107 |     Synchronous,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:108:5
[INFO] [stderr]     |
[INFO] [stderr] 108 |     Asynchronous,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:109:5
[INFO] [stderr]     |
[INFO] [stderr] 109 |     Ambiguous,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]    --> src/detectors/names_simple.rs:126:1
[INFO] [stderr]     |
[INFO] [stderr] 126 | pub enum MismatchType {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:127:5
[INFO] [stderr]     |
[INFO] [stderr] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:127:22
[INFO] [stderr]     |
[INFO] [stderr] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:127:40
[INFO] [stderr]     |
[INFO] [stderr] 127 |     EffectMismatch { expected: String, actual: String },
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:128:5
[INFO] [stderr]     |
[INFO] [stderr] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:128:27
[INFO] [stderr]     |
[INFO] [stderr] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:128:45
[INFO] [stderr]     |
[INFO] [stderr] 128 |     CardinalityMismatch { expected: String, actual: String },
[INFO] [stderr]     |                                             ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:129:5
[INFO] [stderr]     |
[INFO] [stderr] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:129:27
[INFO] [stderr]     |
[INFO] [stderr] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:129:45
[INFO] [stderr]     |
[INFO] [stderr] 129 |     OptionalityMismatch { expected: String, actual: String },
[INFO] [stderr]     |                                             ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:130:5
[INFO] [stderr]     |
[INFO] [stderr] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:130:21
[INFO] [stderr]     |
[INFO] [stderr] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:130:39
[INFO] [stderr]     |
[INFO] [stderr] 130 |     AsyncMismatch { expected: String, actual: String },
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]    --> src/detectors/names_simple.rs:131:5
[INFO] [stderr]     |
[INFO] [stderr] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:131:25
[INFO] [stderr]     |
[INFO] [stderr] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/detectors/names_simple.rs:131:43
[INFO] [stderr]     |
[INFO] [stderr] 131 |     OperationMismatch { expected: String, actual: String },
[INFO] [stderr]     |                                           ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]  --> src/lang/common.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     Function,
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]  --> src/lang/common.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 |     Method,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/lang/common.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 |     Class,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/lang/common.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     Interface,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/lang/common.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 |     Module,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/lang/common.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     Variable,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/lang/common.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     Constant,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/lang/common.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 |     Enum,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/lang/common.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     Struct,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]  --> src/io/cache.rs:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Cache;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]  --> src/io/cache.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     pub fn new() -> Self {
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]   --> src/io/reports.rs:14:1
[INFO] [stdout] test api::config_types::tests::test_analysis_config_default ... ok
[INFO] [stderr]    |
[INFO] [stdout] test api::config_types::tests::test_empty_languages_list ... ok
[INFO] [stderr] 14 | pub enum ReportError {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/io/reports.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     Template(#[from] handlebars::TemplateError),
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/io/reports.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     Render(#[from] handlebars::RenderError),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/io/reports.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     Io(#[from] std::io::Error),
[INFO] [stderr]    |     ^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/io/reports.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     Serialization(#[from] serde_json::Error),
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/io/reports.rs:26:1
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub struct ReportGenerator {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/io/reports.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr] 56 |     pub fn new() -> Self {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/io/reports.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 |     pub fn with_templates_dir<P: AsRef<Path>>(mut self, templates_dir: P) -> Result<Self, ReportError> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/io/reports.rs:95:5
[INFO] [stderr]     |
[INFO] [stderr]  95 | /     pub fn generate_report<P: AsRef<Path>>(
[INFO] [stderr]  96 | |         &self,
[INFO] [stderr]  97 | |         results: &AnalysisResults,
[INFO] [stderr]  98 | |         output_path: P,
[INFO] [stderr]  99 | |         format: ReportFormat,
[INFO] [stderr] 100 | |     ) -> Result<(), ReportError> {
[INFO] [stderr]     | |________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: `valknut-rs` (lib) generated 203 warnings (run `cargo fix --lib -p valknut-rs` to apply 8 suggestions)
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/bin/mcp/protocol.rs:4:5
[INFO] [stdout] test api::config_types::tests::test_analysis_config_new ... ok
[INFO] [stderr]   |
[INFO] [stdout] test api::config_types::tests::test_builder_pattern_immutability ... ok
[INFO] [stderr] 4 | use std::collections::HashMap;
[INFO] [stdout] test api::config_types::tests::test_method_chaining ... ok
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test api::config_types::tests::test_pattern_string_conversion ... ok
[INFO] [stderr]   |
[INFO] [stdout] test api::config_types::tests::test_max_files_none_conversion ... ok
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] test api::config_types::tests::test_serialization ... ok
[INFO] [stderr] 
[INFO] [stdout] test api::config_types::tests::test_to_valknut_config ... ok
[INFO] [stderr] warning: unused import: `protocol::*`
[INFO] [stdout] test api::config_types::tests::test_with_confidence_threshold ... ok
[INFO] [stderr]   --> src/bin/mcp/mod.rs:10:9
[INFO] [stdout] test api::config_types::tests::test_with_graph_analysis ... ok
[INFO] [stderr]    |
[INFO] [stdout] test api::config_types::tests::test_with_language ... ok
[INFO] [stderr] 10 | pub use protocol::*;
[INFO] [stdout] test api::config_types::tests::test_with_lsh_analysis ... ok
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tools::*`
[INFO] [stderr]   --> src/bin/mcp/mod.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub use tools::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `server::*`
[INFO] [stderr]   --> src/bin/mcp/mod.rs:12:9
[INFO] [stderr]    |
[INFO] [stdout] test api::config_types::tests::test_with_max_files ... ok
[INFO] [stderr] 12 | pub use server::*;
[INFO] [stdout] test api::config_types::tests::test_with_scoring_enabled ... ok
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stdout] test api::config_types::tests::test_with_refactoring_analysis ... ok
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `survey`
[INFO] [stderr]   --> src/bin/cli/commands.rs:27:5
[INFO] [stdout] test api::config_types::tests::test_exclude_pattern ... ok
[INFO] [stderr]    |
[INFO] [stdout] test api::engine::tests::test_analyze_files_no_parent_directory ... ok
[INFO] [stderr] 27 |     survey: bool,
[INFO] [stdout] test api::engine::tests::test_analyze_files_empty_list ... ok
[INFO] [stderr]    |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_survey`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `survey_verbosity`
[INFO] [stderr]   --> src/bin/cli/commands.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 28 |     survey_verbosity: SurveyVerbosity
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_survey_verbosity`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `args`
[INFO] [stderr]    --> src/bin/cli/commands.rs:665:36
[INFO] [stderr]     |
[INFO] [stderr] 665 | pub async fn analyze_impact_legacy(args: ImpactArgs) -> anyhow::Result<()> {
[INFO] [stderr]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TOOL_EXECUTION_ERROR` is never used
[INFO] [stderr]    --> src/bin/mcp/protocol.rs:118:15
[INFO] [stderr]     |
[INFO] [stderr] 118 |     pub const TOOL_EXECUTION_ERROR: i32 = -32002;
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test api::engine::tests::test_analyze_vectors_empty ... ok
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `valknut-rs` (bin "valknut") generated 8 warnings (run `cargo fix --bin "valknut" -p valknut-rs` to apply 7 suggestions)
[INFO] [stderr] warning: unused import: `Command as StdCommand`
[INFO] [stderr]   --> tests/mcp_integration_tests.rs:11:20
[INFO] [stderr]    |
[INFO] [stderr] 11 | use std::process::{Command as StdCommand, Stdio};
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `NamedTempFile`
[INFO] [stdout] test api::engine::tests::test_analyze_file_not_directory ... ok
[INFO] [stderr]   --> tests/mcp_integration_tests.rs:12:25
[INFO] [stderr]    |
[INFO] [stderr] 12 | use tempfile::{tempdir, NamedTempFile};
[INFO] [stderr]    |                         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Write`
[INFO] [stderr]   --> tests/mcp_integration_tests.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::io::Write;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::process::Stdio`
[INFO] [stderr]   --> tests/mcp_integration_tests_fixed.rs:64:5
[INFO] [stderr]    |
[INFO] [stderr] 64 | use std::process::Stdio;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::process::Command as TokioCommand`
[INFO] [stderr]   --> tests/mcp_integration_tests_fixed.rs:67:5
[INFO] [stderr]    |
[INFO] [stderr] 67 | use tokio::process::Command as TokioCommand;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> tests/mcp_integration_tests_fixed.rs:1074:9
[INFO] [stderr]      |
[INFO] [stderr] 1074 |         timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1074 |         let _ = timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> tests/mcp_integration_tests_fixed.rs:1091:9
[INFO] [stderr]      |
[INFO] [stderr] 1091 |         timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1091 |         let _ = timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> tests/mcp_integration_tests_fixed.rs:1115:9
[INFO] [stderr]      |
[INFO] [stderr] 1115 |         timeout(Duration::from_secs(10), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1115 |         let _ = timeout(Duration::from_secs(10), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> tests/mcp_integration_tests_fixed.rs:1137:9
[INFO] [stderr]      |
[INFO] [stderr] 1137 |         timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1137 |         let _ = timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> tests/mcp_integration_tests_fixed.rs:1166:9
[INFO] [stderr]      |
[INFO] [stderr] 1166 |         timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] test api::engine::tests::test_analyze_empty_directory ... ok
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout] test api::engine::tests::test_analyze_vectors_with_multiple_features ... ok
[INFO] [stderr]      |
[INFO] [stderr] 1166 |         let _ = timeout(Duration::from_secs(5), reader.read_line(&mut response)).await.unwrap();
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> tests/mcp_integration_tests_fixed.rs:1212:13
[INFO] [stderr]      |
[INFO] [stderr] 1212 | /             timeout(Duration::from_secs(30), reader.read_line(&mut response)).await
[INFO] [stderr] 1213 | |                 .expect("Should receive response within timeout");
[INFO] [stderr]      | |_________________________________________________________________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1212 |             let _ = timeout(Duration::from_secs(30), reader.read_line(&mut response)).await
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::PathBuf`
[INFO] [stderr]   --> src/core/pipeline/mod.rs:21:9
[INFO] [stderr]    |
[INFO] [stderr] 21 |     use std::path::PathBuf;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::lang::common::EntityKind`
[INFO] [stderr]    --> src/core/featureset.rs:611:9
[INFO] [stderr]     |
[INFO] [stderr] 611 |     use crate::lang::common::EntityKind;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ParseFloatError` and `ParseIntError`
[INFO] [stderr]    --> src/core/errors.rs:423:20
[INFO] [stderr]     |
[INFO] [stderr] 423 |     use std::num::{ParseIntError, ParseFloatError};
[INFO] [stderr]     |                    ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::PathBuf`
[INFO] [stderr]    --> src/detectors/complexity.rs:270:9
[INFO] [stderr]     |
[INFO] [stderr] 270 |     use std::path::PathBuf;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Write`
[INFO] [stderr]    --> src/detectors/complexity.rs:272:9
[INFO] [stderr]     |
[INFO] [stderr] 272 |     use std::io::Write;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::PathBuf`
[INFO] [stderr]    --> src/detectors/names_simple.rs:546:9
[INFO] [stderr]     |
[INFO] [stderr] 546 |     use std::path::PathBuf;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ScoringResult`
[INFO] [stderr]    --> src/io/reports.rs:432:32
[INFO] [stderr]     |
[INFO] [stderr] 432 |     use crate::core::scoring::{ScoringResult, Priority};
[INFO] [stderr]     |                                ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::core::featureset::FeatureVector`
[INFO] [stderr]    --> src/io/reports.rs:433:9
[INFO] [stderr]     |
[INFO] [stderr] 433 |     use crate::core::featureset::FeatureVector;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `stats`
[INFO] [stderr]    --> src/core/scoring.rs:836:13
[INFO] [stderr]     |
[INFO] [stderr] 836 |         let stats = NormalizationStatistics::from_values(values);
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `stats`
[INFO] [stderr]    --> src/core/bayesian.rs:785:13
[INFO] [stderr]     |
[INFO] [stderr] 785 |         let stats = FeatureStatistics {
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/core/bayesian.rs:854:13
[INFO] [stderr]     |
[INFO] [stderr] 854 |         let mut normalizer = BayesianNormalizer::new("z_score");
[INFO] [stderr]     |             ----^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `stats`
[INFO] [stderr]    --> src/core/bayesian.rs:857:13
[INFO] [stderr]     |
[INFO] [stderr] 857 |         let stats = FeatureStatistics {
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/detectors/coverage.rs:2474:13
[INFO] [stderr]      |
[INFO] [stderr] 2474 |         let mut extractor = CoverageExtractor::new(config);
[INFO] [stderr]      |             ----^^^^^^^^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]     --> src/detectors/structure/directory.rs:1763:17
[INFO] [stderr]      |
[INFO] [stderr] 1763 |         assert!(graph.edge_count() >= 0); // May have edges if imports are resolved
[INFO] [stderr]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]     --> src/detectors/structure/directory.rs:1815:17
[INFO] [stderr]      |
[INFO] [stderr] 1815 |         assert!(gain.cross_edges_reduced >= 0);
[INFO] [stderr]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]     --> src/detectors/structure/directory.rs:1964:17
[INFO] [stderr]      |
[INFO] [stderr] 1964 |         assert!(result >= 0);
[INFO] [stderr]      |                 ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]     --> src/detectors/structure/file.rs:1511:17
[INFO] [stderr]      |
[INFO] [stderr] 1511 |         assert!(graph.node_count() >= 0);
[INFO] [stderr]      |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]    --> src/api/engine.rs:397:17
[INFO] [stderr]     |
[INFO] [stderr] 397 |         assert!(results.summary.entities_analyzed >= 0); // At least no crash
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]    --> src/api/engine.rs:527:17
[INFO] [stderr]     |
[INFO] [stderr] 527 |         assert!(results.summary.entities_analyzed >= 0);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `NamedTempFile`
[INFO] [stderr]     --> src/bin/cli/output.rs:1232:29
[INFO] [stderr]      |
[INFO] [stderr] 1232 |     use tempfile::{TempDir, NamedTempFile};
[INFO] [stderr]      |                             ^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/bin/mcp/protocol.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::env`
[INFO] [stderr]   --> src/bin/valknut.rs:72:9
[INFO] [stderr]    |
[INFO] [stderr] 72 |     use std::env;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AnalyzeArgs`, `ImpactArgs`, `InitConfigArgs`, `McpManifestArgs`, `McpStdioArgs`, `StructureArgs`, and `ValidateConfigArgs`
[INFO] [stderr]   --> src/bin/valknut.rs:74:21
[INFO] [stderr]    |
[INFO] [stderr] 74 |     use cli::args::{AnalyzeArgs, InitConfigArgs, ValidateConfigArgs, McpStdioArgs, McpManifestArgs, StructureArgs, ImpactArgs, Outpu...
[INFO] [stderr]    |                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `valknut-rs` (test "mcp_integration_tests") generated 3 warnings (run `cargo fix --test "mcp_integration_tests" -p valknut-rs` to apply 2 suggestions)
[INFO] [stderr] warning: `valknut-rs` (test "mcp_integration_tests_fixed") generated 8 warnings (run `cargo fix --test "mcp_integration_tests_fixed" -p valknut-rs` to apply 2 suggestions)
[INFO] [stderr] warning: `valknut-rs` (lib test) generated 222 warnings (203 duplicates) (run `cargo fix --lib -p valknut-rs --tests` to apply 13 suggestions)
[INFO] [stderr] warning: `valknut-rs` (bin "valknut" test) generated 11 warnings (7 duplicates) (run `cargo fix --bin "valknut" -p valknut-rs --tests` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.61s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/valknut_rs-54b87d581d9c6e4d)
[INFO] [stdout] test api::engine::tests::test_config_access ... ok
[INFO] [stdout] test api::engine::tests::test_analyze_nonexistent_directory ... ok
[INFO] [stdout] test api::engine::tests::test_analyze_vectors ... ok
[INFO] [stdout] test api::engine::tests::test_engine_status ... ok
[INFO] [stdout] test api::engine::tests::test_engine_creation ... ok
[INFO] [stdout] test api::engine::tests::test_health_check_debug ... ok
[INFO] [stdout] test api::engine::tests::test_engine_status_debug ... ok
[INFO] [stdout] test api::engine::tests::test_get_supported_languages ... ok
[INFO] [stdout] test api::engine::tests::test_analyze_files_with_parent_directory ... ok
[INFO] [stdout] test api::engine::tests::test_health_check ... ok
[INFO] [stdout] test api::engine::tests::test_health_check_comprehensive ... ok
[INFO] [stdout] test api::engine::tests::test_health_check_status_equality ... ok
[INFO] [stdout] test api::results::tests::test_analysis_results_files_analyzed ... ok
[INFO] [stdout] test api::engine::tests::test_health_check_no_message ... ok
[INFO] [stdout] test api::results::tests::test_analysis_results_is_healthy ... ok
[INFO] [stdout] test api::engine::tests::test_is_ready ... ok
[INFO] [stdout] test api::engine::tests::test_health_check_result_debug ... ok
[INFO] [stdout] test api::results::tests::test_analysis_results_critical_candidates ... ok
[INFO] [stdout] test api::results::tests::test_analysis_summary_default ... ok
[INFO] [stdout] test api::results::tests::test_calculate_code_health_score_edge_cases ... ok
[INFO] [stdout] test api::results::tests::test_feature_contribution_creation ... ok
[INFO] [stdout] test api::results::tests::test_analysis_results_top_issues ... ok
[INFO] [stdout] test api::results::tests::test_code_health_calculation ... ok
[INFO] [stdout] test api::results::tests::test_feature_belongs_to_category ... ok
[INFO] [stdout] test api::results::tests::test_memory_stats_fields ... ok
[INFO] [stdout] test api::results::tests::test_analysis_statistics_creation ... ok
[INFO] [stdout] test api::results::tests::test_generate_suggestions ... ok
[INFO] [stdout] test api::results::tests::test_generate_issue_description ... ok
[INFO] [stdout] test api::results::tests::test_refactoring_candidate_creation ... ok
[INFO] [stdout] test api::results::tests::test_refactoring_candidate_fields ... ok
[INFO] [stdout] test api::results::tests::test_refactoring_issue_creation ... ok
[INFO] [stdout] test api::results::tests::test_serialization_deserialization ... ok
[INFO] [stdout] test api::results::tests::test_refactoring_suggestion_creation ... ok
[INFO] [stdout] test core::bayesian::tests::test_bayesian_normalizer_add_prior ... ok
[INFO] [stdout] test core::bayesian::tests::test_bayesian_normalizer_create_generic_prior ... ok
[INFO] [stdout] test core::bayesian::tests::test_bayesian_normalizer_normalize_value ... ok
[INFO] [stdout] test core::bayesian::tests::test_bayesian_normalizer_get_all_statistics ... ok
[INFO] [stdout] test core::bayesian::tests::test_bayesian_normalizer ... ok
[INFO] [stdout] test core::bayesian::tests::test_bayesian_normalizer_batch_normalization ... ok
[INFO] [stdout] test core::bayesian::tests::test_feature_prior ... ok
[INFO] [stdout] test core::bayesian::tests::test_feature_prior_effective_sample_size ... ok
[INFO] [stdout] test core::bayesian::tests::test_bayesian_normalizer_confidence_methods ... ok
[INFO] [stdout] test core::bayesian::tests::test_feature_prior_type_variants ... ok
[INFO] [stdout] test core::bayesian::tests::test_feature_prior_with_type ... ok
[INFO] [stdout] test core::bayesian::tests::test_feature_prior_prior_variance ... ok
[INFO] [stdout] test core::bayesian::tests::test_feature_prior_with_range ... ok
[INFO] [stdout] test core::bayesian::tests::test_posterior_calculation ... ok
[INFO] [stdout] test core::bayesian::tests::test_feature_statistics_from_values ... ok
[INFO] [stdout] test core::bayesian::tests::test_variance_confidence ... ok
[INFO] [stdout] test core::errors::tests::test_config_field_error ... ok
[INFO] [stdout] test core::bayesian::tests::test_variance_confidence_score ... ok
[INFO] [stdout] test core::errors::tests::test_error_creation ... ok
[INFO] [stdout] test core::errors::tests::test_error_display_formatting ... ok
[INFO] [stdout] test core::errors::tests::test_error_with_context ... ok
[INFO] [stdout] test core::errors::tests::test_from_io_error ... ok
[INFO] [stdout] test core::errors::tests::test_error_debug_formatting ... ok
[INFO] [stdout] test core::errors::tests::test_from_parse_float_error ... ok
[INFO] [stdout] test core::errors::tests::test_feature_unavailable ... ok
[INFO] [stdout] test core::errors::tests::test_from_parse_int_error ... ok
[INFO] [stdout] test core::errors::tests::test_from_json_error ... ok
[INFO] [stdout] test core::errors::tests::test_from_utf8_error ... ok
[INFO] [stdout] test core::errors::tests::test_graph_error ... ok
[INFO] [stdout] test core::errors::tests::test_lsh_error ... ok
[INFO] [stdout] test core::errors::tests::test_math_with_context ... ok
[INFO] [stdout] test core::errors::tests::test_pipeline_error ... ok
[INFO] [stdout] test core::errors::tests::test_from_yaml_error ... ok
[INFO] [stdout] test core::errors::tests::test_parse_with_location ... ok
[INFO] [stdout] test core::errors::tests::test_io_error_creation ... ok
[INFO] [stdout] test core::errors::tests::test_result_ext_with_context ... ok
[INFO] [stdout] test core::errors::tests::test_validation_error ... ok
[INFO] [stdout] test core::errors::tests::test_result_extension ... ok
[INFO] [stdout] test core::errors::tests::test_with_context_non_contextual_error ... ok
[INFO] [stdout] test core::errors::tests::test_unsupported_error ... ok
[INFO] [stdout] test core::errors::tests::test_with_context_math_error ... ok
[INFO] [stdout] test core::featureset::tests::test_code_entity_add_property ... ok
[INFO] [stdout] test core::featureset::tests::test_code_entity_with_source_code ... ok
[INFO] [stdout] test core::featureset::tests::test_cosine_similarity ... ok
[INFO] [stdout] test core::featureset::tests::test_cosine_similarity_orthogonal ... ok
[INFO] [stdout] test core::featureset::tests::test_code_entity_line_count ... ok
[INFO] [stdout] test core::featureset::tests::test_cosine_similarity_empty_vectors ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_definition ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_definition_with_polarity ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_extractor_registry_get_all_feature_definitions ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_definition_clamp_value ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_polarity_variants ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_extractor_registry_get_compatible_extractors ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_extractor_validate_features ... ok
[INFO] [stdout] test core::featureset::tests::test_extraction_context ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_validation ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_vector ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_vector_normalized_features ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_vector_feature_names ... ok
[INFO] [stdout] test core::featureset::tests::test_refactoring_suggestion ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_vector_suggestions ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_vector_l2_norm ... ok
[INFO] [stdout] test core::featureset::tests::test_refactoring_suggestion_with_context ... ok
[INFO] [stdout] test core::featureset::tests::test_refactoring_suggestion_with_location ... ok
[INFO] [stdout] test core::file_utils::tests::test_code_file_detection ... ok
[INFO] [stdout] test core::file_utils::tests::test_binary_detection_by_extension ... ok
[INFO] [stdout] test core::pipeline::tests::test_pipeline_analyze_vectors_legacy ... ok
[INFO] [stdout] test core::file_utils::tests::test_read_valid_utf8 ... ok
[INFO] [stdout] test core::file_utils::tests::test_count_lines_of_code ... ok
[INFO] [stdout] test core::pipeline::tests::test_pipeline_extractor_registry ... ok
[INFO] [stdout] test core::pipeline::tests::test_pipeline_fit_legacy_api ... ok
[INFO] [stdout] test core::pipeline::tests::test_pipeline_status ... ok
[INFO] [stdout] test core::pipeline::tests::test_quality_gates_evaluation ... ok
[INFO] [stdout] test core::pipeline::tests::test_analyze_directory_integration ... ok
[INFO] [stdout] test core::scoring::tests::test_feature_normalizer_get_statistics ... ok
[INFO] [stdout] test core::featureset::tests::test_feature_vector_metadata ... ok
[INFO] [stdout] test core::scoring::tests::test_feature_normalizer ... ok
[INFO] [stdout] test core::scoring::tests::test_feature_scorer_get_category_weight ... ok
[INFO] [stdout] test core::scoring::tests::test_feature_scorer ... ok
[INFO] [stdout] test core::scoring::tests::test_normalization_statistics_empty ... ok
[INFO] [stdout] test api::config_types::tests::test_with_languages ... ok
[INFO] [stdout] test core::scoring::tests::test_normalization_statistics ... ok
[INFO] [stdout] test core::scoring::tests::test_normalization_statistics_percentile ... ok
[INFO] [stdout] test core::scoring::tests::test_priority_calculation ... ok
[INFO] [stdout] test core::scoring::tests::test_scoring_result ... ok
[INFO] [stdout] test core::scoring::tests::test_scoring_result_is_high_priority ... ok
[INFO] [stdout] test core::scoring::tests::test_scoring_result_needs_refactoring ... ok
[INFO] [stdout] test core::scoring::tests::test_priority_value ... ok
[INFO] [stdout] test core::scoring::tests::test_feature_normalizer_get_all_statistics ... ok
[INFO] [stdout] test detectors::complexity::tests::test_analyze_file_integration ... ok
[INFO] [stdout] test detectors::complexity::tests::test_analyze_file_disabled ... ok
[INFO] [stdout] test detectors::complexity::tests::test_calculate_cognitive_complexity ... ok
[INFO] [stdout] test detectors::complexity::tests::test_analyze_python_simple ... ok
[INFO] [stdout] test detectors::complexity::tests::test_calculate_cyclomatic_complexity ... ok
[INFO] [stdout] test detectors::complexity::tests::test_complexity_analyzer_creation ... ok
[INFO] [stdout] test detectors::complexity::tests::test_complexity_config_default ... ok
[INFO] [stdout] test detectors::complexity::tests::test_complexity_metrics_default ... ok
[INFO] [stdout] test detectors::complexity::tests::test_calculate_nesting_depth ... ok
[INFO] [stdout] test detectors::complexity::tests::test_count_lines_of_code ... ok
[INFO] [stdout] test core::scoring::tests::test_feature_normalizer_normalize_value ... ok
[INFO] [stdout] test detectors::complexity::tests::test_detect_language ... ok
[INFO] [stdout] test detectors::complexity::tests::test_count_parameters ... ok
[INFO] [stdout] test detectors::complexity::tests::test_generate_issues ... ok
[INFO] [stdout] test detectors::complexity::tests::test_generate_recommendations ... ok
[INFO] [stdout] test detectors::complexity::tests::test_halstead_metrics_default ... ok
[INFO] [stdout] test detectors::coverage::tests::test_build_coverage_packs_integration ... ok
[INFO] [stdout] test detectors::complexity::tests::test_determine_severity ... ok
[INFO] [stdout] test detectors::coverage::tests::test_chunk_spans_python_small_span ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coalesce_gaps_basic ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coalesce_spans_for_file ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_extractor_debug ... ok
[INFO] [stdout] test detectors::coverage::tests::test_chunk_spans_by_language_unknown ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_extractor_default ... ok
[INFO] [stdout] test detectors::coverage::tests::test_chunk_spans_python_large_span ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_config_default ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_extractor_extract ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_extractor_new_with_config ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_format_variants ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_pack_creation ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_extractor_name ... ok
[INFO] [stdout] test detectors::coverage::tests::test_coverage_extractor_features ... ok
[INFO] [stdout] test detectors::coverage::tests::test_detect_format_coverage_py_xml ... ok
[INFO] [stdout] test detectors::coverage::tests::test_detect_format_lcov ... ok
[INFO] [stdout] test detectors::coverage::tests::test_detect_format_unknown ... ok
[INFO] [stdout] test detectors::coverage::tests::test_detect_format_istanbul_json ... ok
[INFO] [stdout] test detectors::coverage::tests::test_detect_language ... ok
[INFO] [stdout] test detectors::coverage::tests::test_estimate_file_centrality ... ok
[INFO] [stdout] test detectors::coverage::tests::test_extract_imports_typescript ... ok
[INFO] [stdout] test detectors::coverage::tests::test_extract_imports_rust ... ok
[INFO] [stdout] test detectors::coverage::tests::test_extract_lines ... ok
[INFO] [stdout] test detectors::coverage::tests::test_extract_symbol_from_line ... ok
[INFO] [stdout] test core::scoring::tests::test_feature_scorer_compute_scores ... ok
[INFO] [stdout] test detectors::coverage::tests::test_gap_features_creation ... ok
[INFO] [stdout] test detectors::coverage::tests::test_generate_preview_long_gap ... ok
[INFO] [stdout] test detectors::coverage::tests::test_generate_preview_with_real_file ... ok
[INFO] [stdout] test detectors::coverage::tests::test_lines_to_spans_adjacent_lines ... ok
[INFO] [stdout] test detectors::complexity::tests::test_analyze_javascript_simple ... ok
[INFO] [stdout] test detectors::coverage::tests::test_lines_to_spans_empty ... ok
[INFO] [stdout] test detectors::coverage::tests::test_lines_to_spans_single_line ... ok
[INFO] [stdout] test detectors::coverage::tests::test_normalize_complexity_score ... ok
[INFO] [stdout] test detectors::coverage::tests::test_normalize_fan_in_score ... ok
[INFO] [stdout] test detectors::coverage::tests::test_normalize_size_score ... ok
[INFO] [stdout] test detectors::coverage::tests::test_parse_coverage_py_xml ... ok
[INFO] [stdout] test detectors::coverage::tests::test_parse_coverage_report_integration ... ok
[INFO] [stdout] test detectors::coverage::tests::test_parse_istanbul_json ... ok
[INFO] [stdout] test detectors::coverage::tests::test_parse_lcov ... ok
[INFO] [stdout] test detectors::coverage::tests::test_lines_to_spans_multiple_gaps ... ok
[INFO] [stdout] test detectors::coverage::tests::test_score_gaps_basic ... ok
[INFO] [stdout] test detectors::coverage::tests::test_snippet_preview_structure ... ok
[INFO] [stdout] test detectors::coverage::tests::test_scoring_weights_default ... ok
[INFO] [stdout] test detectors::coverage::tests::test_uncovered_span_creation ... ok
[INFO] [stdout] test detectors::graph::tests::test_dependency_graph ... ok
[INFO] [stdout] test detectors::graph::tests::test_entity_support ... ok
[INFO] [stdout] test detectors::graph::tests::test_graph_extractor ... ok
[INFO] [stdout] test detectors::lsh::tests::test_jaccard_similarity ... ok
[INFO] [stdout] test detectors::lsh::tests::test_lsh_extractor ... ok
[INFO] [stdout] test detectors::coverage::tests::test_gap_symbol_kinds ... ok
[INFO] [stdout] test detectors::lsh::tests::test_lsh_index ... ok
[INFO] [stdout] test detectors::lsh::tests::test_minhash_signature ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_analyze_files_disabled ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_calculate_impact_score ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_check_semantic_mismatch ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_detect_language ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_execution_pattern_variants ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_extract_behavior_signature ... ok
[INFO] [stdout] test detectors::coverage::tests::test_extract_imports_python ... ok
[INFO] [stdout] test detectors::coverage::tests::test_line_coverage_creation ... ok
[INFO] [stdout] test detectors::lsh::tests::test_shingle_creation ... ok
[INFO] [stdout] test detectors::coverage::tests::test_parse_unknown_format_error ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_generate_name_proposals ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_mismatch_type_variants ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_names_config_default ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_simple_name_analyzer_creation ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_analyze_file_integration ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_analyze_files_disabled ... ok
[INFO] [stdout] test core::pipeline::tests::test_analyze_paths_with_progress ... ok
[INFO] [stdout] test api::config_types::tests::test_include_pattern ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_detect_dead_code ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_detect_duplicate_code ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_detect_large_classes ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_detect_long_methods ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_feature_extractor_extract ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_feature_extractor_implementation ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_is_class_start ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_is_method_start ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_refactoring_analyzer_creation ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_refactoring_config_default ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_refactoring_type_variants ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_analyze_directory_for_reorg_meets_conditions ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_extract_function_from_line_python ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_calculate_refactoring_score ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_type_category_variants ... ok
[INFO] [stdout] test detectors::refactoring::tests::test_detect_complex_conditionals ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_analyze_file_integration ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_analyze_directory_for_reorg_low_imbalance ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_entropy_empty ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_build_dependency_graph_basic ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_cut_size ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_entropy_equal_values ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_entropy_single_value ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_directory_metrics_caching ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_entropy_total_zero ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_gini_coefficient_empty ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_gini_coefficient_equal_values ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_gini_coefficient_sum_zero ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_gini_coefficient_unequal_values ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_reorganization_effort ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_reorganization_gain ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_size_normalization_factor ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_gini_coefficient_large_array_parallel ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_communities_to_partitions ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_directory_analyzer_new ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_count_lines_of_code ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_gini_coefficient_single_value ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_discover_directories ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_estimate_cross_edges_reduced ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_extract_imports_by_extension ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_extract_javascript_imports_basic ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_extract_python_imports_basic ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_extract_python_imports_star_import ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_extract_rust_imports_basic ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_find_optimal_bipartition ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_generate_file_moves ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_generate_partition_name_fallback ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_gather_directory_stats ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_generate_partition_name_with_common_tokens ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_is_code_file ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_label_propagation_partition_empty ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_resolve_import_relative_import_skipped ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_resolve_import_to_local_file ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_resolve_import_to_local_file_not_found ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_should_skip_directory ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_analyze_entity_names_api_focused ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_analyze_entity_names_core_fallback ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_analyze_entity_names_io_focused ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_analyze_entity_names_util_focused ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_random_partition ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_entropy_large_array_parallel ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_build_entity_cohesion_graph_empty ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_analyze_file_for_split_large_file ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_partition_directory_basic ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_build_entity_cohesion_graph_with_entities ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_analyze_file_for_split_small_file ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_calculate_jaccard_similarity_empty_sets ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_calculate_jaccard_similarity_identical_sets ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_calculate_jaccard_similarity_no_overlap ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_calculate_jaccard_similarity_partial_overlap ... ok
[INFO] [stdout] test detectors::names_simple::tests::test_extract_function_from_line_rust ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_calculate_split_value ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_collect_large_files_recursive_skips_directories ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_calculate_split_effort ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_extract_javascript_entities ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_extract_javascript_imports ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_count_lines_of_code ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_discover_large_files ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_extract_imports_by_extension ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_extract_rust_imports ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_extract_python_entities ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_extract_symbols_from_line ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_extract_python_imports ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_extract_rust_entities ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_is_code_file ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_file_analyzer_new ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_find_cohesion_communities_empty_graph ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_generate_split_name ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_generate_split_suggestions_empty_communities ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_is_keyword ... ok
[INFO] [stdout] test io::cache::tests::test_cache_debug ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_resolve_import_to_local_file_not_found ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_should_skip_directory ... ok
[INFO] [stdout] test io::cache::tests::test_cache_default ... ok
[INFO] [stdout] test io::cache::tests::test_cache_new ... ok
[INFO] [stdout] test detectors::structure::file::tests::test_resolve_import_to_local_file ... ok
[INFO] [stdout] test io::reports::tests::test_generate_html_report_default_template ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_analyze_directory_for_reorg_small_directory_skipped ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_brute_force_partition ... ok
[INFO] [stdout] test io::reports::tests::test_generate_json_report ... ok
[INFO] [stdout] test detectors::structure::directory::tests::test_calculate_directory_metrics ... ok
[INFO] [stdout] test io::reports::tests::test_generate_html_report_custom_template ... ok
[INFO] [stdout] test io::reports::tests::test_report_error_debug ... ok
[INFO] [stdout] test io::reports::tests::test_report_error_display ... ok
[INFO] [stdout] test io::reports::tests::test_generate_yaml_report ... ok
[INFO] [stdout] test io::reports::tests::test_prepare_template_data ... ok
[INFO] [stdout] test io::reports::tests::test_with_templates_dir_existing ... ok
[INFO] [stdout] test io::reports::tests::test_generate_csv_report ... ok
[INFO] [stdout] test lang::common::tests::test_entity_kind_variants ... ok
[INFO] [stdout] test lang::common::tests::test_parse_index_add_entity ... ok
[INFO] [stdout] test lang::common::tests::test_parse_index_default ... ok
[INFO] [stdout] test lang::common::tests::test_parse_index_get_entities_in_file ... ok
[INFO] [stdout] test lang::common::tests::test_parse_index_get_entity ... ok
[INFO] [stdout] test lang::common::tests::test_parse_index_new ... ok
[INFO] [stdout] test lang::common::tests::test_parsed_entity ... ok
[INFO] [stdout] test lang::common::tests::test_source_location ... ok
[INFO] [stdout] test lang::python_simple::tests::test_simple_class_parsing ... ok
[INFO] [stdout] test lang::python_simple::tests::test_simple_function_parsing ... ok
[INFO] [stdout] test lang::python_simple::tests::test_simple_python_adapter_creation ... ok
[INFO] [stdout] test io::reports::tests::test_report_generator_default ... ok
[INFO] [stdout] test io::reports::tests::test_report_generator_debug ... ok
[INFO] [stdout] test io::reports::tests::test_report_generator_new ... ok
[INFO] [stdout] test io::reports::tests::test_with_templates_dir_nonexistent ... ok
[INFO] [stdout] test io::reports::tests::test_load_templates_from_dir_non_hbs_files ... ok
[INFO] [stdout] test io::reports::tests::test_load_templates_from_dir_invalid_filename ... ok
[INFO] [stdout] test io::reports::tests::test_calculate_summary ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 359 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.26s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/valknut.rs (/opt/rustwide/target/debug/deps/valknut-9c8e202610140bda)
[INFO] [stdout] 
[INFO] [stdout] running 73 tests
[INFO] [stdout] test cli::commands::tests::test_analyze_impact_legacy ... ok
[INFO] [stdout] test cli::commands::tests::test_build_quality_gate_config_defaults ... ok
[INFO] [stdout] test cli::commands::tests::test_display_quality_gate_violations_blocker_severity ... ok
[INFO] [stdout] test cli::commands::tests::test_display_config_summary ... ok
[INFO] [stdout] test cli::commands::tests::test_analyze_structure_legacy_file_split_only ... ok
[INFO] [stdout] test cli::commands::tests::test_build_quality_gate_config_fail_on_issues ... ok
[INFO] [stdout] test cli::commands::tests::test_analyze_structure_legacy_branch_only ... ok
[INFO] [stdout] test cli::commands::tests::test_display_quality_gate_violations_no_violations ... ok
[INFO] [stdout] test cli::commands::tests::test_analyze_structure_legacy ... ok
[INFO] [stdout] test cli::commands::tests::test_display_quality_gate_violations_with_violations ... ok
[INFO] [stdout] test cli::commands::tests::test_handle_quality_gates_missing_summary ... ok
[INFO] [stdout] test cli::commands::tests::test_handle_quality_gates_basic ... ok
[INFO] [stdout] test cli::commands::tests::test_handle_quality_gates_violations ... ok
[INFO] [stdout] test cli::commands::tests::test_list_languages ... ok
[INFO] [stdout] test cli::commands::tests::test_build_quality_gate_config_quality_gate_enabled ... ok
[INFO] [stdout] test cli::commands::tests::test_load_configuration_default ... ok
[INFO] [stdout] test cli::commands::tests::test_format_to_string ... ok
[INFO] [stdout] test cli::commands::tests::test_init_config_force_overwrite ... ok
[INFO] [stdout] test cli::commands::tests::test_load_configuration_yaml_file ... ok
[INFO] [stdout] test cli::commands::tests::test_init_config_new_file ... ok
[INFO] [stdout] test cli::commands::tests::test_load_configuration_json_file ... ok
[INFO] [stdout] test cli::commands::tests::test_print_header ... ok
[INFO] [stdout] test cli::commands::tests::test_print_default_config ... ok
[INFO] [stdout] test cli::commands::tests::test_mcp_manifest_command_stdout ... ok
[INFO] [stdout] test cli::commands::tests::test_load_configuration_invalid_file ... ok
[INFO] [stdout] test cli::commands::tests::test_mcp_manifest_command_file_output ... ok
[INFO] [stdout] test cli::commands::tests::test_validate_config_verbose ... ok
[INFO] [stdout] test cli::commands::tests::test_mcp_stdio_command ... ok
[INFO] [stdout] test cli::output::tests::test_display_analysis_results_minimal ... ok
[INFO] [stdout] test cli::output::tests::test_display_complexity_recommendations ... ok
[INFO] [stdout] test cli::output::tests::test_display_completion_summary ... ok
[INFO] [stdout] test cli::output::tests::test_display_complexity_recommendations_empty ... ok
[INFO] [stdout] test cli::output::tests::test_display_refactoring_suggestions ... ok
[INFO] [stdout] test cli::commands::tests::test_validate_config_valid_file ... ok
[INFO] [stdout] test cli::output::tests::test_display_analysis_results ... ok
[INFO] [stdout] test cli::output::tests::test_display_refactoring_suggestions_empty ... ok
[INFO] [stdout] test cli::output::tests::test_format_to_string ... ok
[INFO] [stdout] test cli::output::tests::test_generate_csv_report ... ok
[INFO] [stdout] test cli::output::tests::test_generate_ci_summary_report_fail ... ok
[INFO] [stdout] test cli::commands::tests::test_mcp_stdio_command_with_config ... ok
[INFO] [stdout] test cli::output::tests::test_generate_csv_report_empty ... ok
[INFO] [stdout] test cli::output::tests::test_generate_html_report ... ok
[INFO] [stdout] test cli::output::tests::test_generate_markdown_report ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_markdown ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_csv ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_html ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_json ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_jsonl ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_missing_fields ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_pretty ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_ci_summary ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_sonar ... ok
[INFO] [stdout] test cli::output::tests::test_generate_sonar_report ... ok
[INFO] [stdout] test cli::output::tests::test_print_comprehensive_results_pretty ... ok
[INFO] [stdout] test cli::output::tests::test_print_human_readable_results ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_with_feedback_quiet ... ok
[INFO] [stdout] test tests::test_cli_parsing_analyze_default ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_with_feedback_not_quiet ... ok
[INFO] [stdout] test tests::test_cli_parsing_analyze_with_options ... ok
[INFO] [stdout] test tests::test_cli_parsing_init_config ... ok
[INFO] [stdout] test tests::test_cli_global_flags ... ok
[INFO] [stdout] test tests::test_cli_parsing_list_languages ... ok
[INFO] [stdout] test tests::test_cli_parsing_mcp_manifest ... ok
[INFO] [stdout] test cli::output::tests::test_generate_ci_summary_report ... ok
[INFO] [stdout] test tests::test_cli_parsing_mcp_stdio ... ok
[INFO] [stdout] test tests::test_cli_parsing_print_default_config ... ok
[INFO] [stdout] test tests::test_cli_parsing_validate_config ... ok
[INFO] [stdout] test tests::test_cli_parsing_quality_gate_options ... ok
[INFO] [stdout] test tests::test_cli_parsing_impact_legacy ... ok
[INFO] [stdout] test cli::output::tests::test_generate_outputs_yaml ... ok
[INFO] [stdout] test tests::test_cli_parsing_survey_verbosity_variants ... ok
[INFO] [stdout] test tests::test_cli_parsing_structure_legacy ... ok
[INFO] [stderr]      Running tests/cli_tests.rs (/opt/rustwide/target/debug/deps/cli_tests-d7a6f505af28e4aa)
[INFO] [stdout] test tests::test_cli_parsing_output_format_variants ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 73 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test analyze_help_command ... ok
[INFO] [stdout] test analyze_nonexistent_path ... ok
[INFO] [stdout] test cli_help_command ... ok
[INFO] [stdout] test cli_version_command ... ok
[INFO] [stdout] test analyze_with_config_file ... FAILED
[INFO] [stdout] test analyze_quiet_flag ... FAILED
[INFO] [stdout] test analyze_quality_gate_flag ... FAILED
[INFO] [stdout] test analyze_empty_directory ... FAILED
[INFO] [stdout] test analyze_yaml_output ... FAILED
[INFO] [stdout] test analyze_pretty_output ... FAILED
[INFO] [stdout] test analyze_verbose_flag ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- analyze_with_config_file stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'analyze_with_config_file' (501) panicked at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`"/opt/rustwide/target/debug/valknut" "analyze" "/tmp/.tmpGhj7gM/test-code" "--config" "/tmp/.tmpGhj7gM/valknut.yml" "--format" "json"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=```
[INFO] [stdout] \x1b[1m\x1b[36m┌\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┐\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m│\x1b[39m\x1b[0m \x1b[1m\x1b[96m⚙\u{fe0f}  Valknut v1.2.1 - AI-Powered Code Analysis\x1b[39m\x1b[0m \x1b[1m\x1b[36m│\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m└\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┘\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout] \x1b[32m✅ Loading configuration from\x1b[39m \x1b[36m/tmp/.tmpGhj7gM/valknut.yml\x1b[39m
[INFO] [stdout] ╭───────────────┬────────────────────╮
[INFO] [stdout] │ setting       │ value              │
[INFO] [stdout] ├───────────────┼────────────────────┤
[INFO] [stdout] │ Languages     │ Auto-detected      │
[INFO] [stdout] │ Top-K Results │ 5                  │
[INFO] [stdout] │ Granularity   │ File and Directory │
[INFO] [stdout] │ Analysis Mode │ Directory Analysis │
[INFO] [stdout] ╰───────────────┴────────────────────╯
[INFO] [stdout] 
[INFO] [stdout] \x1b[1m\x1b[94m📂 Validating Input Paths\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout]   📁 Directory: \x1b[32m/tmp/.tmpGhj7gM/test-code\x1b[39m
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] stderr=```
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6331b96f5842 - std::backtrace_rs::backtrace::libunwind::trace::ha50a1f28c7a10cf8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6331b96f5842 - std::backtrace_rs::backtrace::trace_unsynchronized::h34f8c4ec82a320bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6331b96f5842 - std::sys::backtrace::_print_fmt::h2d23e84e13d343bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x6331b96f5842 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hde21067283f7e82e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6331b970697f - core::fmt::rt::Argument::fmt::he65307037dca33c6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x6331b970697f - core::fmt::write::h24186904251c31cb
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x6331b96c0923 - std::io::default_write_fmt::h4e8d11c5c4b9cafe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x6331b96c0923 - std::io::Write::write_fmt::ha849be0824d095ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x6331b96cd0c2 - std::sys::backtrace::BacktraceLock::print::he038489aba5894a6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x6331b96d218f - std::panicking::default_hook::{{closure}}::h80a26d916c49679b
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x6331b96d2021 - std::panicking::default_hook::he2e9efee79b3dce9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x6331b96423ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h202f496763929329
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x6331b96423ee - test::test_main_with_exit_callback::{{closure}}::h805a6913adddaea3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x6331b96d279f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2883c9d2dbd4e81c
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x6331b96d279f - std::panicking::panic_with_hook::hf5648b7cec6bc73e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x6331b96d25fa - std::panicking::panic_handler::{{closure}}::h1b2ed3864ba94359
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x6331b96cd1f9 - std::sys::backtrace::__rust_end_short_backtrace::hd0186b2b27f5aaa7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x6331b96b48fd - __rustc[f7dae8b92efe1d7a]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x6331b970ea00 - core::panicking::panic_fmt::hb5d6b83773432920
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6331b967bc90 - core::panicking::panic_display::hebf5cb1610a6078a
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:264:5
[INFO] [stdout]   20:     0x6331b966e737 - assert_cmd::assert::AssertError::panic::h70c32d1233f9c08b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:1033:9
[INFO] [stdout]   21:     0x6331b96742a7 - core::ops::function::FnOnce::call_once::h3f55c056d59d908e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x6331b96768a3 - core::result::Result<T,E>::unwrap_or_else::h0e88995cfbdab768
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1622:23
[INFO] [stdout]   23:     0x6331b966f216 - assert_cmd::assert::Assert::success::h19a874c781e60590
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:158:28
[INFO] [stdout]   24:     0x6331b9621806 - cli_tests::analyze_with_config_file::h7ad5c297efc9e306
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:119:10
[INFO] [stdout]   25:     0x6331b96218b7 - cli_tests::analyze_with_config_file::{{closure}}::h40e45ada06746402
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:71:30
[INFO] [stdout]   26:     0x6331b961dde6 - core::ops::function::FnOnce::call_once::h1b79ab48f42cf2b4
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x6331b964225b - core::ops::function::FnOnce::call_once::h3a2d82edd1a9b770
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x6331b964225b - test::__rust_begin_short_backtrace::h85d4fe5033219107
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x6331b965624d - test::run_test_in_process::{{closure}}::h67b48a81b9c9d7b6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x6331b965624d - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h7680585480377cb5
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x6331b965624d - std::panicking::catch_unwind::do_call::hf71351b2657d4002
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   32:     0x6331b965624d - std::panicking::catch_unwind::h7fcb5c0312d9e172
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   33:     0x6331b965624d - std::panic::catch_unwind::h5cf3c9bdee894ebe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x6331b965624d - test::run_test_in_process::h1469cb85193a3a25
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x6331b965624d - test::run_test::{{closure}}::h59d45b3cd6453d69
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x6331b962f794 - test::run_test::{{closure}}::h9baa0c3d443f28c9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x6331b962f794 - std::sys::backtrace::__rust_begin_short_backtrace::h97ea8cee4828663e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   38:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5d7539d5f78cee61
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   39:     0x6331b9632fea - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::he4c551e23c5e9b22
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x6331b9632fea - std::panicking::catch_unwind::do_call::h522b41a6c157aaba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   41:     0x6331b9632fea - std::panicking::catch_unwind::h0efbf72006b8e365
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   42:     0x6331b9632fea - std::panic::catch_unwind::h3b081041e6c97066
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::ha751309815d5d8cf
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   44:     0x6331b9632fea - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2084b887a5fe25a7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x6331b96c84df - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3adbd6ccf5f737af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   46:     0x6331b96c84df - std::sys::thread::unix::Thread::new::thread_start::hb3dc6483caa1b987
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   47:     0x79f4a7a93aa4 - <unknown>
[INFO] [stdout]   48:     0x79f4a7b20a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- analyze_quiet_flag stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'analyze_quiet_flag' (494) panicked at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`"/opt/rustwide/target/debug/valknut" "analyze" "/tmp/.tmpSorOI6" "--quiet" "--format" "json"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6331b96f5842 - std::backtrace_rs::backtrace::libunwind::trace::ha50a1f28c7a10cf8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6331b96f5842 - std::backtrace_rs::backtrace::trace_unsynchronized::h34f8c4ec82a320bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6331b96f5842 - std::sys::backtrace::_print_fmt::h2d23e84e13d343bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x6331b96f5842 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hde21067283f7e82e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6331b970697f - core::fmt::rt::Argument::fmt::he65307037dca33c6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x6331b970697f - core::fmt::write::h24186904251c31cb
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x6331b96c0923 - std::io::default_write_fmt::h4e8d11c5c4b9cafe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x6331b96c0923 - std::io::Write::write_fmt::ha849be0824d095ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x6331b96cd0c2 - std::sys::backtrace::BacktraceLock::print::he038489aba5894a6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x6331b96d218f - std::panicking::default_hook::{{closure}}::h80a26d916c49679b
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x6331b96d2021 - std::panicking::default_hook::he2e9efee79b3dce9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x6331b96423ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h202f496763929329
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x6331b96423ee - test::test_main_with_exit_callback::{{closure}}::h805a6913adddaea3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x6331b96d279f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2883c9d2dbd4e81c
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x6331b96d279f - std::panicking::panic_with_hook::hf5648b7cec6bc73e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x6331b96d25fa - std::panicking::panic_handler::{{closure}}::h1b2ed3864ba94359
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x6331b96cd1f9 - std::sys::backtrace::__rust_end_short_backtrace::hd0186b2b27f5aaa7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x6331b96b48fd - __rustc[f7dae8b92efe1d7a]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x6331b970ea00 - core::panicking::panic_fmt::hb5d6b83773432920
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6331b967bc90 - core::panicking::panic_display::hebf5cb1610a6078a
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:264:5
[INFO] [stdout]   20:     0x6331b966e737 - assert_cmd::assert::AssertError::panic::h70c32d1233f9c08b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:1033:9
[INFO] [stdout]   21:     0x6331b96742a7 - core::ops::function::FnOnce::call_once::h3f55c056d59d908e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x6331b96768a3 - core::result::Result<T,E>::unwrap_or_else::h0e88995cfbdab768
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1622:23
[INFO] [stdout]   23:     0x6331b966f216 - assert_cmd::assert::Assert::success::h19a874c781e60590
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:158:28
[INFO] [stdout]   24:     0x6331b961fc37 - cli_tests::analyze_quiet_flag::h43a87d033bbc96f8
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:137:10
[INFO] [stdout]   25:     0x6331b961fca7 - cli_tests::analyze_quiet_flag::{{closure}}::hb585b1139e34d31d
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:123:24
[INFO] [stdout]   26:     0x6331b961de66 - core::ops::function::FnOnce::call_once::h5e224afb9a7964ec
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x6331b964225b - core::ops::function::FnOnce::call_once::h3a2d82edd1a9b770
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x6331b964225b - test::__rust_begin_short_backtrace::h85d4fe5033219107
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x6331b965624d - test::run_test_in_process::{{closure}}::h67b48a81b9c9d7b6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x6331b965624d - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h7680585480377cb5
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x6331b965624d - std::panicking::catch_unwind::do_call::hf71351b2657d4002
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   32:     0x6331b965624d - std::panicking::catch_unwind::h7fcb5c0312d9e172
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   33:     0x6331b965624d - std::panic::catch_unwind::h5cf3c9bdee894ebe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x6331b965624d - test::run_test_in_process::h1469cb85193a3a25
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x6331b965624d - test::run_test::{{closure}}::h59d45b3cd6453d69
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x6331b962f794 - test::run_test::{{closure}}::h9baa0c3d443f28c9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x6331b962f794 - std::sys::backtrace::__rust_begin_short_backtrace::h97ea8cee4828663e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   38:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5d7539d5f78cee61
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   39:     0x6331b9632fea - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::he4c551e23c5e9b22
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x6331b9632fea - std::panicking::catch_unwind::do_call::h522b41a6c157aaba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   41:     0x6331b9632fea - std::panicking::catch_unwind::h0efbf72006b8e365
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   42:     0x6331b9632fea - std::panic::catch_unwind::h3b081041e6c97066
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::ha751309815d5d8cf
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   44:     0x6331b9632fea - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2084b887a5fe25a7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x6331b96c84df - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3adbd6ccf5f737af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   46:     0x6331b96c84df - std::sys::thread::unix::Thread::new::thread_start::hb3dc6483caa1b987
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   47:     0x79f4a7a93aa4 - <unknown>
[INFO] [stdout]   48:     0x79f4a7b20a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- analyze_quality_gate_flag stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'analyze_quality_gate_flag' (492) panicked at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`"/opt/rustwide/target/debug/valknut" "analyze" "/tmp/.tmp0ybYlL" "--quality-gate" "--format" "json"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=```
[INFO] [stdout] \x1b[1m\x1b[36m┌\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┐\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m│\x1b[39m\x1b[0m \x1b[1m\x1b[96m⚙\u{fe0f}  Valknut v1.2.1 - AI-Powered Code Analysis\x1b[39m\x1b[0m \x1b[1m\x1b[36m│\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m└\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┘\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout] \x1b[32m✅ Using default configuration\x1b[39m
[INFO] [stdout] ╭───────────────┬────────────────────╮
[INFO] [stdout] │ setting       │ value              │
[INFO] [stdout] ├───────────────┼────────────────────┤
[INFO] [stdout] │ Languages     │ Auto-detected      │
[INFO] [stdout] │ Top-K Results │ 20                 │
[INFO] [stdout] │ Granularity   │ File and Directory │
[INFO] [stdout] │ Analysis Mode │ Full Analysis      │
[INFO] [stdout] ╰───────────────┴────────────────────╯
[INFO] [stdout] 
[INFO] [stdout] \x1b[1m\x1b[94m📂 Validating Input Paths\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout]   📁 Directory: \x1b[32m/tmp/.tmp0ybYlL\x1b[39m
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] stderr=```
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6331b96f5842 - std::backtrace_rs::backtrace::libunwind::trace::ha50a1f28c7a10cf8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6331b96f5842 - std::backtrace_rs::backtrace::trace_unsynchronized::h34f8c4ec82a320bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6331b96f5842 - std::sys::backtrace::_print_fmt::h2d23e84e13d343bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x6331b96f5842 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hde21067283f7e82e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6331b970697f - core::fmt::rt::Argument::fmt::he65307037dca33c6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x6331b970697f - core::fmt::write::h24186904251c31cb
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x6331b96c0923 - std::io::default_write_fmt::h4e8d11c5c4b9cafe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x6331b96c0923 - std::io::Write::write_fmt::ha849be0824d095ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x6331b96cd0c2 - std::sys::backtrace::BacktraceLock::print::he038489aba5894a6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x6331b96d218f - std::panicking::default_hook::{{closure}}::h80a26d916c49679b
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x6331b96d2021 - std::panicking::default_hook::he2e9efee79b3dce9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x6331b96423ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h202f496763929329
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x6331b96423ee - test::test_main_with_exit_callback::{{closure}}::h805a6913adddaea3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x6331b96d279f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2883c9d2dbd4e81c
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x6331b96d279f - std::panicking::panic_with_hook::hf5648b7cec6bc73e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x6331b96d25fa - std::panicking::panic_handler::{{closure}}::h1b2ed3864ba94359
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x6331b96cd1f9 - std::sys::backtrace::__rust_end_short_backtrace::hd0186b2b27f5aaa7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x6331b96b48fd - __rustc[f7dae8b92efe1d7a]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x6331b970ea00 - core::panicking::panic_fmt::hb5d6b83773432920
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6331b967bc90 - core::panicking::panic_display::hebf5cb1610a6078a
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:264:5
[INFO] [stdout]   20:     0x6331b966e737 - assert_cmd::assert::AssertError::panic::h70c32d1233f9c08b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:1033:9
[INFO] [stdout]   21:     0x6331b96742a7 - core::ops::function::FnOnce::call_once::h3f55c056d59d908e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x6331b96768a3 - core::result::Result<T,E>::unwrap_or_else::h0e88995cfbdab768
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1622:23
[INFO] [stdout]   23:     0x6331b966f216 - assert_cmd::assert::Assert::success::h19a874c781e60590
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:158:28
[INFO] [stdout]   24:     0x6331b9621b97 - cli_tests::analyze_quality_gate_flag::h0e874fc6b1be72fd
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:173:10
[INFO] [stdout]   25:     0x6331b9621c07 - cli_tests::analyze_quality_gate_flag::{{closure}}::hf6786f7b7c34f8b6
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:159:31
[INFO] [stdout]   26:     0x6331b961dee6 - core::ops::function::FnOnce::call_once::h8e99cb6c543758c8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x6331b964225b - core::ops::function::FnOnce::call_once::h3a2d82edd1a9b770
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x6331b964225b - test::__rust_begin_short_backtrace::h85d4fe5033219107
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x6331b965624d - test::run_test_in_process::{{closure}}::h67b48a81b9c9d7b6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x6331b965624d - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h7680585480377cb5
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x6331b965624d - std::panicking::catch_unwind::do_call::hf71351b2657d4002
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   32:     0x6331b965624d - std::panicking::catch_unwind::h7fcb5c0312d9e172
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   33:     0x6331b965624d - std::panic::catch_unwind::h5cf3c9bdee894ebe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x6331b965624d - test::run_test_in_process::h1469cb85193a3a25
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x6331b965624d - test::run_test::{{closure}}::h59d45b3cd6453d69
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x6331b962f794 - test::run_test::{{closure}}::h9baa0c3d443f28c9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x6331b962f794 - std::sys::backtrace::__rust_begin_short_backtrace::h97ea8cee4828663e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   38:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5d7539d5f78cee61
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   39:     0x6331b9632fea - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::he4c551e23c5e9b22
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x6331b9632fea - std::panicking::catch_unwind::do_call::h522b41a6c157aaba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   41:     0x6331b9632fea - std::panicking::catch_unwind::h0efbf72006b8e365
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   42:     0x6331b9632fea - std::panic::catch_unwind::h3b081041e6c97066
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::ha751309815d5d8cf
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   44:     0x6331b9632fea - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2084b887a5fe25a7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x6331b96c84df - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3adbd6ccf5f737af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   46:     0x6331b96c84df - std::sys::thread::unix::Thread::new::thread_start::hb3dc6483caa1b987
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   47:     0x79f4a7a93aa4 - <unknown>
[INFO] [stdout]   48:     0x79f4a7b20a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- analyze_empty_directory stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'analyze_empty_directory' (487) panicked at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`"/opt/rustwide/target/debug/valknut" "analyze" "/tmp/.tmpJ25sw8" "--format" "json"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=```
[INFO] [stdout] \x1b[1m\x1b[36m┌\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┐\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m│\x1b[39m\x1b[0m \x1b[1m\x1b[96m⚙\u{fe0f}  Valknut v1.2.1 - AI-Powered Code Analysis\x1b[39m\x1b[0m \x1b[1m\x1b[36m│\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m└\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┘\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout] \x1b[32m✅ Using default configuration\x1b[39m
[INFO] [stdout] ╭───────────────┬────────────────────╮
[INFO] [stdout] │ setting       │ value              │
[INFO] [stdout] ├───────────────┼────────────────────┤
[INFO] [stdout] │ Languages     │ Auto-detected      │
[INFO] [stdout] │ Top-K Results │ 20                 │
[INFO] [stdout] │ Granularity   │ File and Directory │
[INFO] [stdout] │ Analysis Mode │ Full Analysis      │
[INFO] [stdout] ╰───────────────┴────────────────────╯
[INFO] [stdout] 
[INFO] [stdout] \x1b[1m\x1b[94m📂 Validating Input Paths\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout]   📁 Directory: \x1b[32m/tmp/.tmpJ25sw8\x1b[39m
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] stderr=```
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6331b96f5842 - std::backtrace_rs::backtrace::libunwind::trace::ha50a1f28c7a10cf8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6331b96f5842 - std::backtrace_rs::backtrace::trace_unsynchronized::h34f8c4ec82a320bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6331b96f5842 - std::sys::backtrace::_print_fmt::h2d23e84e13d343bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x6331b96f5842 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hde21067283f7e82e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6331b970697f - core::fmt::rt::Argument::fmt::he65307037dca33c6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x6331b970697f - core::fmt::write::h24186904251c31cb
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x6331b96c0923 - std::io::default_write_fmt::h4e8d11c5c4b9cafe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x6331b96c0923 - std::io::Write::write_fmt::ha849be0824d095ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x6331b96cd0c2 - std::sys::backtrace::BacktraceLock::print::he038489aba5894a6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x6331b96d218f - std::panicking::default_hook::{{closure}}::h80a26d916c49679b
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x6331b96d2021 - std::panicking::default_hook::he2e9efee79b3dce9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x6331b96423ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h202f496763929329
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x6331b96423ee - test::test_main_with_exit_callback::{{closure}}::h805a6913adddaea3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x6331b96d279f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2883c9d2dbd4e81c
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x6331b96d279f - std::panicking::panic_with_hook::hf5648b7cec6bc73e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x6331b96d25fa - std::panicking::panic_handler::{{closure}}::h1b2ed3864ba94359
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x6331b96cd1f9 - std::sys::backtrace::__rust_end_short_backtrace::hd0186b2b27f5aaa7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x6331b96b48fd - __rustc[f7dae8b92efe1d7a]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x6331b970ea00 - core::panicking::panic_fmt::hb5d6b83773432920
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6331b967bc90 - core::panicking::panic_display::hebf5cb1610a6078a
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:264:5
[INFO] [stdout]   20:     0x6331b966e737 - assert_cmd::assert::AssertError::panic::h70c32d1233f9c08b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:1033:9
[INFO] [stdout]   21:     0x6331b96742a7 - core::ops::function::FnOnce::call_once::h3f55c056d59d908e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x6331b96768a3 - core::result::Result<T,E>::unwrap_or_else::h0e88995cfbdab768
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1622:23
[INFO] [stdout]   23:     0x6331b966f216 - assert_cmd::assert::Assert::success::h19a874c781e60590
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:158:28
[INFO] [stdout]   24:     0x6331b9620e5c - cli_tests::analyze_empty_directory::h5cc32b6508885b84
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:67:10
[INFO] [stdout]   25:     0x6331b9620ec7 - cli_tests::analyze_empty_directory::{{closure}}::h8ea4ddd8a3a15786
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:59:29
[INFO] [stdout]   26:     0x6331b961dfa6 - core::ops::function::FnOnce::call_once::ha4e0caf2bd4dc8a3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x6331b964225b - core::ops::function::FnOnce::call_once::h3a2d82edd1a9b770
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x6331b964225b - test::__rust_begin_short_backtrace::h85d4fe5033219107
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x6331b965624d - test::run_test_in_process::{{closure}}::h67b48a81b9c9d7b6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x6331b965624d - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h7680585480377cb5
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x6331b965624d - std::panicking::catch_unwind::do_call::hf71351b2657d4002
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   32:     0x6331b965624d - std::panicking::catch_unwind::h7fcb5c0312d9e172
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   33:     0x6331b965624d - std::panic::catch_unwind::h5cf3c9bdee894ebe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x6331b965624d - test::run_test_in_process::h1469cb85193a3a25
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x6331b965624d - test::run_test::{{closure}}::h59d45b3cd6453d69
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x6331b962f794 - test::run_test::{{closure}}::h9baa0c3d443f28c9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x6331b962f794 - std::sys::backtrace::__rust_begin_short_backtrace::h97ea8cee4828663e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   38:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5d7539d5f78cee61
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   39:     0x6331b9632fea - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::he4c551e23c5e9b22
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x6331b9632fea - std::panicking::catch_unwind::do_call::h522b41a6c157aaba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   41:     0x6331b9632fea - std::panicking::catch_unwind::h0efbf72006b8e365
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   42:     0x6331b9632fea - std::panic::catch_unwind::h3b081041e6c97066
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::ha751309815d5d8cf
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   44:     0x6331b9632fea - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2084b887a5fe25a7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x6331b96c84df - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3adbd6ccf5f737af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   46:     0x6331b96c84df - std::sys::thread::unix::Thread::new::thread_start::hb3dc6483caa1b987
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   47:     0x79f4a7a93aa4 - <unknown>
[INFO] [stdout]   48:     0x79f4a7b20a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- analyze_yaml_output stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'analyze_yaml_output' (552) panicked at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`"/opt/rustwide/target/debug/valknut" "analyze" "/tmp/.tmp5aeo23" "--format" "yaml"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=```
[INFO] [stdout] \x1b[1m\x1b[36m┌\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┐\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m│\x1b[39m\x1b[0m \x1b[1m\x1b[96m⚙\u{fe0f}  Valknut v1.2.1 - AI-Powered Code Analysis\x1b[39m\x1b[0m \x1b[1m\x1b[36m│\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m└\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┘\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout] \x1b[32m✅ Using default configuration\x1b[39m
[INFO] [stdout] ╭───────────────┬────────────────────╮
[INFO] [stdout] │ setting       │ value              │
[INFO] [stdout] ├───────────────┼────────────────────┤
[INFO] [stdout] │ Languages     │ Auto-detected      │
[INFO] [stdout] │ Top-K Results │ 20                 │
[INFO] [stdout] │ Granularity   │ File and Directory │
[INFO] [stdout] │ Analysis Mode │ Full Analysis      │
[INFO] [stdout] ╰───────────────┴────────────────────╯
[INFO] [stdout] 
[INFO] [stdout] \x1b[1m\x1b[94m📂 Validating Input Paths\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout]   📁 Directory: \x1b[32m/tmp/.tmp5aeo23\x1b[39m
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] stderr=```
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6331b96f5842 - std::backtrace_rs::backtrace::libunwind::trace::ha50a1f28c7a10cf8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6331b96f5842 - std::backtrace_rs::backtrace::trace_unsynchronized::h34f8c4ec82a320bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6331b96f5842 - std::sys::backtrace::_print_fmt::h2d23e84e13d343bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x6331b96f5842 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hde21067283f7e82e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6331b970697f - core::fmt::rt::Argument::fmt::he65307037dca33c6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x6331b970697f - core::fmt::write::h24186904251c31cb
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x6331b96c0923 - std::io::default_write_fmt::h4e8d11c5c4b9cafe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x6331b96c0923 - std::io::Write::write_fmt::ha849be0824d095ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x6331b96cd0c2 - std::sys::backtrace::BacktraceLock::print::he038489aba5894a6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x6331b96d218f - std::panicking::default_hook::{{closure}}::h80a26d916c49679b
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x6331b96d2021 - std::panicking::default_hook::he2e9efee79b3dce9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x6331b96423ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h202f496763929329
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x6331b96423ee - test::test_main_with_exit_callback::{{closure}}::h805a6913adddaea3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x6331b96d279f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2883c9d2dbd4e81c
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x6331b96d279f - std::panicking::panic_with_hook::hf5648b7cec6bc73e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x6331b96d25fa - std::panicking::panic_handler::{{closure}}::h1b2ed3864ba94359
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x6331b96cd1f9 - std::sys::backtrace::__rust_end_short_backtrace::hd0186b2b27f5aaa7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x6331b96b48fd - __rustc[f7dae8b92efe1d7a]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x6331b970ea00 - core::panicking::panic_fmt::hb5d6b83773432920
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6331b967bc90 - core::panicking::panic_display::hebf5cb1610a6078a
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:264:5
[INFO] [stdout]   20:     0x6331b966e737 - assert_cmd::assert::AssertError::panic::h70c32d1233f9c08b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:1033:9
[INFO] [stdout]   21:     0x6331b96742a7 - core::ops::function::FnOnce::call_once::h3f55c056d59d908e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x6331b96768a3 - core::result::Result<T,E>::unwrap_or_else::h0e88995cfbdab768
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1622:23
[INFO] [stdout]   23:     0x6331b966f216 - assert_cmd::assert::Assert::success::h19a874c781e60590
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:158:28
[INFO] [stdout]   24:     0x6331b961ff6c - cli_tests::analyze_yaml_output::hdb14b9675d95fdc3
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:190:10
[INFO] [stdout]   25:     0x6331b961ffd7 - cli_tests::analyze_yaml_output::{{closure}}::h4d56358ca6585b4b
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:177:25
[INFO] [stdout]   26:     0x6331b961df26 - core::ops::function::FnOnce::call_once::h9b9512f31532b9c3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x6331b964225b - core::ops::function::FnOnce::call_once::h3a2d82edd1a9b770
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x6331b964225b - test::__rust_begin_short_backtrace::h85d4fe5033219107
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x6331b965624d - test::run_test_in_process::{{closure}}::h67b48a81b9c9d7b6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x6331b965624d - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h7680585480377cb5
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x6331b965624d - std::panicking::catch_unwind::do_call::hf71351b2657d4002
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   32:     0x6331b965624d - std::panicking::catch_unwind::h7fcb5c0312d9e172
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   33:     0x6331b965624d - std::panic::catch_unwind::h5cf3c9bdee894ebe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x6331b965624d - test::run_test_in_process::h1469cb85193a3a25
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x6331b965624d - test::run_test::{{closure}}::h59d45b3cd6453d69
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x6331b962f794 - test::run_test::{{closure}}::h9baa0c3d443f28c9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x6331b962f794 - std::sys::backtrace::__rust_begin_short_backtrace::h97ea8cee4828663e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   38:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5d7539d5f78cee61
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   39:     0x6331b9632fea - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::he4c551e23c5e9b22
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x6331b9632fea - std::panicking::catch_unwind::do_call::h522b41a6c157aaba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   41:     0x6331b9632fea - std::panicking::catch_unwind::h0efbf72006b8e365
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   42:     0x6331b9632fea - std::panic::catch_unwind::h3b081041e6c97066
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::ha751309815d5d8cf
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   44:     0x6331b9632fea - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2084b887a5fe25a7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x6331b96c84df - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3adbd6ccf5f737af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   46:     0x6331b96c84df - std::sys::thread::unix::Thread::new::thread_start::hb3dc6483caa1b987
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   47:     0x79f4a7a93aa4 - <unknown>
[INFO] [stdout]   48:     0x79f4a7b20a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- analyze_pretty_output stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'analyze_pretty_output' (491) panicked at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`"/opt/rustwide/target/debug/valknut" "analyze" "/tmp/.tmpg0MJmB" "--format" "pretty"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=```
[INFO] [stdout] \x1b[1m\x1b[36m┌\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┐\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m│\x1b[39m\x1b[0m \x1b[1m\x1b[96m⚙\u{fe0f}  Valknut v1.2.1 - AI-Powered Code Analysis\x1b[39m\x1b[0m \x1b[1m\x1b[36m│\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m└\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┘\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout] \x1b[32m✅ Using default configuration\x1b[39m
[INFO] [stdout] ╭───────────────┬────────────────────╮
[INFO] [stdout] │ setting       │ value              │
[INFO] [stdout] ├───────────────┼────────────────────┤
[INFO] [stdout] │ Languages     │ Auto-detected      │
[INFO] [stdout] │ Top-K Results │ 20                 │
[INFO] [stdout] │ Granularity   │ File and Directory │
[INFO] [stdout] │ Analysis Mode │ Full Analysis      │
[INFO] [stdout] ╰───────────────┴────────────────────╯
[INFO] [stdout] 
[INFO] [stdout] \x1b[1m\x1b[94m📂 Validating Input Paths\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout]   📁 Directory: \x1b[32m/tmp/.tmpg0MJmB\x1b[39m
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] stderr=```
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6331b96f5842 - std::backtrace_rs::backtrace::libunwind::trace::ha50a1f28c7a10cf8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6331b96f5842 - std::backtrace_rs::backtrace::trace_unsynchronized::h34f8c4ec82a320bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6331b96f5842 - std::sys::backtrace::_print_fmt::h2d23e84e13d343bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x6331b96f5842 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hde21067283f7e82e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6331b970697f - core::fmt::rt::Argument::fmt::he65307037dca33c6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x6331b970697f - core::fmt::write::h24186904251c31cb
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x6331b96c0923 - std::io::default_write_fmt::h4e8d11c5c4b9cafe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x6331b96c0923 - std::io::Write::write_fmt::ha849be0824d095ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x6331b96cd0c2 - std::sys::backtrace::BacktraceLock::print::he038489aba5894a6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x6331b96d218f - std::panicking::default_hook::{{closure}}::h80a26d916c49679b
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x6331b96d2021 - std::panicking::default_hook::he2e9efee79b3dce9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x6331b96423ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h202f496763929329
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x6331b96423ee - test::test_main_with_exit_callback::{{closure}}::h805a6913adddaea3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x6331b96d279f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2883c9d2dbd4e81c
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x6331b96d279f - std::panicking::panic_with_hook::hf5648b7cec6bc73e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x6331b96d25fa - std::panicking::panic_handler::{{closure}}::h1b2ed3864ba94359
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x6331b96cd1f9 - std::sys::backtrace::__rust_end_short_backtrace::hd0186b2b27f5aaa7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x6331b96b48fd - __rustc[f7dae8b92efe1d7a]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x6331b970ea00 - core::panicking::panic_fmt::hb5d6b83773432920
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6331b967bc90 - core::panicking::panic_display::hebf5cb1610a6078a
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:264:5
[INFO] [stdout]   20:     0x6331b966e737 - assert_cmd::assert::AssertError::panic::h70c32d1233f9c08b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:1033:9
[INFO] [stdout]   21:     0x6331b96742a7 - core::ops::function::FnOnce::call_once::h3f55c056d59d908e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x6331b96768a3 - core::result::Result<T,E>::unwrap_or_else::h0e88995cfbdab768
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1622:23
[INFO] [stdout]   23:     0x6331b966f216 - assert_cmd::assert::Assert::success::h19a874c781e60590
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:158:28
[INFO] [stdout]   24:     0x6331b9620b2c - cli_tests::analyze_pretty_output::hc91b2919772e9d7d
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:207:10
[INFO] [stdout]   25:     0x6331b9620b97 - cli_tests::analyze_pretty_output::{{closure}}::ha2d99d12ca812fed
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:194:27
[INFO] [stdout]   26:     0x6331b961e026 - core::ops::function::FnOnce::call_once::hd0ace637aae113ba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x6331b964225b - core::ops::function::FnOnce::call_once::h3a2d82edd1a9b770
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x6331b964225b - test::__rust_begin_short_backtrace::h85d4fe5033219107
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x6331b965624d - test::run_test_in_process::{{closure}}::h67b48a81b9c9d7b6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x6331b965624d - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h7680585480377cb5
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x6331b965624d - std::panicking::catch_unwind::do_call::hf71351b2657d4002
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   32:     0x6331b965624d - std::panicking::catch_unwind::h7fcb5c0312d9e172
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   33:     0x6331b965624d - std::panic::catch_unwind::h5cf3c9bdee894ebe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x6331b965624d - test::run_test_in_process::h1469cb85193a3a25
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x6331b965624d - test::run_test::{{closure}}::h59d45b3cd6453d69
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x6331b962f794 - test::run_test::{{closure}}::h9baa0c3d443f28c9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x6331b962f794 - std::sys::backtrace::__rust_begin_short_backtrace::h97ea8cee4828663e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   38:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5d7539d5f78cee61
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   39:     0x6331b9632fea - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::he4c551e23c5e9b22
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x6331b9632fea - std::panicking::catch_unwind::do_call::h522b41a6c157aaba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   41:     0x6331b9632fea - std::panicking::catch_unwind::h0efbf72006b8e365
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   42:     0x6331b9632fea - std::panic::catch_unwind::h3b081041e6c97066
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::ha751309815d5d8cf
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   44:     0x6331b9632fea - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2084b887a5fe25a7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x6331b96c84df - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3adbd6ccf5f737af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   46:     0x6331b96c84df - std::sys::thread::unix::Thread::new::thread_start::hb3dc6483caa1b987
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   47:     0x79f4a7a93aa4 - <unknown>
[INFO] [stdout]   48:     0x79f4a7b20a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- analyze_verbose_flag stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'analyze_verbose_flag' (500) panicked at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`"/opt/rustwide/target/debug/valknut" "analyze" "/tmp/.tmpXxYboy" "--verbose" "--format" "json"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=```
[INFO] [stdout] \x1b[1m\x1b[36m┌\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┐\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m│\x1b[39m\x1b[0m \x1b[1m\x1b[96m⚙\u{fe0f}  Valknut v1.2.1 - AI-Powered Code Analysis\x1b[39m\x1b[0m \x1b[1m\x1b[36m│\x1b[39m\x1b[0m
[INFO] [stdout] \x1b[1m\x1b[36m└\x1b[39m\x1b[0m\x1b[36m────────────────────────────────────────────────────────────\x1b[39m\x1b[1m\x1b[36m┘\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout] \x1b[32m✅ Using default configuration\x1b[39m
[INFO] [stdout] ╭───────────────┬────────────────────╮
[INFO] [stdout] │ setting       │ value              │
[INFO] [stdout] ├───────────────┼────────────────────┤
[INFO] [stdout] │ Languages     │ Auto-detected      │
[INFO] [stdout] │ Top-K Results │ 20                 │
[INFO] [stdout] │ Granularity   │ File and Directory │
[INFO] [stdout] │ Analysis Mode │ Full Analysis      │
[INFO] [stdout] ╰───────────────┴────────────────────╯
[INFO] [stdout] 
[INFO] [stdout] \x1b[1m\x1b[94m📂 Validating Input Paths\x1b[39m\x1b[0m
[INFO] [stdout] 
[INFO] [stdout]   📁 Directory: \x1b[32m/tmp/.tmpXxYboy\x1b[39m
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] stderr=```
[INFO] [stdout] Error: Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:2184:27
[INFO] [stdout]    2: valknut::cli::commands::analyze_command::{{closure}}
[INFO] [stdout]              at ./src/bin/cli/commands.rs:78:5
[INFO] [stdout]    3: valknut::main::{{closure}}
[INFO] [stdout]              at ./src/bin/valknut.rs:35:74
[INFO] [stdout]    4: <core::pin::Pin<P> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:71
[INFO] [stdout]    6: tokio::task::coop::with_budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: tokio::runtime::park::CachedParkThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/park.rs:285:31
[INFO] [stdout]    9: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   10: tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   11: tokio::runtime::context::runtime::enter_runtime
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   12: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   13: tokio::runtime::runtime::Runtime::block_on_inner
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   14: tokio::runtime::runtime::Runtime::block_on
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/runtime.rs:328:18
[INFO] [stdout]   15: valknut::main
[INFO] [stdout]              at ./src/bin/valknut.rs:65:7
[INFO] [stdout]   16: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   17: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   18: std::rt::lang_start::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:206:18
[INFO] [stdout]   19: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:287:21
[INFO] [stdout]   20: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   21: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   22: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   23: std::rt::lang_start_internal::{{closure}}
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:175:24
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   25: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   26: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::rt::lang_start_internal
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:171:5
[INFO] [stdout]   28: std::rt::lang_start
[INFO] [stdout]              at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/rt.rs:205:5
[INFO] [stdout]   29: main
[INFO] [stdout]   30: <unknown>
[INFO] [stdout]   31: __libc_start_main
[INFO] [stdout]   32: _start
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6331b96f5842 - std::backtrace_rs::backtrace::libunwind::trace::ha50a1f28c7a10cf8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6331b96f5842 - std::backtrace_rs::backtrace::trace_unsynchronized::h34f8c4ec82a320bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6331b96f5842 - std::sys::backtrace::_print_fmt::h2d23e84e13d343bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x6331b96f5842 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hde21067283f7e82e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6331b970697f - core::fmt::rt::Argument::fmt::he65307037dca33c6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x6331b970697f - core::fmt::write::h24186904251c31cb
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x6331b96c0923 - std::io::default_write_fmt::h4e8d11c5c4b9cafe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x6331b96c0923 - std::io::Write::write_fmt::ha849be0824d095ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x6331b96cd0c2 - std::sys::backtrace::BacktraceLock::print::he038489aba5894a6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x6331b96d218f - std::panicking::default_hook::{{closure}}::h80a26d916c49679b
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x6331b96d2021 - std::panicking::default_hook::he2e9efee79b3dce9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x6331b96423ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h202f496763929329
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x6331b96423ee - test::test_main_with_exit_callback::{{closure}}::h805a6913adddaea3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x6331b96d279f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2883c9d2dbd4e81c
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x6331b96d279f - std::panicking::panic_with_hook::hf5648b7cec6bc73e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x6331b96d25fa - std::panicking::panic_handler::{{closure}}::h1b2ed3864ba94359
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x6331b96cd1f9 - std::sys::backtrace::__rust_end_short_backtrace::hd0186b2b27f5aaa7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x6331b96b48fd - __rustc[f7dae8b92efe1d7a]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x6331b970ea00 - core::panicking::panic_fmt::hb5d6b83773432920
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6331b967bc90 - core::panicking::panic_display::hebf5cb1610a6078a
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:264:5
[INFO] [stdout]   20:     0x6331b966e737 - assert_cmd::assert::AssertError::panic::h70c32d1233f9c08b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:1033:9
[INFO] [stdout]   21:     0x6331b96742a7 - core::ops::function::FnOnce::call_once::h3f55c056d59d908e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x6331b96768a3 - core::result::Result<T,E>::unwrap_or_else::h0e88995cfbdab768
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1622:23
[INFO] [stdout]   23:     0x6331b966f216 - assert_cmd::assert::Assert::success::h19a874c781e60590
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.0.17/src/assert.rs:158:28
[INFO] [stdout]   24:     0x6331b96207f7 - cli_tests::analyze_verbose_flag::he1878a227bbb76cb
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:155:10
[INFO] [stdout]   25:     0x6331b9620867 - cli_tests::analyze_verbose_flag::{{closure}}::h03509ffa20e1bd85
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli_tests.rs:141:26
[INFO] [stdout]   26:     0x6331b961e066 - core::ops::function::FnOnce::call_once::hea6109badd2a47ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x6331b964225b - core::ops::function::FnOnce::call_once::h3a2d82edd1a9b770
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x6331b964225b - test::__rust_begin_short_backtrace::h85d4fe5033219107
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x6331b965624d - test::run_test_in_process::{{closure}}::h67b48a81b9c9d7b6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x6331b965624d - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h7680585480377cb5
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x6331b965624d - std::panicking::catch_unwind::do_call::hf71351b2657d4002
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   32:     0x6331b965624d - std::panicking::catch_unwind::h7fcb5c0312d9e172
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   33:     0x6331b965624d - std::panic::catch_unwind::h5cf3c9bdee894ebe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x6331b965624d - test::run_test_in_process::h1469cb85193a3a25
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x6331b965624d - test::run_test::{{closure}}::h59d45b3cd6453d69
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x6331b962f794 - test::run_test::{{closure}}::h9baa0c3d443f28c9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x6331b962f794 - std::sys::backtrace::__rust_begin_short_backtrace::h97ea8cee4828663e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   38:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5d7539d5f78cee61
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   39:     0x6331b9632fea - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::he4c551e23c5e9b22
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x6331b9632fea - std::panicking::catch_unwind::do_call::h522b41a6c157aaba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   41:     0x6331b9632fea - std::panicking::catch_unwind::h0efbf72006b8e365
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   42:     0x6331b9632fea - std::panic::catch_unwind::h3b081041e6c97066
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x6331b9632fea - std::thread::Builder::spawn_unchecked_::{{closure}}::ha751309815d5d8cf
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   44:     0x6331b9632fea - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2084b887a5fe25a7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x6331b96c84df - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3adbd6ccf5f737af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   46:     0x6331b96c84df - std::sys::thread::unix::Thread::new::thread_start::hb3dc6483caa1b987
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   47:     0x79f4a7a93aa4 - <unknown>
[INFO] [stdout]   48:     0x79f4a7b20a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     analyze_empty_directory
[INFO] [stdout]     analyze_pretty_output
[INFO] [stdout]     analyze_quality_gate_flag
[INFO] [stdout]     analyze_quiet_flag
[INFO] [stdout]     analyze_verbose_flag
[INFO] [stdout]     analyze_with_config_file
[INFO] [stdout]     analyze_yaml_output
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 4 passed; 7 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.61s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test cli_tests`
[INFO] running `Command { std: "docker" "inspect" "1996c8c3b3e2a651617b736602498108de4c4d13ec85a93b0f085746be333ab0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1996c8c3b3e2a651617b736602498108de4c4d13ec85a93b0f085746be333ab0", kill_on_drop: false }`
[INFO] [stdout] 1996c8c3b3e2a651617b736602498108de4c4d13ec85a93b0f085746be333ab0
