Files
ss-tools/backend/alembic/versions/z7a8b9c0d1e2_merge_044_execution_043_edits.py

36 lines
1.6 KiB
Python

# #region Alembic.MergeExecutionAndEditProposals [C:1] [TYPE Module] [SEMANTICS alembic,migration,merge,scenario,execution,edit-proposals]
# @ingroup Alembic
# @BRIEF Merge two parallel heads from y4z5a6b7c8d9: 044 execution tables (z5a6b7c8d9e0) and
# 043 edit proposals (z6a7b8c9d0e1). Restores a single alembic head so `upgrade head`
# applies both branches exactly once.
# @RELATION DEPENDS_ON -> [Alembic.ScenarioExecutionTables]
# @RELATION DEPENDS_ON -> [Alembic.ScenarioEditProposals]
# @RATIONALE 044 execution (z5a6b7c8d9e0) and 043 edit proposals (z6a7b8c9d0e1) landed
# concurrently from y4z5a6b7c8d9. A no-op merge revision collapses them into one
# head so runtime migrations stop failing with "multiple head revisions".
# @REJECTED Editing down_revision of either existing migration was rejected — it would rewrite
# already-applied history on live deployments; a merge revision is the additive fix.
"""merge 044 execution tables and 043 edit proposals into one head
Both z5a6b7c8d9e0 (044 execution: artifacts/approval/resume) and z6a7b8c9d0e1
(043 edit proposals) branch from y4z5a6b7c8d9. This merge restores a single
alembic head so upgrade runs both branches exactly once.
"""
from collections.abc import Sequence
revision: str = "z7a8b9c0d1e2"
down_revision: str | Sequence[str] | None = ("z5a6b7c8d9e0", "z6a7b8c9d0e1")
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None
def upgrade() -> None:
# Merge point only — both branches already applied their DDL.
pass
def downgrade() -> None:
pass
# #endregion Alembic.MergeExecutionAndEditProposals