forked from cardosofelipe/fast-next-template
refactor(backend): simplify ENUM handling in alembic migration script
- Removed explicit ENUM creation statements; rely on `sa.Enum` to auto-generate ENUM types during table creation. - Cleaned up redundant `create_type=False` arguments to streamline definitions.
This commit is contained in:
@@ -28,82 +28,9 @@ depends_on: str | Sequence[str] | None = None
|
||||
def upgrade() -> None:
|
||||
"""Create Syndarix domain tables."""
|
||||
|
||||
# =========================================================================
|
||||
# Create ENUM types
|
||||
# =========================================================================
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE autonomy_level AS ENUM (
|
||||
'full_control', 'milestone', 'autonomous'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE project_status AS ENUM (
|
||||
'active', 'paused', 'completed', 'archived'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE project_complexity AS ENUM (
|
||||
'script', 'simple', 'medium', 'complex'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE client_mode AS ENUM (
|
||||
'technical', 'auto'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE agent_status AS ENUM (
|
||||
'idle', 'working', 'waiting', 'paused', 'terminated'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE issue_type AS ENUM (
|
||||
'epic', 'story', 'task', 'bug'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE issue_status AS ENUM (
|
||||
'open', 'in_progress', 'in_review', 'blocked', 'closed'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE issue_priority AS ENUM (
|
||||
'low', 'medium', 'high', 'critical'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE sync_status AS ENUM (
|
||||
'synced', 'pending', 'conflict', 'error'
|
||||
)
|
||||
"""
|
||||
)
|
||||
op.execute(
|
||||
"""
|
||||
CREATE TYPE sprint_status AS ENUM (
|
||||
'planned', 'active', 'in_review', 'completed', 'cancelled'
|
||||
)
|
||||
"""
|
||||
)
|
||||
|
||||
# =========================================================================
|
||||
# Create projects table
|
||||
# Note: ENUM types are created automatically by sa.Enum() during table creation
|
||||
# =========================================================================
|
||||
op.create_table(
|
||||
"projects",
|
||||
@@ -118,7 +45,6 @@ def upgrade() -> None:
|
||||
"milestone",
|
||||
"autonomous",
|
||||
name="autonomy_level",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="milestone",
|
||||
@@ -131,7 +57,6 @@ def upgrade() -> None:
|
||||
"completed",
|
||||
"archived",
|
||||
name="project_status",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="active",
|
||||
@@ -144,14 +69,13 @@ def upgrade() -> None:
|
||||
"medium",
|
||||
"complex",
|
||||
name="project_complexity",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="medium",
|
||||
),
|
||||
sa.Column(
|
||||
"client_mode",
|
||||
sa.Enum("technical", "auto", name="client_mode", create_type=False),
|
||||
sa.Enum("technical", "auto", name="client_mode"),
|
||||
nullable=False,
|
||||
server_default="auto",
|
||||
),
|
||||
@@ -285,7 +209,6 @@ def upgrade() -> None:
|
||||
"paused",
|
||||
"terminated",
|
||||
name="agent_status",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="idle",
|
||||
@@ -384,7 +307,6 @@ def upgrade() -> None:
|
||||
"completed",
|
||||
"cancelled",
|
||||
name="sprint_status",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="planned",
|
||||
@@ -435,7 +357,6 @@ def upgrade() -> None:
|
||||
"task",
|
||||
"bug",
|
||||
name="issue_type",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="task",
|
||||
@@ -455,7 +376,6 @@ def upgrade() -> None:
|
||||
"blocked",
|
||||
"closed",
|
||||
name="issue_status",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="open",
|
||||
@@ -468,7 +388,6 @@ def upgrade() -> None:
|
||||
"high",
|
||||
"critical",
|
||||
name="issue_priority",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="medium",
|
||||
@@ -502,7 +421,6 @@ def upgrade() -> None:
|
||||
"conflict",
|
||||
"error",
|
||||
name="sync_status",
|
||||
create_type=False,
|
||||
),
|
||||
nullable=False,
|
||||
server_default="synced",
|
||||
|
||||
Reference in New Issue
Block a user