cargo fmt --check fails on this branch: the false => 0.0 arm is missing a trailing comma, plus two more spots this diff introduces further down (the multi-line assert_eq! calls in engagement_score_starred_adds_bonus / engagement_score_starred_bonus_caps_at_one, which rustfmt collapses to one line). Since CI's Format check step runs before clippy/tests, this diff fails CI as-is — run cargo fmt before merging.
This rewrote if !opened {0.0} else {...} as match opened { true => {...}, false => 0.0 } — a needless match-on-bool with no behavior change and extra nesting for no gain. Not currently caught by clippy in this workspace (verified cargo clippy -p feedsignal-core --all-targets -- -D warnings is clean), so it'll linger. Consider reverting to a plain if/else.
AGPL-3 isn't a valid SPDX license identifier — the valid forms are AGPL-3.0-only / AGPL-3.0-or-later (or the deprecated AGPL-3.0). Tools that validate SPDX metadata (cargo-deny, crates.io) will reject this. Also this is a real license change (MIT → AGPL) bundled into a "chore" commit with no LICENSE file added to match — probably worth calling out explicitly or splitting into its own commit/PR.