"""Lambda generate_ingestion_failure_report function module.""" import logging from typing import Any from common.schemas.ingestion import BaseEvent from src.logic import generate_reupload_spreadsheet logger = logging.getLogger(__name__) def handle(event: BaseEvent) -> BaseEvent: """ Handle the ingestion event and generate a re-upload spreadsheet containing only the failed products. """ generate_reupload_spreadsheet( bulk_session_id=event.bulk_session_id, bulk_session_ingestion_id=event.bulk_session_ingestion_id, identity_uuid=event.identity_uuid, ) return event def handler(event_data: dict[str, Any], context: Any) -> dict[str, Any]: """ Lambda entry point. Args: event_data: Lambda event payload (should look like event.shadow.json) context: Lambda context. """ handle(BaseEvent(**event_data)) return event_data