Complete training workflow and acceptance hardening

This commit is contained in:
andreysk0304 2026-09-26 18:12:27 +03:00 • committed by gglamer
commit 7237265833
243 changed files with 17014 additions and 1500 deletions

View file

@ -0,0 +1,31 @@
"""persist backend node ownership for active sessions
Revision ID: d3a9f6b2c8e1
Revises: c2d7e9f4a1b6
Create Date: 2026-09-24
"""
import sqlalchemy as sa
from alembic import op
revision = "d3a9f6b2c8e1"
down_revision = "c2d7e9f4a1b6"
branch_labels = None
depends_on = None
def upgrade() -> None:
op.add_column(
"sessions",
sa.Column("backend_node_id", sa.String(length=128), nullable=True),
)
op.create_index(
"ix_sessions_backend_node_active",
"sessions",
["backend_node_id", "ended_at"],
)
def downgrade() -> None:
op.drop_index("ix_sessions_backend_node_active", table_name="sessions")
op.drop_column("sessions", "backend_node_id")