GOD CRM Russia: post #182 — TG.ME

━━ День разработки 253 · 8 августа 2026 ━━

📦 Сделал

— Регистрация теперь одна дверь. Раньше режим (открытая / по инвайту / закрытая) можно было обойти через разные точки входа. Свёл всё в один серверный чек: signupmode проверяется на входе, до создания юзера, и клиент это больше не решает.

— Политика регистрации стала рантайм-настройкой. Отдельный эндпоинт отдаёт текущий режим, резолвер тянет его на лету — правишь в Settings, форма логина/регистрации подстраивается сама, без пересборки и без деплоя.

— Убрал хардкод. Овнер-гейт раньше держался на «пространство №11» прямо в коде. Теперь ключуется по роли. Звучит мелко, но базы у нас форкнуты — KZ живёт своим мастером, id пространств там свои; магическое число форк не переживает, роль — переживает.

— Инвайты и рефералка: промо/реферальные настройки вынес в отдельный раздел, регистрация по коду.

— Миграции: добавил from-empty guards в knex-цепочку. Одна миграция теперь одинаково доводит до схемы и пустую базу, и живую — идемпотентно, накатывается повторно без падений. При двух форкнутых мастерах это и нужно: обе стороны должны независимо сходиться к одной схеме.

Сколько ушло
Собрал за пару вечеров — политика, эндпоинт, форма и миграции легли одним заходом. К утру уже крутилось на стейджинге.

Спасибо что читаете. До завтра.

━━ Конец дня 253 ━━
August 8, 2026 9