# Generated by Django 5.1.4 on 2025-06-19 10:25
#
# Marketing asked for the 2024 long-tail tiers to stop showing up in the
# campaign picker. Flagged rather than deleted so reporting can still resolve
# an old promotion key to its label.

from django.db import migrations

LAST_ACTIVE_TIER = 40


def retire_superseded(apps, schema_editor):
    entry_model = apps.get_model("adjustments", "PromotionCatalogEntry")
    alias = schema_editor.connection.alias
    for entry in entry_model.objects.using(alias).all().order_by("pk"):
        entry.retired = int(entry.tier_key[1:]) > LAST_ACTIVE_TIER
        entry.save(using=alias, update_fields=["retired"])


class Migration(migrations.Migration):

    dependencies = [
        ("adjustments", "0005_backfill_catalog_ordering"),
    ]

    operations = [
        migrations.RunPython(retire_superseded, migrations.RunPython.noop),
    ]
