"""add interface fields to srs requirements

Revision ID: b7217f0c3d92
Revises: a4f9c89b7d11
Create Date: 2026-04-18 19:10:00.000000

"""
from typing import Sequence, Union

from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision: str = "b7217f0c3d92"
down_revision: Union[str, None] = "a4f9c89b7d11"
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None


def upgrade() -> None:
    op.add_column("srs_requirements", sa.Column("section_uid", sa.String(length=64), nullable=True))
    op.add_column("srs_requirements", sa.Column("interface_name", sa.String(length=255), nullable=True))
    op.add_column("srs_requirements", sa.Column("interface_type", sa.String(length=128), nullable=True))
    op.add_column("srs_requirements", sa.Column("data_source", sa.String(length=255), nullable=True))
    op.add_column("srs_requirements", sa.Column("data_destination", sa.String(length=255), nullable=True))


def downgrade() -> None:
    op.drop_column("srs_requirements", "data_destination")
    op.drop_column("srs_requirements", "data_source")
    op.drop_column("srs_requirements", "interface_type")
    op.drop_column("srs_requirements", "interface_name")
    op.drop_column("srs_requirements", "section_uid")
