"""Lambda product-participations-check function module.""" from lambdacommon.common_config import logger from src.common.models.graphql import ProductMetadata from src.common.utils import decompress_payload from src.logic.consistency_checks import check_product_participations def handler(event, context): """Lambda entry point.""" try: decompressed_metadata = decompress_payload(event['product_metadata']) product_metadata = ProductMetadata(**decompressed_metadata) inconsistency_report = check_product_participations(product_metadata) return { 'status': 'OK', 'report': inconsistency_report.to_dict(), } except Exception as e: logger.exception(str(e)) raise e