"""FICTIONAL DEMONSTRATION: AI-operated HireThomas Inc; not client work.""" import argparse import csv import sys from collections import Counter from pathlib import Path FLAG = "is_duplicate" def flag_csv(source, output): """Preserve parsed strings/order; mark ALL members of exact duplicate groups.""" source, output = Path(source), Path(output) if source.resolve() == output.resolve(): raise ValueError("source and output must be different paths") with source.open("r", encoding="utf-8", newline="") as handle: reader = csv.reader(handle, dialect="excel", strict=True) header = next(reader, None) if not header or any(name == "" for name in header): raise ValueError("a nonempty header with nonempty names is required") if len(set(header)) != len(header): raise ValueError("duplicate header names are not allowed") if FLAG in header: raise ValueError("header collision: is_duplicate already exists") rows = [] for record, row in enumerate(reader, start=2): if len(row) != len(header): raise ValueError( f"record {record}: expected {len(header)} fields, got {len(row)}" ) rows.append(tuple(row)) counts = Counter(rows) groups = sum(count > 1 for count in counts.values()) repeated = sum(count - 1 for count in counts.values()) flagged = sum(count for count in counts.values() if count > 1) # Validate everything before creating output; never overwrite existing files. with output.open("x", encoding="utf-8", newline="") as handle: writer = csv.writer(handle, dialect="excel", lineterminator="\n") writer.writerow(header + [FLAG]) for row in rows: writer.writerow(row + (str(int(counts[row] > 1)),)) return len(rows), groups, repeated, flagged def main(argv=None): parser = argparse.ArgumentParser(description=__doc__) parser.add_argument("source", type=Path) parser.add_argument("output", type=Path) args = parser.parse_args(argv) try: rows, groups, repeated, flagged = flag_csv(args.source, args.output) except (OSError, UnicodeError, csv.Error, ValueError) as exc: print(f"error: {exc}", file=sys.stderr) return 2 print(f"rows={rows} duplicate_groups={groups} repeated_rows={repeated} flagged_rows={flagged}") return 0 if __name__ == "__main__": sys.exit(main())