"""playback_events.via: skad przyszedl adres, ktory gral (albo padl) w odtwarzaczu. Po przejsciu porndoe na resolver po stronie telefonu (2026-10-02) 35 urzadzen dalej dostawalo wylacznie 403 i nie dalo sie odroznic, czy pada nowa droga (link pobrany na telefonie), zapas przez WebView, czy stara paczka. Apka wysyla teraz `via` ('phone', 'backend', 'hoster', 'webview', 'proxy', z koncowka '-re' po ponownym rozwiazaniu); NULL = paczka sprzed tej zmiany. Kolumna bez DEFAULT, nullable: ADD COLUMN to sama zmiana metadanych. Revision ID: 0053_playback_events_via Revises: 0052_clips_feed_counters Create Date: 2026-10-06 """ from __future__ import annotations from alembic import op revision = "0053_playback_events_via" down_revision: str | None = "0052_clips_feed_counters" branch_labels = None depends_on = None def upgrade() -> None: op.execute("SET LOCAL lock_timeout = '5s'") op.execute("ALTER TABLE playback_events ADD COLUMN IF NOT EXISTS via varchar(16)") def downgrade() -> None: op.execute("SET LOCAL lock_timeout = '5s'") op.execute("ALTER TABLE playback_events DROP COLUMN IF EXISTS via")