From df43f4783ac448372ecdf251051eeb79e6a8ac85 Mon Sep 17 00:00:00 2001 From: Roberto Musso Date: Sun, 12 Apr 2026 10:12:52 +0200 Subject: [PATCH] fix(migration): guard 003 against pre-existing language column --- alembic/versions/003_add_language_column.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/alembic/versions/003_add_language_column.py b/alembic/versions/003_add_language_column.py index 5ec9329..723aaf7 100644 --- a/alembic/versions/003_add_language_column.py +++ b/alembic/versions/003_add_language_column.py @@ -16,7 +16,18 @@ depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: - op.add_column("waitlist_entries", sa.Column("language", sa.String(5), nullable=False, server_default="en")) + # Guard: column may already exist from a prior manual migration + op.execute(""" + DO $$ + BEGIN + IF NOT EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'waitlist_entries' AND column_name = 'language' + ) THEN + ALTER TABLE waitlist_entries ADD COLUMN language VARCHAR(5) NOT NULL DEFAULT 'en'; + END IF; + END $$; + """) def downgrade() -> None: