#!/usr/bin/env python3
"""
Einmaliges Migrations-Skript: alle Aufträge mit level='l3' werden zu
level='l4' umbenannt. Die l4-Aufträge sind weltweite Ziele (USA, Brasilien,
Australien, Afrika …), die nicht mehr ins Busfahrt-Modul gehören —
sie werden für ein späteres Fluggesellschaft-Modul reserviert.

Nach diesem Lauf ist L3 im Busfahrt-Pool LEER und wird beim Tour-Filter
auf den kumulativen L1+L2-Pool zurückfallen (siehe engine.js
filterPoolByLevel). Idempotent.
"""
import json
from pathlib import Path

ROOT = Path(__file__).resolve().parent.parent / "assets" / "data"
ORDERS_PATH = ROOT / "orders.json"

with ORDERS_PATH.open("r", encoding="utf-8") as f:
    orders = json.load(f)

before = sum(1 for o in orders if o.get("level") == "l3")
for o in orders:
    if o.get("level") == "l3":
        o["level"] = "l4"
after_l4 = sum(1 for o in orders if o.get("level") == "l4")
after_l3 = sum(1 for o in orders if o.get("level") == "l3")

with ORDERS_PATH.open("w", encoding="utf-8") as f:
    json.dump(orders, f, ensure_ascii=False, indent=2)
    f.write("\n")

print(f"l3 -> l4 umbenannt: {before}")
print(f"Pool jetzt: l1={sum(1 for o in orders if o.get('level')=='l1')}, "
      f"l2={sum(1 for o in orders if o.get('level')=='l2')}, "
      f"l3={after_l3}, l4={after_l4}")
