Background
make lint runs cargo clippy -D warnings but explicitly skips cargo fmt --check. The reason: the codebase uses intentional manual column alignment in struct definitions and compact single-line literals that default rustfmt would reflow.
Options
- Add a
rustfmt.toml that preserves the intentional formatting (e.g. max_width, imports_granularity, disabled rules for struct fields) and then enable cargo fmt --check in make lint and CI.
- Keep the current state: document the decision in CLAUDE.md and leave
fmt unenforced. Close this issue as "by design".
Why track this
The current state means contributors get no automatic style feedback from CI. Option 1 is preferable if a rustfmt.toml can be written that matches the existing formatting without rewrites.
Acceptance criteria (for option 1)
cargo fmt --check passes on the current codebase without any source changes.
make lint includes the fmt check.
- CI matrix includes the fmt check as a separate step.
Background
make lintrunscargo clippy -D warningsbut explicitly skipscargo fmt --check. The reason: the codebase uses intentional manual column alignment in struct definitions and compact single-line literals that default rustfmt would reflow.Options
rustfmt.tomlthat preserves the intentional formatting (e.g.max_width,imports_granularity, disabled rules for struct fields) and then enablecargo fmt --checkinmake lintand CI.fmtunenforced. Close this issue as "by design".Why track this
The current state means contributors get no automatic style feedback from CI. Option 1 is preferable if a
rustfmt.tomlcan be written that matches the existing formatting without rewrites.Acceptance criteria (for option 1)
cargo fmt --checkpasses on the current codebase without any source changes.make lintincludes the fmt check.