Compare commits
base: fabi:pi/reauth3
fabi:main
fabi:fix/citations-generated-tree
fabi:fix/captures-root-citation
fabi:fix/decoder-db-mount
fabi:fix/canary-native-binary-path
fabi:fix/export-path-dep
fabi:chore/agent-evidence-sharing
fabi:fix/relock-after-history-rewrite
fabi:chore/captures-local-only
fabi:fix/slb-suite-one-archive
fabi:fix/ci-run-file-ownership
fabi:docs/adopt-disc-contents
fabi:chore/handoff-2026-09-18
fabi:fix/ci-pin-toolchain
fabi:fix/corpus-mounts-and-paths
fabi:recover/options-menu
fabi:recover/port-f5-f6
fabi:pi/clippy-clean
fabi:pi/reauth3
fabi:pi/clippy
fabi:human/r1-retro-tick
..
compare: fabi:pi/clippy-clean
fabi:main
fabi:fix/citations-generated-tree
fabi:fix/captures-root-citation
fabi:fix/decoder-db-mount
fabi:fix/canary-native-binary-path
fabi:fix/export-path-dep
fabi:chore/agent-evidence-sharing
fabi:fix/relock-after-history-rewrite
fabi:chore/captures-local-only
fabi:fix/slb-suite-one-archive
fabi:fix/ci-run-file-ownership
fabi:docs/adopt-disc-contents
fabi:chore/handoff-2026-09-18
fabi:fix/ci-pin-toolchain
fabi:fix/corpus-mounts-and-paths
fabi:recover/options-menu
fabi:recover/port-f5-f6
fabi:pi/clippy-clean
fabi:pi/reauth3
fabi:pi/clippy
fabi:human/r1-retro-tick
3 Commits
pi/reauth3
...
pi/clippy-
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
08416dbd0b |
fix(viewer,cli,export): clear the remaining 30 clippy lints
`cargo clippy --workspace -- -D warnings` now exits 0. `cargo test --workspace` still reports 207 passed, 0 failed, 14 ignored across 30 suites — identical to runs 203 and 204, so none of this changed behaviour. The workspace total was 73, not the 48 run 204 reported. `-D warnings` turns a lint into a hard compile error, so `sylpheed-formats` failing stopped its dependents from ever being built: `sylpheed-viewer` (14) and `sylpheed-cli` (11) had never been linted by anyone. Clearing formats in |
||
|
|
bc79817488 |
fix(formats): clear all 43 clippy lints in sylpheed-formats
Run 204 gave this repository its first clippy measurement — 48 errors, 43 of them in `sylpheed-formats`. This clears that 43 to zero under the exact invocation CI runs, `cargo clippy -p sylpheed-formats -- -D warnings`. Why this crate first, and why it is safe to touch: Every one of the 43 sites was checked against the line ranges that `auto/frame-blend-draw-path` (495 commits) and `auto/port-p6-audio` (366) actually modify. None of them overlap. Eleven of the fifteen affected files are byte-identical on both branches, including `mesh.rs` and `texture.rs`, which carry 28 of the hits between them. The three sites in `audio.rs`, `ui_layout.rs` and `slb.rs` that live in files those branches do change fall outside every modified hunk. The collision argument that defers #12 does not transfer here; it was tested rather than assumed. It also unblocks a measurement. `-D warnings` turns a lint in this crate into a hard compile error, so its dependents never build — `sylpheed-cli` and `sylpheed-viewer` have never been linted at all, and viewer is the largest crate in the workspace. Both depend only on `sylpheed-formats` (`sylpheed-export` pins it from a git tag instead), so this commit is what makes their real counts knowable. 38 applied by `cargo clippy --fix` — chunks_exact_to_as_chunks, manual_div_ceil / is_multiple_of / range_contains, unnecessary_map_or, needless_borrow, let_and_return, dead_code, unused_mut/variables. Purely local expression rewrites: 38 insertions, 39 deletions. 2 by hand: a doc continuation that markdown was parsing as a list, and `d / frame` behind a `frame > 0` guard becoming `checked_div`. 3 `#[allow(clippy::too_many_arguments)]` with a stated reason. On those three allows: 8 parameters against a threshold of 7, in the mesh anchor path. The real fix is a shared params struct across `anchor_pool_mesh`, `validate_block` and `validate_block_report` — the latter two take the same eight arguments and one delegates to the other — which is a change to the decoder's signatures and belongs to whoever owns that path, not to a CI-lint pass. This is not the shape PROTOCOL.md forbids. `continue-on-error` suppresses everything, present and future, at the job level, and cannot tell "not yet" from "no longer". A site-local `#[allow]` with a reason is a decision recorded where it applies: one lint, one function, and any new violation anywhere else still fails the build. `sylpheed-export`'s remaining 5 are deliberately untouched — three of them sit inside hunks both long-lived branches modify, and that crate blocks nothing. Left for #13. Refs #13 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01McNbzUeq1KRBWs4G6X2YVj |
||
|
|
d8dcc1fc29 |
docs: record the third softening, which was authored dirty
The two instances already in "Checks that were kind once" were correct when written and decayed. The third was wrong on its first commit, and it arrived by a different route: the check and the tree's failure to pass it land in the same change, so the softening writes itself. Concretely — the Clippy step had never run (no component in the toolchain), and the tree is not clippy-clean, so fixing the step and turning it red are the same commit. The first draft paired the fix with `continue-on-error: true` and a comment promising removal once the debt was paid: an expiry date nobody set, in the shape #12's closing line had already ruled out for rustfmt. Reverted on reading it. Adds the distinction, a table separating decay from dirty authorship, and an earlier tell than the mechanical test: If you are writing the softening in the same commit as the check, the thing you want is an issue, not a flag. The mechanical test is unchanged and still correct; this only catches the same failure sooner, at the keyboard rather than at review. Refs #12, #13 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01McNbzUeq1KRBWs4G6X2YVj |