"""Legacy -> R1 migration transforms (05-migration-plan.md step 2).

Idempotent and rehearsable: every run clears the public target tables
(users excepted — column-scoped upsert; parties upserted by slug with
STABLE uuids; app-owned tenants' rows preserved — ADR #021) and rebuilds
them from ``legacy.*`` inside one transaction. Run nightly by the snapshot
pipeline; on demand via ``scripts/migrate_legacy.py``.
"""

from app.services.migrate.report import RunReport
from app.services.migrate.transforms import run_all

__all__ = ["RunReport", "run_all"]
