"""simplify user_exercise_programs to starting_weight Revision ID: b2c3d4e5f6g7 Revises: a1b2c3d4e5f6 Create Date: 2026-03-13 """ from typing import Sequence, Union from alembic import op import sqlalchemy as sa import sqlmodel # revision identifiers, used by Alembic. revision: str = 'b2c3d4e5f6g7' down_revision: Union[str, Sequence[str], None] = 'a1b2c3d4e5f6' branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: with op.batch_alter_table('user_exercise_programs') as batch_op: batch_op.add_column(sa.Column('starting_weight', sa.String(), nullable=False, server_default='')) op.execute("UPDATE user_exercise_programs SET starting_weight = wk1_weight") with op.batch_alter_table('user_exercise_programs') as batch_op: batch_op.drop_column('wk1_reps') batch_op.drop_column('wk4_reps') batch_op.drop_column('wk1_weight') batch_op.drop_column('wk4_weight') def downgrade() -> None: with op.batch_alter_table('user_exercise_programs') as batch_op: batch_op.add_column(sa.Column('wk1_reps', sa.String(), server_default='')) batch_op.add_column(sa.Column('wk4_reps', sa.String(), server_default='')) batch_op.add_column(sa.Column('wk1_weight', sa.String(), server_default='')) batch_op.add_column(sa.Column('wk4_weight', sa.String(), server_default='')) op.execute("UPDATE user_exercise_programs SET wk1_weight = starting_weight") with op.batch_alter_table('user_exercise_programs') as batch_op: batch_op.drop_column('starting_weight')