"""Pointage des bénévoles Revision ID: 0030_assignment_attendance Revises: 0029_volunteer_messages Create Date: 2026-10-28 `assignment.attendance` (`PRESENT`/`ABSENT`, `NULL` = pas pointé) et `attendance_marked_at` : le pointage du référent était gardé dans le navigateur seulement et se perdait au rechargement. """ from collections.abc import Sequence import sqlalchemy as sa from alembic import op revision: str = "0030_assignment_attendance" down_revision: str | None = "0029_volunteer_messages" branch_labels: str | Sequence[str] | None = None depends_on: str | Sequence[str] | None = None _ATTENDANCE = sa.Enum("PRESENT", "ABSENT", name="attendancestatus", native_enum=False) def upgrade() -> None: op.add_column("assignment", sa.Column("attendance", _ATTENDANCE, nullable=True)) op.add_column( "assignment", sa.Column("attendance_marked_at", sa.DateTime(), nullable=True) ) def downgrade() -> None: op.drop_column("assignment", "attendance_marked_at") op.drop_column("assignment", "attendance")