Хранилище печатей

Supabase setup

Миграции, Auth, архив раскладов, rate limiting и безопасность базы перед настоящим трафиком.

Если база не готова, красивый интерфейс превращается в маску без дверей.

Применить миграции

Production база должна получить все SQL-миграции, которые добавляют reading records, owner fields, rate limits, events и support fields.

  • Миграции применены без ошибок.
  • Индексы созданы.
  • Колонки owner_user_id и owner_email существуют.

Проверить Auth

Magic link должен создавать или открывать аккаунт, возвращать пользователя в callback и показывать кабинет.

  • Redirect URL разрешён в Supabase Auth settings.
  • Email link открывается на production-домене.
  • Кабинет видит владельца.

Проверить privacy модель

Расклад должен принадлежать пользователю или безопасной ссылке. Чужой пользователь не должен открыть чужой архив.

  • RLS и server checks соответствуют модели доступа.
  • Share-safe не раскрывает личный вопрос.
  • Удаление данных оставляет понятный итог.

checklist

Что проверить

  • Production Supabase URL и anon key заданы.
  • Service role key только на сервере.
  • RATE_LIMIT_STORE=supabase при production.
  • Auth callback работает на /auth/callback.

красные флаги

Когда остановиться

  • Кабинет пуст после создания оплаченного расклада под тем же email.
  • Recovery письмо приходит, но ссылка не открывает результат.
  • Rate limit падает в memory fallback без причины.

готово, когда

Definition of done

  • Новый пользователь входит по email.
  • Новый расклад привязывается к аккаунту.
  • Recovery открывает путь к архиву.

связанные двери