Files
shturman/docs/domains
kk0t9 02f13db1f3 docs(domain D): v2 — ретро-ревью pass-2 (9 находок) + кросс-док
- AEC (эхоподавление, loopback-ref из PipeWire) добавлен в пайплайн — нужен для
  wake-word во время воспроизведения и barge-in (был полностью пропущен)
- auto-fallback: v1 = online degradation UX, офлайн-фолбэк (llama.cpp) = v3 (раньше
  фолбэкать в v1 было некуда); offline-first (#3) в v1 частично, полный — v3
- инференс: ONNX (Silero) + Vosk через нативный Kaldi (не «всё через ONNX»)
- vehicle-context: контракт инъектора — только quality=valid, гейт по состоянию машины,
  ассистент декларирует vehicle_read через прокси; деградация на простых авто
- wake-word по состояниям питания (не безусловно always-on, риск разряда; Stage 2; гейт Power/B)
- distraction: owner Shell §7, скорость K(GPS v1)/E(OBD v2); журнал wake-word/mic
- кросс-док: tech-stack (Porcupine отвергнут), principles #3 (фазировка офлайн-диалога)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 01:25:11 +03:00
..

Домены (Tier 2)

Детальные спеки подсистем. Каждый домен — отдельный документ по единому шаблону (ниже). Файлы создаём по мере наполнения; здесь — карта и план.

Статус: индекс + шаблон. Содержательные файлы доменов появляются по ходу работы.

Единый шаблон домена

  1. Назначение и границы — что делает, чего НЕ делает.
  2. Функции — таблица: функция | MVP / later | зависит от | фаза.
  3. Данные и интерфейсы — что домен публикует/потребляет на шине (ссылки на ../contracts/).
  4. Зависимости — ссылки на другие домены и контракты (← здесь «связи»).
  5. Открытые вопросы / решения.

Карта доменов

# Домен Файл Кратко
A Базовая система / OS a-base-system.md образ, read-only rootfs, boot, watchdog, OTA, board support
B Питание и жизненный цикл b-power-lifecycle.md ACC, graceful shutdown, sleep, защита eMMC
C Shell / UX / лаунчер c-shell-ux.md тайлы, темы день/ночь, профили, driver-distraction, ввод с мультируля, мультидисплей
D Голосовой ассистент d-assistant.md wake→STT→LLM→TTS, vehicle-context, память о водителе (.md), офлайн-фолбэк, провайдер-агностик
E Vehicle Data (OBD/CAN, read-only) e-vehicle-data.md PIDs, DTC + расшифровка, поездки, расход, VSS-модель
F Plugin host & экосистема f-plugin-host.md загрузка/sandbox/lifecycle плагинов, дистрибуция, dev-tools (API — в ../contracts/plugin-sdk.md)
G Связь / телефон g-connectivity-phone.md BT HFP, модем/LTE, WiFi/hotspot, проекция телефона
H Медиа / аудио h-media-audio.md вся стандартная мультимедиа: локальное аудио, BT A2DP/AVRCP, радио, стриминг
I Навигация i-navigation.md офлайн-карты OSM, роутинг, POI, связка с ассистентом
J Камеры / видео j-cameras-video.md задняя камера, парктроник-оверлей, dashcam
K Датчики / периферия k-sensors-peripherals.md GPS, IMU, кнопки руля (чтение), TPMS, климат-дисплей (чтение)
L Облако / компаньон l-cloud-companion.md мобильное приложение, синхронизация, бэкап, OTA-канал, телеметрия (opt-in)

Порядок наполнения определим в roadmap.md; технически — после контрактов.

Заделы (сиды для будущих доменов)

Идеи на будущее, пойманные по ходу проектирования; раскрываются при наполнении домена.

  • J (Камеры). Камеры — динамический набор 0..N источников видео, не одна задняя. Задел: подключение доп. камер — фронтальная для видеорегистратора (dashcam), камеры кругового обзора (360°/surround) и т.п. Набор источников и «виды» (например surround-композит) — расширяемые, плагин может добавить источник/вид.
  • K (Датчики). Парктроники и подобные датчики ближнего действия — как источник данных (чтение с CAN через Vehicle-Data или отдельный датчик) для оверлеев/ предупреждений поверх видео-вида.
  • Архитектурная связь: видео-источники идут через data-plane (PipeWire/V4L2); задняя/парктроник-вид требуют низколатентного раннего пути (см. Решение №3 и lifecycle).