//! Shared dedup helper used by HTML and text DRY renderers.
//!
//! `project_dry` emits one `DryFinding` per group participant; renderers
//! that show "one row per group" need to dedupe by a per-variant key.
//! This single helper is the canonical place for that logic so HTML and
//! text don't drift apart.
use HashSet;
use Hash;
use crateDryFinding;
/// Walk `findings`, skip suppressed entries, run `extract` on each, and
/// keep only the first occurrence per key. Generic in the key type so
/// each variant can choose what defines a unique group (e.g. duplicates
/// key on participant locations alone, repeated-match keys on
/// `(enum_name, sorted locations)` to match JSON's grouping).
pub