"""Lambda log-auto-approve-results function module.""" from typing import Any, Mapping import config import sentry_sdk from lambdacommon.common_config import logger from sentry_sdk.integrations.aws_lambda import AwsLambdaIntegration from src import logic # initialize sentry if config.SENTRY_DSN: logger.info("Initializing with sentry") sentry_sdk.init(config.SENTRY_DSN, integrations=[AwsLambdaIntegration()]) else: logger.info("Initializing without sentry") def handler(event: Mapping[str, Any], context: Any) -> dict[str, str]: """Lambda entry point.""" logger.debug(event) data = event["data"] review_queue_id = data["review_queue_id"] try: validation_payload = event["ProductValidationTaskResponse"]["Payload"] auto_approve_response = event.get("AutoapproveTaskResponse") auto_approved = auto_approve_response is not None payload = { "validation_result": validation_payload.get("validations"), "failed_validations": validation_payload.get("failed_validations"), "auto_approved": auto_approved, "confidence_score": None, "score_reasoning": None, "score_version": None, } logic.save_auto_approval_results(review_queue_id, payload) logger.info( f"Processed log-auto-approve-results for review_queue_id " f"{review_queue_id}" ) except Exception as e: logger.exception(str(e)) raise e return {"status": "ok"}