完善视频提炼和视频复刻完善提交测试

This commit is contained in:
Azmat@qq.com
2026-08-28 10:15:15 +08:00
parent 52c5cdae1d
commit 849b14a0f6
33 changed files with 1475 additions and 208 deletions
@@ -259,6 +259,29 @@ def _should_mark_project_failed(job: QuickCreateJob) -> bool:
return True
# 编排器活着时会不断推进并保存 job(updated_at 跟着动)。超过这个时长没动过,
# 基本就是 worker 挂了 —— 不当它在跑,否则一次抽风会把团队永久锁在"有任务进行中"。
QUICK_CREATE_STALE_AFTER = timedelta(minutes=30)
def get_inflight_quick_create(team):
"""本团队正在跑的一键成片。没有 / 已经僵死的返回 None。"""
from django.utils import timezone
return (
QuickCreateJob.objects.select_related("project")
.filter(
team=team,
status__in=(QuickCreateJob.Status.QUEUED, QuickCreateJob.Status.RUNNING),
project__is_deleted=False,
project__purged_at__isnull=True,
updated_at__gte=timezone.now() - QUICK_CREATE_STALE_AFTER,
)
.order_by("-created_at")
.first()
)
def restore_false_failed_quick_creates(team) -> None:
jobs = (
QuickCreateJob.objects.select_related("project")