CSV cleanup / checked output

Every row accounted for.

Source: messy_customers.csv. The source file was read, never edited.

8Rows read
5Ready
1Duplicates removed
2Need review

8 input rows = 5 ready + 1 duplicates + 2 for review.

Files to use

cleaned.csv
Rows with the expected number of columns. Values stay text, including IDs with leading zeroes.
review.csv
Rows with missing or extra cells, with their original values and source record number.
audit.jsonl
One event for each changed, removed or quarantined record.
summary.json
Counts, settings and the source fingerprint.

What was applied

Trim outer whitespace: yes. Remove exact duplicate rows: yes. Cells changed: 3.

Duplicates use every cell, after optional trimming. The first matching record is kept. No names, dates, numbers or currencies were inferred.

View the source and quick start on GitHub