2a9f9925cc
- enforcement: прокси даёт грубую изоляцию (сервис/метод), тонкую (per-signal, per-key) делает сам сервис по идентичности sender — прокси не видит payload - PermBroker: идентичность только из соединения, CheckCapability(cap) sender-scoped (не принимает app аргументом → нет спуфинга); GrantChanged адресный - НОВЫЙ сервис ru.shturman.Location (домен K) — GPS/положение; GPS-скорость не через E - ошибки Stale/Timeout (транзиентно) vs NotAvailable (постоянно); GetSignal с таймаутом - desired_max_hz = агрегатный hint (не per-subscriber троттл); подписки owner-bound, авто-снятие по NameOwnerChanged; quality-поле; BatteryVoltage→ModuleVoltage - RegisterIntents(handler_path) — фразы из манифеста; версии-мажоры сосуществуют Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Контракты (Tier 1) — соединительная ткань
Сквозные интерфейсы, которыми домены связаны друг с другом. «Связи» проекта живут здесь. Каждый контракт — отдельный документ; создаём по мере наполнения.
Статус: индекс. Документы наполняем после фундамента (architecture + principles).
| Документ | Назначение |
|---|---|
ipc.md |
D-Bus сервисы, интерфейсы, схемы сообщений: кто что публикует/слушает. |
data-model.md |
VSS-подобная таксономия сигналов машины + общие типы данных. |
plugin-sdk.md |
API расширения: манифест, capability-модель, точки расширения (экраны, тайлы, интенты, доступ к данным). Рантайм плагинов — домен F. |
security-privacy.md |
Sandboxing плагинов, модель разрешений, обработка данных, 152-ФЗ. |
hardware.md |
Целевой таргет (RK3588), топология питания, периферия + HAL/board-support API для портирования на другое железо/авто. |
Важный нюанс: plugin-SDK (API, тут) и домен F «Plugin host» (рантайм, sandbox, дистрибуция — в domains/) — разные вещи, ссылаются друг на друга.