"""Delete expired uploads/artifacts after any active lease has elapsed.""" import logging import time from sqlalchemy import select, delete, or_ from .db import Job, sessions, engine from .storage import storage log=logging.getLogger(__name__) def cleanup(batch=100): now=time.time(); removed=0 with sessions().begin() as db: q=select(Job).where(Job.expires_at<=now, or_(Job.status!='processing', Job.lease_until