# smith Clippy Configuration # See .system/RULES.md and .system/research/SMH-RESEARCH-RSCH0003-clippy-best-practices/index.md # for lint rationale and escape hatch policy. # # NOTE: clippy.toml only supports configuration VALUES (thresholds, MSRV). # Lint levels belong to xtask, per scope (production, tests and benches, # guests): SHARED_LINTS, PRODUCTION_LINTS, NON_PRODUCTION_LINTS in # xtask/src/main.rs. # TUI event routing naturally hits this. Review functions >20 during review. cognitive-complexity-threshold = 25 # Unbounded methods are production-only denies in `xtask/src/main.rs`. # Tests and benches retain std APIs for fixtures and synchronization. disallowed-methods = [ { path = "std::sync::mpsc::channel", reason = "unbounded channels admit unbounded resident queues; use sync_channel with a named capacity" }, { path = "std::fs::read", reason = "unbounded file reads hide allocation limits; use a named byte limit and report overflow" }, { path = "std::fs::read_to_string", reason = "unbounded file reads hide allocation limits; use a named byte limit and report overflow" }, { path = "std::io::Read::read_to_end", reason = "unbounded reader drains hide allocation limits; use a named byte limit and report overflow" }, { path = "std::io::Read::read_to_string", reason = "unbounded reader drains hide allocation limits; use a named byte limit and report overflow" }, { path = "std::io::BufRead::read_line", reason = "unbounded line reads hide allocation limits; use a named byte limit and report overflow" }, { path = "std::io::BufRead::lines", reason = "unbounded line iterators hide allocation limits; use a named byte limit and report overflow" }, { path = "std::io::BufRead::read_until", reason = "unbounded line reads hide allocation limits; use a named byte limit and report overflow" }, ] # Larger records borrow at 16 bytes; trivial Copy arguments stay by-value # through 15 bytes, keeping the two Clippy recommendations non-overlapping. pass-by-value-size-limit = 16 trivial-copy-size-limit = 15 # No MSRV pin: project tracks latest stable Rust.