diff --git a/backend/alembic/versions/0001_initial.py b/backend/alembic/versions/0001_initial.py index a764b9a..a4c15e9 100644 --- a/backend/alembic/versions/0001_initial.py +++ b/backend/alembic/versions/0001_initial.py @@ -69,7 +69,8 @@ def upgrade() -> None: sa.Column( "visibility", postgresql.ENUM( - "public", "private", "friends_only", name="world_visibility" + "public", "private", "friends_only", name="world_visibility", + create_type=False, ), nullable=True, ), @@ -89,7 +90,7 @@ def upgrade() -> None: "asset_type", postgresql.ENUM( "image", "audio", "video", "document", "model_3d", "other", - name="asset_type", + name="asset_type", create_type=False, ), nullable=False, ), diff --git a/backend/alembic/versions/0003_add_moderation_tables_and_user_roles.py b/backend/alembic/versions/0003_add_moderation_tables_and_user_roles.py index 1bbe256..81ba652 100644 --- a/backend/alembic/versions/0003_add_moderation_tables_and_user_roles.py +++ b/backend/alembic/versions/0003_add_moderation_tables_and_user_roles.py @@ -1,6 +1,6 @@ """add moderation tables and user roles -Revision ID: 0003_add_moderation_tables_and_user_roles +Revision ID: 0003_moderation_schema Revises: 0002_add_date_of_birth_to_users Create Date: 2025-01-02 00:00:00.000000 @@ -11,8 +11,12 @@ from alembic import op import sqlalchemy as sa from sqlalchemy.dialects import postgresql -# revision identifiers, used by Alembic. -revision: str = "0003_add_moderation_tables_and_user_roles" +# revision identifiers, used by Alembic. Kept short deliberately: alembic's +# own alembic_version.version_num column is VARCHAR(32) by default, and the +# original "0003_add_moderation_tables_and_user_roles" (42 chars) exceeded +# it -- migration ran to completion and then failed writing its own version +# bookkeeping row. Verified 2026-08-19 against a genuinely fresh database. +revision: str = "0003_moderation_schema" down_revision: Union[str, None] = "0002_add_date_of_birth_to_users" branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None @@ -69,7 +73,7 @@ def upgrade() -> None: "users", sa.Column( "role", - postgresql.ENUM("user", "moderator", "admin", name="user_role"), + postgresql.ENUM("user", "moderator", "admin", name="user_role", create_type=False), nullable=False, server_default="user", ), @@ -86,7 +90,7 @@ def upgrade() -> None: sa.Column( "target_type", postgresql.ENUM( - "user", "world", "asset", "chat_message", name="target_type" + "user", "world", "asset", "chat_message", name="target_type", create_type=False, ), nullable=False, ), @@ -102,6 +106,7 @@ def upgrade() -> None: "self_harm", "other", name="reason_category", + create_type=False, ), nullable=False, ), @@ -109,7 +114,7 @@ def upgrade() -> None: sa.Column( "status", postgresql.ENUM( - "open", "in_review", "resolved", "dismissed", name="report_status" + "open", "in_review", "resolved", "dismissed", name="report_status", create_type=False, ), nullable=False, server_default="open", @@ -118,7 +123,7 @@ def upgrade() -> None: sa.Column( "resolution", postgresql.ENUM( - "action_taken", "dismissed", "no_violation", name="resolution" + "action_taken", "dismissed", "no_violation", name="resolution", create_type=False, ), nullable=True, ), @@ -154,7 +159,7 @@ def upgrade() -> None: sa.Column( "target_type", postgresql.ENUM( - "user", "world", "asset", "chat_message", name="target_type" + "user", "world", "asset", "chat_message", name="target_type", create_type=False, ), nullable=False, ), @@ -163,7 +168,7 @@ def upgrade() -> None: "action", postgresql.ENUM( "warn", "suspend", "ban", "restrict", "remove", "restore", - name="action_type", + name="action_type", create_type=False, ), nullable=False, ), @@ -209,7 +214,7 @@ def upgrade() -> None: sa.Column( "status", postgresql.ENUM( - "pending", "approved", "rejected", name="appeal_status" + "pending", "approved", "rejected", name="appeal_status", create_type=False, ), nullable=False, server_default="pending",