Skip to content

fix(clippy): clear 5 pre-existing too-many-args + unfulfilled expect errors#204

Merged
forkwright merged 1 commit intomainfrom
fix/clippy-too-many-args-post-lint-sync
Apr 20, 2026
Merged

fix(clippy): clear 5 pre-existing too-many-args + unfulfilled expect errors#204
forkwright merged 1 commit intomainfrom
fix/clippy-too-many-args-post-lint-sync

Conversation

@forkwright
Copy link
Copy Markdown
Owner

Summary

Clears the 5 pre-existing clippy errors on main blocking Phase 05e cutover arc (#200 caps + #201 lint-sync). All fixed at source via params-struct extraction rather than bare allows, per operator policy.

Changes

Site Before After
aitesis/repo.rs:132 update_status (7 args) raw signature UpdateStatusParams<'a> struct — 5 call sites migrated
zetesis/repo.rs:24 insert_indexer (7 args) raw signature InsertIndexerParams<'a> struct — 0 internal callers
paroche/subsonic/types.rs:181 album_xml_elem (7 args) raw signature shared AlbumElemParams<'a> (Copy) — 3 call sites
paroche/subsonic/types.rs:243 album_json (7 args) raw signature shares AlbumElemParams<'a> — 3 call sites (same loops as above)
komide/service/mod.rs:41 unfulfilled #[expect(clippy::type_complexity)] dead expect removed (type no longer trips lint under new threshold)

Both album_xml_elem and album_json take the same 7 AlbumID3 fields, so they share one Copy params struct — call sites build once, pass to both. Net: +159/-121 across 8 files.

Gate status (fresh run on HEAD)

PASS  cargo fmt
PASS  cargo check
PASS  cargo clippy        (all 5 target errors cleared)
PASS  cargo nextest
FAIL  kanon lint          (1 pre-existing SECURITY/insecure-transport
                           at komide:572 — out of scope, see #203)

cargo clippy --workspace --all-features still fails in archon on the sd-notify 0.5 breaking change — that's covered by the separate fix/sd-notify-0.5 branch in flight, independent of this PR.

Related

Test plan

  • cargo check -p aitesis -p zetesis -p paroche -p komide --all-targets
  • cargo clippy --all-targets --all-features -p aitesis -p zetesis -p paroche -p komide -- -D warnings
  • cargo nextest run (via kanon gate)
  • cargo fmt --check
  • CI on github/main merge queue

forkwright pushed a commit that referenced this pull request Apr 19, 2026
Clears TOML/inline-table-too-long across:
- Cargo.toml (workspace, 4 sites)
- crates/paroche/Cargo.toml, crates/syndesis/Cargo.toml,
  crates/syndesmos/Cargo.toml, crates/theatron/desktop/Cargo.toml
- deny.toml (6 sites in [licenses] / [bans])

Pure reformatting — no semantic change to deps, features, or licenses.
Verified each site clears the lint individually.

Part of the harmonia 77-warning cleanup arc unblocking the
05e cutover gate chain (#200, #201, #202, #204).
forkwright added a commit that referenced this pull request Apr 20, 2026
Clears TOML/inline-table-too-long across:
- Cargo.toml (workspace, 4 sites)
- crates/paroche/Cargo.toml, crates/syndesis/Cargo.toml,
  crates/syndesmos/Cargo.toml, crates/theatron/desktop/Cargo.toml
- deny.toml (6 sites in [licenses] / [bans])

Pure reformatting — no semantic change to deps, features, or licenses.
Verified each site clears the lint individually.

Part of the harmonia 77-warning cleanup arc unblocking the
05e cutover gate chain (#200, #201, #202, #204).

Co-authored-by: Cody Kickertz <cody@forkwright.com>
…errors

Blocks Phase 05e cutover arc — caps PR #200 and lint-sync PR #201 both
fail kanon gate on these pre-existing errors. Per operator directive
("pre-existing just means it's time to solve properly now"), fixing at
source rather than suppressing.

Changes:
- aitesis/repo.rs:132 update_status — extract `UpdateStatusParams<'a>`
  grouping (id, status, decided_by, decided_at, deny_reason, want_id).
  All 5 callers (approval.rs x2, lib.rs x2, repo.rs test x1) updated.
- komide/service/mod.rs:41 — remove unfulfilled
  `#[expect(clippy::type_complexity)]` on `cache_validators`; the
  `HashMap<String, (Option<String>, Option<String>)>` type no longer
  trips `clippy::type_complexity` (threshold changed under newer clippy
  in the 2025-11 lint-sync), so the expect is dead weight.
- zetesis/repo.rs:24 insert_indexer — extract
  `InsertIndexerParams<'a>` (name, url, protocol, api_key, cf_bypass,
  priority). Currently no callers inside the workspace; signature
  change is forward-compatible for future admin endpoints.
- paroche/subsonic/types.rs album_xml_elem / album_json — extract
  shared `AlbumElemParams<'a>` (id, name, artist, artist_id, year,
  song_count, duration). Marked `Copy` so call sites build the params
  once and pass to both encoders. All 3 call sites in lists.rs (x2) and
  browsing.rs (x1) updated accordingly.

Gate status on fix/clippy-too-many-args-post-lint-sync @ HEAD:
  PASS cargo fmt
  PASS cargo check
  PASS cargo clippy (all 5 target errors cleared)
  PASS cargo nextest
  FAIL kanon lint — 1 pre-existing SECURITY/insecure-transport
    violation at komide/service/mod.rs:572 (HTTP URL for podcast feed
    fetch); out of scope for this PR, unchanged by this diff.

Also reproduces the sd-notify 0.5 archon compile error under
`cargo clippy --workspace --all-features`; that's the separate
`fix/sd-notify-0.5` branch in flight.

Gate-Passed: kanon 0.1.0
@forkwright forkwright force-pushed the fix/clippy-too-many-args-post-lint-sync branch from fa40dec to 918443f Compare April 20, 2026 12:58
@forkwright forkwright merged commit d2a85d3 into main Apr 20, 2026
3 checks passed
@forkwright forkwright deleted the fix/clippy-too-many-args-post-lint-sync branch April 20, 2026 12:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant