"""scene backfill flag: exclude bulk catalog imports from "new" Revision ID: 0026_scene_backfill_flag Revises: 0025_source_ranking Create Date: 2026-07-02 Tube'y podają datę importu jako release_date, więc masowy backfill starego katalogu (deep-crawl głębokie strony) udawał świeżość i zawyżał licznik "+N nowych" w ulubionych. `scenes.backfill` oznacza takie sceny — pozostają widoczne, ale nie liczą się jako nowe. Ustawiane przy tworzeniu (deep_crawl page > próg); świeży latest-crawl + delta TPDB/ StashDB → False. Patrz app/scheduler/deep_crawl.py, app/resolve/scene_resolver.py. """ from collections.abc import Sequence import sqlalchemy as sa from alembic import op revision: str = "0026_scene_backfill_flag" down_revision: str | None = "0025_source_ranking" branch_labels: str | Sequence[str] | None = None depends_on: str | Sequence[str] | None = None def upgrade() -> None: op.add_column( "scenes", sa.Column( "backfill", sa.Boolean(), nullable=False, server_default=sa.text("false"), ), ) op.create_index("ix_scenes_backfill", "scenes", ["backfill"]) def downgrade() -> None: op.drop_index("ix_scenes_backfill", table_name="scenes") op.drop_column("scenes", "backfill")