- Next 16.4 и Payload 3.91 в одном приложении, PostgreSQL с UUID, TypeScript 6, ESLint 9, Prettier, Vitest - Payload: администраторы с ролями, multi-tenant по сайтам, локализация en/ru/de/fr/es, интерфейс админки ru/en, языки сайта (sites.locales) - Коллекции sites, domains, currencies, countries, locations, tags, tariffs, payment-systems (manual), media и начальные данные (pnpm seed) - Proxy: хост → домен, язык и валюта, внутренние маршруты по хосту; /admin и /api закрыты на доменах брендов - Токены и темы брендов, оболочки сайта и кабинета, переключатели языка, валюты и темы, заглушки страниц - /svc/health, юнит systemd veilix-dev.service - Документация: решения D-022…D-024, команды в CLAUDE.md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
7.9 KiB
7.9 KiB
00. Карта документации
1. Документы
| Файл | О чём |
|---|---|
| 01-product.md | Бренды, домены, продукты, тарифы, бизнес-правила |
| 02-architecture.md | Стек, одно приложение на все домены, процессы, окружения, выкладка |
| 03-data-model.md | Коллекции Payload, поля, связи, статусы |
| 04-billing.md | Счёт, заказы, платежи, продления, возвраты, ручные операции, рефералы |
| 05-auth.md | Вход по коду, сессии, капча, Telegram, объединение аккаунтов, админка |
| 06-i18n.md | Языки, URL, определение языка, валютный переключатель, переводы |
| 07-frontend.md | Макеты, маршруты, токены, темы, производительность |
| 08-integrations.md | Почта, ALTCHA, MaxMind, Chatwoot, Twenty, Telegram, платёжные системы, Umami |
| 09-infrastructure.md | Сервер, nginx, systemd, PostgreSQL, DNS, бэкапы, задачи для root |
| 10-security.md | Безопасность и приватность |
| decisions/ | Принятые решения: по файлу на решение |
| stages/ | Этапы: цель, границы, предусловия, шаги, критерии готовности |
Исходная постановка — history/HUMAN_IDEA.md (копия файла пользователя). Это история, а не источник истины: всё актуальное — в этих документах.
2. Этапы
| Этап | Содержание | Статус |
|---|---|---|
| 0 | Документация | готово |
| 1a | Фундамент: Next + Payload, сайты, домены, языки, валюты, темы | готово |
| 1b | Маркетинговые страницы обоих брендов, контент, формы с ALTCHA, SEO, юр. тексты | не начат |
| 1c | Вход по коду, почта, сессии | не начат |
| 1d | Биллинг без эквайринга, оформление заказа, продления | не начат |
| 1e | Ключи и подключения, ручная выдача | не начат |
| 1f | Веб-кабинеты обоих брендов | не начат |
| 1g | Реферальная программа | не начат |
| 1h | Переводы, Umami и баннер cookies, PageSpeed, выкладка в prod | не начат |
| 2 | Chatwoot и Twenty CRM | не начат |
| 3 | Telegram: боты, MiniApp, вход и привязка | не начат |
| 4 | Платёжные системы: Stripe, RUB-процессинг, крипта | не начат |
| 5 | Автоматизация выдачи ключей | обсуждение при старте |
3. Как запускать этап в новой сессии
- Открыть сессию Claude под пользователем vx_dev в
/home/vx_dev/veilix_dev. - Написать: «Этап 1a. Прочитай CLAUDE.md и docs/stages/stage-1a-foundation.md, сверим план».
- Claude сверяет план и открытые вопросы этапа, вы подтверждаете, дальше — работа.
- В конце Claude обновляет статус этапа в этой таблице и документацию.
4. Открытые вопросы
4.1 Решённые
| № | Вопрос | Решение | Где отражено |
|---|---|---|---|
| Q-01 | Вторая валюта | USD | D-010 |
| Q-03 | Валюта по умолчанию для нового посетителя | По языку: ru → RUB, остальные → USD; настраивается у домена | 06-i18n.md, раздел 6 |
| Q-04 | Валюта аккаунта | Задаётся при регистрации из выбранной; меняется, пока баланс нулевой и нет ключей; дальше — через поддержку | 04-billing.md, раздел 2 |
| Q-05 | WG-конфиги mass на этапе 1 | Конфиги, добавленные администратором, по странам; другая страна — через поддержку; автоматически — этап 5 | D-020 |
| Q-06 | Где Umami | На этом сервере, без Docker, под пользователем umami; панель — umi.veilix.cc |
D-018 |
| Q-07 | Как запускать сервисы | Каждый под своим пользователем ОС: vx_dev (dev), vx_prod (prod), umami; systemd user-юниты | D-004 |
| Q-15 | Защита prod от сессий Claude | Отдельно не нужна: сессии Claude работают под vx_dev без доступа к prod, а под vx_prod нет ни редактора, ни ИИ-агентов | D-004 |
4.2 Открытые
Предложение по умолчанию действует, пока не решено иначе.
| № | Вопрос | Предложение | Нужно к этапу |
|---|---|---|---|
| Q-02 | Цены mass в USD, суммы пополнения и реферального бонуса в USD для обоих брендов | Нужны цифры. Пока в seed временные $6.99 и $69.90 (около $1 за 100 ₽, как у dedicated в макете) | 1b |
| Q-08 | Email поддержки брендов | help@veilix.app и help@veilixvpn.com (в макете были домены .cc) |
1b |
| Q-09 | Часовой пояс часов поддержки (10–20 в рабочие дни) | МСК | 1b |
| Q-10 | Имена Telegram-ботов: 2 основных, 2 поддержки, тестовые | — | 3 |
| Q-11 | Оплата в Telegram: Stars, внешняя страница или только с баланса | — | 3 |
| Q-12 | RUB-процессинг (KZ, TR) и криптопроцессинг: какие провайдеры | — | 4 |
| Q-13 | Юрлицо для юридических текстов | Пока заглушки | 1h |
| Q-14 | Куда складывать бэкапы prod-базы | — | 1h |
| Q-16 | Где принимать почту поддержки (help@…): свой почтовый хостинг или пересылка в Chatwoot |
— | 1b |
| Q-17 | Нужны ли разные аккаунты одного провайдера для разных брендов | Пока нет. Если понадобятся — платёжной системе добавим поле «только для сайтов» | 4 |
| Q-18 | Кто запускает выкладку в prod | Пользователь одной командой; по желанию — sudo-правило, разрешающее vx_dev запускать только команду выкладки от имени vx_prod | 1h |