Files
xiaoxia-saas/packages/application/__init__.py
T
CI Bot 206555c2d8 feat: 任务中心升级 - 失败重试+错误追踪+列表筛选+自动重试
- 数据库:generation_tasks 新增 error_info JSON / retry_count / auto_retry_enabled / auto_retry_max 字段
- 领域模型:mark_failed 支持结构化 error_info,mark_pending_from_failed 递增 retry_count
- Repository:新增 list_by_user_filtered / count_by_user_filtered / list_by_project_filtered / count_by_project_filtered
- Use Case:新增 RetryGenerationTaskUseCase(原地重试)、ListUserTasksFilteredUseCase
- API:任务列表支持 status/task_type 筛选+分页,重试改为原地重试(复用task_id)
- Worker:失败时结构化记录 error_info(含堆栈摘要),支持自动重试(指数退避,最大60s)
- Schema:所有响应新增 error_info / retry_count / auto_retry 字段
- 单测:新增9个测试用例,51个状态测试全绿,80个相关测试无回归
2026-07-14 09:17:29 +08:00

107 lines
2.9 KiB
Python
Executable File

"""Application use cases package."""
from .asset_libraries import (
CreateAssetLibraryCommand,
CreateAssetLibraryUseCase,
ListAssetLibrariesUseCase,
)
from .assets import CreateAssetCommand, CreateAssetUseCase, ListAssetsUseCase
from .classification_jobs import (
SubmitClassificationJobCommand,
SubmitClassificationJobUseCase,
)
from .duplication import (
DeleteDuplicationRecordUseCase,
GetDuplicationDetailUseCase,
ListDuplicationRecordsUseCase,
RetryDuplicationUseCase,
UploadForDuplicationCommand,
UploadForDuplicationUseCase,
)
from .generated_videos import (
GetGeneratedVideoDownloadUrlUseCase,
GetGeneratedVideoUseCase,
ListGeneratedVideosByTaskUseCase,
ListGeneratedVideosUseCase,
)
from .generation_tasks import (
CreateGenerationTaskCommand,
CreateGenerationTaskUseCase,
GetGenerationTaskUseCase,
ListGenerationTasksResult,
ListUserTasksFilteredUseCase,
RetryGenerationTaskUseCase,
)
from .ingest_jobs import SubmitIngestJobCommand, SubmitIngestJobUseCase
from .jobs import (
CancelJobUseCase,
CompleteJobCommand,
CompleteJobUseCase,
CreateJobCommand,
CreateJobUseCase,
FailJobCommand,
FailJobUseCase,
GetJobStatisticsUseCase,
GetJobUseCase,
ListJobsUseCase,
RetryJobUseCase,
SubmitJobUseCase,
UpdateJobProgressCommand,
UpdateJobProgressUseCase,
)
from .projects import (
CreateProjectCommand,
CreateProjectUseCase,
DeleteProjectUseCase,
GetProjectUseCase,
ListProjectsUseCase,
)
__all__ = [
"CancelJobUseCase",
"CompleteJobCommand",
"CompleteJobUseCase",
"CreateAssetCommand",
"CreateAssetLibraryCommand",
"CreateAssetLibraryUseCase",
"CreateAssetUseCase",
"CreateGenerationTaskCommand",
"CreateGenerationTaskUseCase",
"GetGenerationTaskUseCase",
"ListGenerationTasksResult",
"ListUserTasksFilteredUseCase",
"RetryGenerationTaskUseCase",
"CreateJobCommand",
"CreateJobUseCase",
"CreateProjectCommand",
"CreateProjectUseCase",
"DeleteDuplicationRecordUseCase",
"DeleteProjectUseCase",
"FailJobCommand",
"FailJobUseCase",
"GetDuplicationDetailUseCase",
"GetGeneratedVideoDownloadUrlUseCase",
"GetGeneratedVideoUseCase",
"GetJobStatisticsUseCase",
"GetJobUseCase",
"GetProjectUseCase",
"ListAssetLibrariesUseCase",
"ListAssetsUseCase",
"ListDuplicationRecordsUseCase",
"ListGeneratedVideosByTaskUseCase",
"ListGeneratedVideosUseCase",
"ListJobsUseCase",
"ListProjectsUseCase",
"RetryDuplicationUseCase",
"RetryJobUseCase",
"SubmitClassificationJobCommand",
"SubmitClassificationJobUseCase",
"SubmitIngestJobCommand",
"SubmitIngestJobUseCase",
"SubmitJobUseCase",
"UpdateJobProgressCommand",
"UpdateJobProgressUseCase",
"UploadForDuplicationCommand",
"UploadForDuplicationUseCase",
]