"""Record whether a tip was opened before the question was answered. Getting an answer right after reading a nudge is not the same as getting it right, and neither is it wrong. Kept as its own fact so the analysis can say which it was rather than folding one into the other. Rows written before tips existed take 0. That is not a guess: there was nothing to open. Revision ID: e1f2a3b4c5d6 Revises: d0e1f2a3b4c5 """ import sqlalchemy as sa from alembic import op revision = "e1f2a3b4c5d6" down_revision = "d0e1f2a3b4c5" branch_labels = None depends_on = None def upgrade() -> None: op.add_column("attempt_answers", sa.Column( "used_hint", sa.Boolean(), nullable=False, server_default="0")) def downgrade() -> None: op.drop_column("attempt_answers", "used_hint")