kk0t9 4fe5103e88 docs(v0.3): спека power-safe ядра (FSM + graceful shutdown)
Веха v0.3: стаб Power → реальный lifecycle-FSM. Состояния off/accessory/running/
shutting_down{abortable,committed} (sleep/battery_cutoff — каркас); graceful
shutdown (ShutdownImminent→grace→durable-barrier sync→commit=PONR=unmount); abort
до PONR (re-power→ShutdownAborted). dev-mock кормит входы FSM. Watchdog/save-time/
монотоника. Подход A: FSM+сигналы, teardown через systemd/харнесс. Гибрид-E2E:
N=3 in-VM цикла + 1 reboot + abort + power-cut-сим. HW (hold-up/MCU/B08-B09) — v0.4.
Красные линии: Power не трогает CAN, без actuator (#2).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Alexander <akotenev2003@gmail.com>
2026-06-24 20:51:58 +03:00

Штурман

Open-source русскоязычный companion-слой («ОС поверх Linux») для авто на RK3588: быстрый Slint-UI + голосовой RU-ассистент, читающий OBD/CAN только на чтение, + расширяемый Plugin API. Лицензия MIT.

Статус: реализация v0 (фундамент — образ-болванка + dev-харнесс + первый Slint-кадр). Дизайн завершён, источник правды — docs/.

Красные линии (нерушимы)

  • Никогда не safety-critical — двигатель/тормоза/ABS/ESP/руль/подушки; в системе нет actuator-путей.
  • CAN только на чтение — стандартные OBD-II read (Mode 01/03/07/09/0A); запрещены write/actuator/Mode-04/UDS-write.

Документация

  • Точка входа: CLAUDE.md.
  • Дизайн (источник правды): docs/ — архитектура, контракты, домены.
  • План реализации: docs/roadmap.md; спеки вех — docs/specs/.

Быстрый старт (dev)

Разработка ведётся в ARM64 Lima-VM (нативно к таргету RK3588). Команды — через just:

just vm-up      # поднять dev-VM (Lima)        — появляется в Плане 5
just run        # boot → стаб-сервисы на D-Bus → первый Slint-кадр
just ci         # lint + test + deny (локальный гейт)

Сейчас доступно: just build / just test / just lint / just deny (сборка/тесты shturman-common на хосте). Lima-VM и сквозной run/e2e — по мере планов реализации.

Лицензия и контрибьютинг

MIT — см. LICENSE. Контрибьюции — по DCO (git commit -s), см. CONTRIBUTING.md.

Примечание о UI-тулките: Slint для embedded доступен бесплатно под GPL-3.0 → шипимый UI-бинарь прод-образа (v4) будет под GPL-3.0; решение по тулкиту/лицензии осознанно отложено к v4 (см. docs/specs/). Ядро и остальной код — MIT.

S
Description
No description provided
Readme MIT 578 KiB
Languages
Rust 76.1%
Shell 19.6%
Just 4.3%