23 lines
2.8 KiB
Markdown
23 lines
2.8 KiB
Markdown
# Web-профиль
|
|
|
|
Применяются неизменённые clear specifications из `specs/`. Они охватывают Web/Desktop/Android, но данная основа реализует только Web. Матрица applicability в `planning/requirements.json` перечисляет каждый ID и причину исключения native-only требований; они не исчезают из оригиналов.
|
|
|
|
## Решения основы
|
|
|
|
- Один active account, несколько сохранённых configurations.
|
|
- Защищённый XMPP WebSocket WSS; native TCP/SRV options не изображаются рабочими browser controls.
|
|
- OMEMO на клиенте; backend не расшифровывает сообщения/файлы.
|
|
- Password только в памяти с повторным вводом по необходимости; persistent unlock crypto state — отдельный ADR и задача, не plaintext localStorage.
|
|
- Browser storage и quota отображаются честно; нет обещания hardware-backed vault.
|
|
- Browser notifications/push требуют permission/provider/gateway. Закрытая вкладка не является живым socket/media process.
|
|
- Нет автоматически работающего APNs/Android/tray/Watch пути.
|
|
- Framework, runtime versions, browser matrix и providers пока не приняты. Первые ADR выбирают их с первичными sources и runnable spikes.
|
|
- TypeScript — предпочтительный кандидат для типизированных contracts; окончательный язык/стек фиксирует S00-002. До этого scaffold не добавляет непроверенные dependency versions.
|
|
- Минимальный первый демонстрационный вертикальный срез не равен полной готовности. Release gate требует полного Web scope, encrypted send и interoperability evidence.
|
|
|
|
## Обязательные ограничения
|
|
|
|
Нельзя обходить отсутствующую crypto library через самодельный Double Ratchet, mock-success или server plaintext. Если кандидаты несовместимы, фиксируется blocker и реальный plan change. Документационный scope задачи не делает криптографическую проблему простой: small LLM должна выполнить bounded spike/test либо передать конкретный blocker специалисту.
|
|
|
|
Публичные URL/providers записываются в runtime config. Credentials/VAPID private key/TURN secrets хранятся отдельно и не попадают в committed evidence.
|