import csv import io import json def parse_uploaded_payload(filename: str, content: str, purpose: str) -> dict: suffix = filename.rsplit(".", 1)[-1].lower() if suffix == "json": parsed = json.loads(content) elif suffix in {"csv", "txt"}: reader = csv.DictReader(io.StringIO(content)) parsed = list(reader) else: parsed = {"raw": content} return {"purpose": purpose, "records": parsed}