72b30d7959
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
PR Automation / Auto Merge on CI Green + Approved (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 15s
CI/CD Pipeline / Frontend Lint (pull_request) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (web-cache, infra/docker/web.Dockerfile, xiaoxia-saas-web, web, Web, 30) (pull_request) Has been skipped
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 42s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 56s
CI/CD Pipeline / PR Build API Image (Backend) (pull_request) Successful in 1m22s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 3m32s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m20s
CI/CD Pipeline / AI Code Review (pull_request) Failing after 4m3s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 4m8s
AI Code Review / AI Code Review (pull_request) Failing after 5m46s
CI/CD Pipeline / PR Build Worker Image (Backend) (pull_request) Successful in 5m57s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m56s
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) All critical CI checks passed. Merging manually.
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 14s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 16s
Preview Deploy / Deploy Preview Environment (pull_request) Failing after 12m47s
61 lines
1.8 KiB
Python
61 lines
1.8 KiB
Python
"""Add confirm generation fields
|
|
|
|
Revision ID: 034
|
|
Revises: 033
|
|
Create Date: 2026-07-08
|
|
|
|
确认生成 API 改造:为 generation_tasks 表添加 is_preview、source_task_id、
|
|
output_width、output_height、cover_url、custom_title 字段。
|
|
"""
|
|
|
|
import sqlalchemy as sa
|
|
|
|
from alembic import op
|
|
|
|
revision = "034"
|
|
down_revision = "033"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
op.add_column(
|
|
"generation_tasks",
|
|
sa.Column("is_preview", sa.Boolean(), nullable=False, server_default=sa.true()),
|
|
)
|
|
op.add_column(
|
|
"generation_tasks",
|
|
sa.Column("source_task_id", sa.String(32), nullable=False, server_default=""),
|
|
)
|
|
op.add_column(
|
|
"generation_tasks",
|
|
sa.Column("output_width", sa.Integer(), nullable=False, server_default=sa.text("1280")),
|
|
)
|
|
op.add_column(
|
|
"generation_tasks",
|
|
sa.Column("output_height", sa.Integer(), nullable=False, server_default=sa.text("720")),
|
|
)
|
|
op.add_column(
|
|
"generation_tasks",
|
|
sa.Column("cover_url", sa.String(1000), nullable=False, server_default=""),
|
|
)
|
|
op.add_column(
|
|
"generation_tasks",
|
|
sa.Column("custom_title", sa.String(500), nullable=False, server_default=""),
|
|
)
|
|
op.create_index(
|
|
op.f("ix_generation_tasks_source_task_id"),
|
|
"generation_tasks",
|
|
["source_task_id"],
|
|
)
|
|
|
|
|
|
def downgrade() -> None:
|
|
op.drop_index(op.f("ix_generation_tasks_source_task_id"), table_name="generation_tasks")
|
|
op.drop_column("generation_tasks", "custom_title")
|
|
op.drop_column("generation_tasks", "cover_url")
|
|
op.drop_column("generation_tasks", "output_height")
|
|
op.drop_column("generation_tasks", "output_width")
|
|
op.drop_column("generation_tasks", "source_task_id")
|
|
op.drop_column("generation_tasks", "is_preview")
|