{"files": {"main.py": "from core import run\nfrom policy import POLICY\ndef evaluate(payload):\n    return run(payload, POLICY)\n", "core.py": "import copy\nfrom helpers import ascii_fold, json_equal\n\ndef _merge_into(target, source, policy):\n    for key, value in source.items():\n        if value is None:\n            if policy.get('null_mode') == 'delete':\n                target.pop(key, None)\n            continue\n        if policy.get('nested_merge') and key in target and isinstance(target[key], dict) and isinstance(value, dict):\n            _merge_into(target[key], value, policy)\n            continue\n        if policy.get('list_merge') == 'unique' and key in target and isinstance(target[key], list) and isinstance(value, list):\n            old_items = list(target[key])\n            for item in value:\n                if not any(json_equal(item, old_item) for old_item in old_items):\n                    target[key].append(copy.deepcopy(item))\n            continue\n        target[key] = copy.deepcopy(value)\n\ndef run(payload, policy):\n    if isinstance(payload, dict):\n        events = payload.get('events', [])\n    elif isinstance(payload, list):\n        events = payload\n    else:\n        events = []\n    version_floor = policy.get('version_floor', 0)\n    deduplicated = {}\n    for original_index, event in enumerate(events):\n        raw_id = event.get('id', '')\n        if raw_id is None:\n            raw_id = ''\n        normalized = raw_id\n        if policy.get('trim_ids'):\n            normalized = normalized.strip()\n        if policy.get('fold_case'):\n            normalized = ascii_fold(normalized)\n        if normalized == '':\n            if policy.get('empty_id') == 'error':\n                raise ValueError('empty id')\n            continue\n        version = event.get('version', 0)\n        if version < version_floor:\n            continue\n        key = (normalized, version)\n        if key not in deduplicated:\n            deduplicated[key] = (event, original_index, normalized, version)\n        elif policy.get('duplicate_policy') == 'last':\n            deduplicated[key] = (event, original_index, normalized, version)\n    selected = list(deduplicated.values())\n    selected.sort(key=lambda item: (item[3], item[1]))\n    records = {}\n    tombstones = set()\n    first_processed = {}\n    audit = []\n    allowed = ('name', 'tags', 'meta') if policy.get('unknown_fields') == 'drop' else None\n    for processed_index, item in enumerate(selected):\n        event, original_index, normalized, version = item\n        if normalized not in first_processed:\n            first_processed[normalized] = processed_index\n        applied = False\n        if event.get('deleted', False):\n            if normalized in records:\n                del records[normalized]\n                applied = True\n                if policy.get('tombstone_wins'):\n                    tombstones.add(normalized)\n            elif policy.get('tombstone_wins') and normalized not in tombstones:\n                tombstones.add(normalized)\n                applied = True\n            else:\n                applied = False\n        else:\n            if policy.get('tombstone_wins') and normalized in tombstones:\n                applied = False\n            else:\n                if normalized not in records:\n                    records[normalized] = {}\n                fields = event.get('fields') or {}\n                if allowed is not None:\n                    fields = {k: v for k, v in fields.items() if k in allowed}\n                else:\n                    fields = dict(fields)\n                _merge_into(records[normalized], fields, policy)\n                applied = True\n        if policy.get('audit_all') or applied:\n            audit.append(f\"{normalized}:{version}:{'applied' if applied else 'blocked'}\")\n    if policy.get('order') == 'id':\n        ordered = sorted(records.items(), key=lambda pair: pair[0])\n    else:\n        ordered = sorted(records.items(), key=lambda pair: (first_processed.get(pair[0], 0), pair[0]))\n    return {'records': [{'id': record_id, 'fields': fields} for record_id, fields in ordered], 'audit': audit}\n", "policy.py": "POLICY = {\n    \"duplicate_policy\": \"last\",\n    \"fold_case\": False,\n    \"tombstone_wins\": False,\n    \"trim_ids\": False,\n    \"list_merge\": \"unique\",\n    \"nested_merge\": False,\n    \"null_mode\": \"delete\",\n    \"version_floor\": 3,\n    \"audit_all\": False,\n    \"empty_id\": \"error\",\n    \"order\": \"input\",\n    \"unknown_fields\": \"drop\"\n}\n", "helpers.py": "def ascii_fold(value):\n    result = []\n    for char in value:\n        if 'A' <= char <= 'Z':\n            result.append(chr(ord(char) + 32))\n        else:\n            result.append(char)\n    return ''.join(result)\n\ndef json_equal(left, right):\n    if isinstance(left, bool) or isinstance(right, bool):\n        return type(left) is type(right) and left == right\n    if isinstance(left, (int, float)) and isinstance(right, (int, float)):\n        return left == right\n    if type(left) is not type(right):\n        return False\n    if isinstance(left, dict):\n        if set(left.keys()) != set(right.keys()):\n            return False\n        return all(json_equal(left[key], right[key]) for key in left)\n    if isinstance(left, list):\n        if len(left) != len(right):\n            return False\n        return all(json_equal(a, b) for a, b in zip(left, right))\n    return left == right\n"}}