from sqlalchemy import ForeignKey, String from sqlalchemy.orm import Mapped, mapped_column from app.models.base import Base, TimestampMixin class ApiUpscaleLink(Base, TimestampMixin): """API 任务与超分任务的关联表。 由于不能修改现有的 video_upscale_tasks 表结构, 通过此关联表追踪 API 任务对应的超分子任务。 """ __tablename__ = "api_upscale_links" id: Mapped[str] = mapped_column(String(32), primary_key=True) api_generation_task_id: Mapped[str] = mapped_column( String(32), ForeignKey("api_generation_tasks.id", ondelete="CASCADE"), nullable=False, index=True ) video_upscale_task_id: Mapped[str] = mapped_column( String(32), ForeignKey("video_upscale_tasks.id", ondelete="CASCADE"), nullable=False, index=True )