← Projectsdocument-intelligence / L2Deduplication + Provenance~15 min
one move: normalize before you dedupe
The 30 rows contain exact duplicates and near-duplicates (case and whitespace differences). Implement dedupe_rows that keeps the first occurrence under a NORMALIZED key and records provenance: which row each duplicate came from.