-- 055_user_custom_role.sql
-- Phase C, Stage C-2 — присвоение кастомной роли пользователю.
-- users.role в канон-схеме имеет CHECK (admin/teacher/student/free_student) и
-- безопасно пересобрать users нельзя (FK многих таблиц, миграции в транзакции).
-- Поэтому кастомную роль храним отдельной колонкой: users.role = функциональная
-- БАЗА (встроенная роль для веток контроллеров и резолва прав), users.custom_role
-- = имя кастомной роли (для гейтов через effectiveRoles + метка + C-3 пер-ролевые права).
-- NULL = обычная встроенная роль.

ALTER TABLE users ADD COLUMN custom_role TEXT;
