docs: recommend web-split before domain-admin and inbound-relay
Document the preferred implementation order in the roadmap and linked plans. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -2,7 +2,9 @@
|
||||
|
||||
**Статус:** согласовано
|
||||
**Версия:** целевой bump **1.x** MINOR при совместимой миграции текущего админа
|
||||
в глобального.
|
||||
в глобального.
|
||||
**Порядок:** рекомендуется после [web-split](web-split.md), до
|
||||
[inbound-relay](inbound-relay.md).
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -3,7 +3,9 @@
|
||||
**Статус:** согласовано
|
||||
**Версия:** целевой bump **1.x** MINOR; **возможен 2.x** — требует уточнения по
|
||||
итогам реализации (не фиксировать major заранее).
|
||||
**Модель:** Opus (инфра/безопасность, риск open relay).
|
||||
**Модель:** Opus (инфра/безопасность, риск open relay).
|
||||
**Порядок:** рекомендуется после [web-split](web-split.md) и
|
||||
[domain-admin](domain-admin.md).
|
||||
|
||||
---
|
||||
|
||||
|
||||
+14
-1
@@ -22,11 +22,24 @@ static), ~25 `.go` / ~4000 строк Go, в одной плоскости ле
|
||||
разбиение потянуло бы за собой экспорт того, что сейчас пакетно-приватно, — то
|
||||
есть расширение внутреннего API ради косметики.
|
||||
|
||||
Смысл появляется, когда пакет начнёт расти: **inbound-relay** и **domain-admin**
|
||||
Смысл появляется, когда пакет начнёт расти: **domain-admin** и **inbound-relay**
|
||||
добавляют в него код — роль приносит авторизацию в каждый хендлер, входящий
|
||||
релей — отдельные страницы и хендлеры входящих доменов. Рефакторинг дешевле
|
||||
делать перед этим ростом, чем после.
|
||||
|
||||
## Рекомендуемый порядок
|
||||
|
||||
**web-split → domain-admin → inbound-relay** (см. [roadmap](../roadmap.md)).
|
||||
|
||||
1. **web-split** — заложить структуру пакета (в т.ч. место под `web/auth`), пока
|
||||
нет сквозных правок от роли и новых inbound-хендлеров.
|
||||
2. **domain-admin** — авторизация в каждом хендлере опирается на уже выбранную
|
||||
схему пакета.
|
||||
3. **inbound-relay** — новый вертикальный срез; проще добавить в уже разрезанный
|
||||
пакет, чем рефакторить вместе с двумя предыдущими фичами.
|
||||
|
||||
Порядок рекомендация, не блокер.
|
||||
|
||||
## Готово, когда
|
||||
|
||||
Решение принято осознанно в момент старта работ — либо пакет разрезан по
|
||||
|
||||
+16
-8
@@ -17,13 +17,17 @@
|
||||
|
||||
| ID | Тема | Статус | План |
|
||||
|---|---|---|---|
|
||||
| inbound-relay | Входящий релей (backup-MX / пересылка) | **согласовано** | [plans/inbound-relay.md](plans/inbound-relay.md) |
|
||||
| domain-admin | Роль администратора домена | **согласовано** | [plans/domain-admin.md](plans/domain-admin.md) |
|
||||
| web-split | Разбиение `internal/web` | **согласовано** | [plans/web-split.md](plans/web-split.md) |
|
||||
| domain-admin | Роль администратора домена | **согласовано** | [plans/domain-admin.md](plans/domain-admin.md) |
|
||||
| inbound-relay | Входящий релей (backup-MX / пересылка) | **согласовано** | [plans/inbound-relay.md](plans/inbound-relay.md) |
|
||||
| contributing | `CONTRIBUTING.md` | кандидат | — |
|
||||
|
||||
Жёсткого порядка реализации нет. После `/clear` — пункт со статусом
|
||||
`согласовано` или `в работе`, затем чеклист в linked plan.
|
||||
**Рекомендуемый порядок** (не обязателен): **web-split → domain-admin →
|
||||
inbound-relay** — сначала разрез пакета, затем сквозная авторизация роли, затем
|
||||
новый вертикальный срез входящего релея. Отклонение допустимо; жёстких фаз нет.
|
||||
|
||||
После `/clear` — пункт со статусом `согласовано` или `в работе`, затем чеклист в
|
||||
linked plan.
|
||||
|
||||
---
|
||||
|
||||
@@ -41,6 +45,8 @@
|
||||
|
||||
**Зависимости / риски:** готовый исходящий тракт; open relay/backscatter;
|
||||
расширение поверхности атаки (порт 25 на приём). Модель: Opus.
|
||||
**Порядок:** рекомендуется после [web-split](plans/web-split.md) и
|
||||
[domain-admin](plans/domain-admin.md).
|
||||
**Версия:** целевой bump `1.x`; возможен `2.x` — уточнить по итогам реализации.
|
||||
|
||||
---
|
||||
@@ -58,8 +64,9 @@
|
||||
**Готово, когда:** см. [plans/domain-admin.md](plans/domain-admin.md).
|
||||
|
||||
**Зависимости / риски:** таблица пользователей, роль в сессии, авторизация в
|
||||
каждом хендлере, setup/бэкап. **Версия:** `1.x` MINOR при совместимой миграции
|
||||
текущего админа в глобального.
|
||||
каждом хендлере, setup/бэкап. **Порядок:** рекомендуется после
|
||||
[web-split](plans/web-split.md), до [inbound-relay](plans/inbound-relay.md).
|
||||
**Версия:** `1.x` MINOR при совместимой миграции текущего админа в глобального.
|
||||
|
||||
---
|
||||
|
||||
@@ -73,8 +80,9 @@
|
||||
**Готово, когда:** пакет разрезан по выбранной схеме или зафиксировано, что
|
||||
остаётся плоским — см. [plans/web-split.md](plans/web-split.md).
|
||||
|
||||
**Зависимости / риски:** экспорт пакетно-приватного API. **Версия:** `1.x`, сам
|
||||
по себе breaking не тянет.
|
||||
**Зависимости / риски:** экспорт пакетно-приватного API. **Порядок:** рекомендуется
|
||||
**первым** среди согласованных фич (до domain-admin и inbound-relay).
|
||||
**Версия:** `1.x`, сам по себе breaking не тянет.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user