use background task to avoid timeout

This commit is contained in:
Laura Abro
2025-04-29 11:09:29 -03:00
parent 6cf7e0db0e
commit f4b0fc4e2e
9 changed files with 198 additions and 107 deletions

View File

@ -1,6 +1,5 @@
"""Task service module."""
from flask import jsonify
from prometheus_swarm.database import get_db
from prometheus_swarm.clients import setup_client
from src.workflows.repoSummarizer.workflow import RepoSummarizerWorkflow
@ -12,10 +11,11 @@ from src.database.models import Submission
load_dotenv()
def handle_task_creation(task_id, round_number, repo_url):
def handle_task_creation(task_id, round_number, repo_url, db=None):
"""Handle task creation request."""
try:
db = get_db()
if db is None:
db = get_db() # Fallback for direct calls
client = setup_client("anthropic")
workflow = RepoSummarizerWorkflow(
@ -35,11 +35,9 @@ def handle_task_creation(task_id, round_number, repo_url):
)
db.add(submission)
db.commit()
return jsonify({"success": True, "result": result})
return {"success": True, "result": result}
else:
return jsonify(
{"success": False, "result": result.get("error", "No result")}
)
return {"success": False, "result": result.get("error", "No result")}
except Exception as e:
logger.error(f"Repo summarizer failed: {str(e)}")
raise