Files
elmprodvpn/docs/phase-e/E5_SINGBOX_PROTOCOL_MATRIX_TEMPLATE.md

43 lines
1.7 KiB
Markdown

# E5 SingBox Protocol Matrix Template
Дата: 2026-03-08
Статус: active template
Владелец: Engineering
## 1) Назначение
- Единый шаблон, по которому фиксируем поля протокола `sing-box` до реализации GUI.
- Используется для desktop сейчас и для web/iOS/Android позже.
## 2) Карточка протокола
- `Protocol`: `<vless|trojan|shadowsocks|wireguard|hysteria2|tuic|...>`
- `Mode`: `typed` / `raw` / `typed+raw`
- `Target sing-box`: `>=1.12`
- `Source docs`: ссылки на официальные страницы (`sing-box.sagernet.org`)
- `UI phase`: `MVP` / `Phase-2` / `Raw-only`
## 3) Матрица полей (шаблон)
| JSON path | Type | Required | Default | Since | Validation | UI level | Notes |
|---|---|---|---|---|---|---|---|
| `outbound.type` | enum/string | yes | `<protocol>` | - | fixed const | MVP | |
| `...` | | | | | | | |
## 4) Зависимости/guardrails (шаблон)
| Rule ID | Condition | Constraint | Error text |
|---|---|---|---|
| `R-001` | `...` | `...` | `...` |
## 5) Runtime/apply flow (шаблон)
- `Preview render` -> `Validate` -> `Apply` -> `History` -> `Rollback`.
- `Apply` только после `Validate ok=true`.
- Mutating операции через `base_revision` (optimistic lock).
## 6) Минимум для GUI
- Секция `Server/Auth` (endpoint + credentials).
- Секция `TLS/Reality` (если применимо).
- Секция `Transport` (если применимо).
- Секция `Advanced` (скрыта по умолчанию).
- `Raw JSON` всегда доступен как escape hatch.