""" Celery tasks for asynchronous workflow execution storage operations. These tasks provide asynchronous storage capabilities for workflow execution data, improving performance by offloading storage operations to background workers. """ import logging from celery import shared_task # type: ignore[import-untyped] from sqlalchemy.orm import Session from extensions.ext_database import db _logger = logging.getLogger(__name__) from services.workflow_draft_variable_service import DraftVarFileDeletion, WorkflowDraftVariableService @shared_task(queue="workflow_draft_var", bind=True, max_retries=3, default_retry_delay=60) def save_workflow_execution_task( self, deletions: list[DraftVarFileDeletion], ): with Session(bind=db.engine) as session, session.begin(): srv = WorkflowDraftVariableService(session=session) srv.delete_workflow_draft_variable_file(deletions=deletions)