Files
veilix.app/docs/decisions/README.md
T
andreypr207andClaude Opus 5.5 515acfb69d Документация: этапы по фазам, решения D-026…D-033
- Новый порядок этапов (D-026): фаза 1 — концепт на dev без внешних
  сервисов (1b сайт, 1c вход, 1d ключи, 1e счёт и демо-оплата,
  1f демо-выдача, 1g продления, 1h рефералы); фаза 2 — Telegram;
  фаза 3 — ALTCHA, ЮKassa, почта, Twenty, Chatwoot, Umami, выдача
  через API и публичный запуск; фаза 4 — звёзды и эквайринги.
- Решения: демо-оплата по списку IP (D-027), выдача ключей через
  адаптер manual/demo/api (D-028), страницы сайта из блоков Payload
  (D-029), пересборка через revalidatePath (D-030), RU-адрес у mass
  (D-031), счётчик свободных серверов (D-032), переводы на 5 языков
  в каждом этапе (D-033).
- Тексты описывают работающий продукт; Вейликс — выделенный IP на
  общем сервере; Telegram поддержки — @veilix_support; сроки ответа
  не обещаем; VPN-серверы не ведут журналов.
- Ссылки на этапы во всех документах, Q-12 решён (ЮKassa для RUB),
  R-19 (библиотеки для headless Chromium) сделано.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 03:48:10 +02:00

40 lines
4.8 KiB
Markdown

# Решения
По файлу на решение. Формат: контекст, решение, рассмотренные варианты, последствия. Новое решение — новый файл со следующим номером. Пересмотр — новый файл со ссылкой на старый, у старого статус «заменено».
| № | Решение | Статус |
|---|---|---|
| [D-001](D-001-single-app.md) | Одно Next.js-приложение на все домены | принято |
| [D-002](D-002-payload-version.md) | Payload 3, переход на 4 после стабильного релиза | принято |
| [D-003](D-003-hosting.md) | Без Docker: всё на хосте, процессы под systemd | принято |
| [D-004](D-004-environments.md) | Dev и prod на одном сервере под разными пользователями | принято |
| [D-005](D-005-multitenancy.md) | Сайты — тенанты, домены в базе, маршрутизация по Host | принято, уточнено в D-022 |
| [D-006](D-006-localization.md) | Переводы: поля Payload и next-intl; 5 языков | принято, уточнено в D-023 и D-029 |
| [D-007](D-007-language-detection.md) | Определение языка; MaxMind через nginx | принято, уточнено в D-024 |
| [D-008](D-008-uuid.md) | UUID и случайные публичные коды | принято |
| [D-009](D-009-billing-model.md) | Заказы, платежи, движения по счёту; всё через баланс | принято |
| [D-010](D-010-currencies.md) | Валюты и платёжные системы — сущности; платёжные системы привязаны к валютам | принято |
| [D-011](D-011-accounts.md) | Раздельные аккаунты по сайтам | принято |
| [D-012](D-012-auth.md) | Вход по коду через свою стратегию Payload; оформление заказа на my.* | принято |
| [D-013](D-013-captcha.md) | Капча ALTCHA | принято |
| [D-014](D-014-email.md) | Почта: шаблоны в Payload, переключаемый транспорт, без listmonk | принято |
| [D-015](D-015-telegram-bots.md) | Боты на grammY без n8n; два бота на бренд | принято |
| [D-016](D-016-payments.md) | Платёжные системы по валютам; автосписания — Stripe | принято |
| [D-017](D-017-static-pages.md) | Статические маркетинговые страницы с пересборкой по событию | принято, уточнено в D-030 |
| [D-018](D-018-analytics.md) | Umami на этом сервере и баннер cookies | принято |
| [D-019](D-019-external-services.md) | Chatwoot и Twenty CRM на отдельном VPS | принято |
| [D-020](D-020-key-models.md) | Модели ключей dedicated и mass | принято, уточнено в D-028 и D-031 |
| [D-021](D-021-admin-host.md) | Админка на plc.veilix.cc с доступом по IP | принято |
| [D-022](D-022-proxy-routing.md) | Proxy: внутренние маршруты по хосту, домены из внутреннего эндпоинта | принято |
| [D-023](D-023-site-locales.md) | Языки сайта — поле `sites.locales`, домены показывают их часть | принято |
| [D-024](D-024-locale-redirect.md) | Перенаправление на выбранный язык | принято |
| [D-025](D-025-referral-days.md) | Реферальный бонус — дни срока ключа, а не деньги | принято |
| [D-026](D-026-stage-order.md) | Порядок этапов: сначала концепт на dev с демо-режимами | принято |
| [D-027](D-027-demo-payments.md) | Платёжная система «Демо» | принято |
| [D-028](D-028-provisioning-adapter.md) | Выдача ключей через адаптер: ручная, демо, API | принято |
| [D-029](D-029-pages-blocks.md) | Контент страниц сайта — в Payload, страницы из блоков | принято |
| [D-030](D-030-revalidate-path.md) | Пересборка маркетинговых страниц через `revalidatePath` | принято |
| [D-031](D-031-mass-ru-address.md) | RU-адрес в ключах mass | принято |
| [D-032](D-032-free-servers.md) | Счётчик свободных серверов на сайте | принято |
| [D-033](D-033-translations.md) | Переводы на 5 языков в каждом этапе | принято |