-- #migration 2026_07_11_099
-- Table des succès débloqués par utilisateur (remplace le suivi en localStorage
-- côté front — un succès ne doit être accordé qu'une seule fois, de façon fiable
-- et synchronisée entre appareils).
CREATE TABLE IF NOT EXISTS user_achievements (
  id             INT AUTO_INCREMENT PRIMARY KEY,
  user_id        VARCHAR(64)  NOT NULL,
  achievement_id VARCHAR(64)  NOT NULL,
  unlocked_at    TIMESTAMP    DEFAULT CURRENT_TIMESTAMP,
  UNIQUE KEY uniq_user_achievement (user_id, achievement_id),
  KEY idx_user (user_id)
);
