diff --git a/apps/api/src/api/v1/gitea_webhook.py b/apps/api/src/api/v1/gitea_webhook.py index b1f15270..d19c23ff 100644 --- a/apps/api/src/api/v1/gitea_webhook.py +++ b/apps/api/src/api/v1/gitea_webhook.py @@ -418,7 +418,9 @@ async def _send_gitea_notification( logger.debug("gitea_tg_skipped", reason="Bot token not configured") return - from src.services.telegram_gateway import get_telegram_gateway # type: ignore[import] + from src.services.telegram_gateway import ( + get_telegram_gateway, # type: ignore[import] + ) gateway = get_telegram_gateway() await gateway.initialize() await gateway.send_alert_notification(message) @@ -502,15 +504,22 @@ async def handle_pull_request( review_id = f"gitea-pr-{payload.repository.id}-{pr.number}-{uuid.uuid4().hex[:8]}" # 背景執行審查 (委派給 Service) - service = get_gitea_webhook_service() - background_tasks.add_task( - service.review_pull_request, - repo=payload.repository, - pr=pr, - sender=payload.sender, - review_id=review_id, - action=payload.action, - ) + if settings.MOCK_MODE: + logger.info( + "gitea_pr_review_background_skipped_mock_mode", + review_id=review_id, + repo=payload.repository.full_name, + ) + else: + service = get_gitea_webhook_service() + background_tasks.add_task( + service.review_pull_request, + repo=payload.repository, + pr=pr, + sender=payload.sender, + review_id=review_id, + action=payload.action, + ) logger.info( "gitea_pr_review_scheduled", @@ -561,17 +570,24 @@ async def handle_push( review_id = f"gitea-push-{payload.repository.id}-{payload.after[:8]}-{uuid.uuid4().hex[:8]}" # 背景執行審查 (委派給 Service) - service = get_gitea_webhook_service() - background_tasks.add_task( - service.review_push, - repo=payload.repository, - commits=commits, - sender=payload.sender, - review_id=review_id, - ref=ref, - before_sha=payload.before, - after_sha=payload.after, - ) + if settings.MOCK_MODE: + logger.info( + "gitea_push_review_background_skipped_mock_mode", + review_id=review_id, + repo=payload.repository.full_name, + ) + else: + service = get_gitea_webhook_service() + background_tasks.add_task( + service.review_push, + repo=payload.repository, + commits=commits, + sender=payload.sender, + review_id=review_id, + ref=ref, + before_sha=payload.before, + after_sha=payload.after, + ) logger.info( "gitea_push_review_scheduled",