CSV Cleanup with Audit Trails, Duplicate Rules, and TestsCSV Cleanup with Audit Trails, Duplicate Rules, and Tests
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started
A clean CSV should come with a record of what changed.
For recurring exports, five checks make the next batch easier to trust:
Keep IDs as text. 0001 and 1 may identify different records.
Agree the date format before converting it. Flag ambiguous dates rather than guessing.
Define a duplicate. Exact complete-row equality is different from deciding two rows describe the same customer.
Keep blank or incomplete rows for review instead of silently dropping them.
Re-run the same rules. The cleaned CSV should remain unchanged; the second audit should describe the second run.
I built a small Python demonstration with invented inventory data: 7 input records, 6 output records, 1 exact duplicate removed, 6 field changes and 15 review flags. Its 16 synthetic tests pass. This is demonstration evidence, not client or production results.
The source, before/after CSVs, audit and tests are public: https://gitlab.com/shivanshjain456/csv-cleanup-evidence-lab
Formula-like cells are flagged, not made safe for spreadsheet execution. Import every column as text. Treat the audit as carefully as the source, since it can contain original values.
For a scoped cleanup, start with a redacted, non-sensitive 10–20-row sample: https://contra.com/s/eOFrEcq2-csv-cleanup-with-a-change-log

gitlab.com

Shivansh / CSV Cleanup Evidence Lab · GitLab

GitLab.com

Back to feed
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started