Заложить репозиторий: философия, архитектура, модель угроз, ADR
Документы фиксируют принятые проектные решения Bare: клиент без фреймворков и сборки, Go-сервер одним бинарём, E2EE на WebCrypto, сервер-реле без истории, локальная история с экспортом/импортом, Web Push + VAPID. Кода нет — сначала документы. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SW4ZXtKn5NjX8NH3Lhm2ND
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
# ADR-004: Realtime через SSE и fetch POST
|
||||
|
||||
## Контекст
|
||||
|
||||
Чату нужна доставка сообщений в реальном времени. WebSocket — отдельный протокол со своим жизненным циклом, капризами прокси и кастомным фреймингом. Хочется остаться в рамках голого HTTP.
|
||||
|
||||
## Решение
|
||||
|
||||
Приём сообщений — Server-Sent Events. Отправка — обычный `fetch POST`. Чат поверх голого HTTP.
|
||||
|
||||
## Следствия
|
||||
|
||||
- Никакого кастомного протокола: всё видно в DevTools как обычные HTTP-запросы, реконнект SSE встроен в браузер.
|
||||
- Работает везде, где работает HTTPS, без апгрейда соединения.
|
||||
- Двунаправленного канала нет — он и не нужен: у отправки и приёма разные пути.
|
||||
Reference in New Issue
Block a user