-- Interaktiver Onboarding-Stand pro Profile.
--
-- Werte: "welcome" (Default) | "nickname" | "block" | "done"
--
-- Das Frontend nutzt diesen Wert als Single-Source-of-Truth für den Stand der
-- Spotlight-Tour. So bleibt der Onboarding-Stand auch nach App-Reinstall oder
-- Re-Login erhalten — kein AsyncStorage-Reset-Problem mehr.
--
-- Backfill: existierende Profile (created_at < NOW()) bekommen "done" — sie
-- haben den Onboarding-Flow nicht durchlaufen können (weil er noch nicht
-- existierte), sollen aber auch keinen retroaktiven Spotlight kriegen.
-- Wer testen will (z.B. eigenes Profile zurücksetzen), kann manuell:
--   UPDATE rebreak.profiles SET onboarding_step = 'welcome' WHERE id = '...';

ALTER TABLE "rebreak"."profiles"
    ADD COLUMN IF NOT EXISTS "onboarding_step" TEXT NOT NULL DEFAULT 'welcome';

-- Existing rows: bereits onboardet (zumindest implizit) → "done"
UPDATE "rebreak"."profiles"
SET    "onboarding_step" = 'done'
WHERE  "created_at" < NOW();
