docs(domain B): v2 после adversarial-ревью (22 находки) + кросс-док

Существенная переработка power-lifecycle:
- детект running по НАПРЯЖЕНИЮ бортсети (~14В генератор vs ~12.4В покой), не RPM (v2);
  Power.IgnitionState — единственный канон lifecycle-состояния
- триггер shutdown ≠ rate-of-change: ACC-off / under-voltage-held / thermal-trip;
  cold-crank до ~6В — НОРМА (ride-through), не индикатор обрыва
- SoC↔MCU shutdown-протокол специфицирован СЕЙЧАС: hold-up-таймер + heartbeat +
  safe-to-cut + fail-safe при потере линка (обе стороны); MCU — fail-safe-авторитет
- abort при re-power до PONR (ShutdownAborted); shutting-down разбит abortable/committed
- НОВОЕ: thermal shutdown (триггер/гистерезис/UX); ordered teardown (E закрывает ISO-TP);
  таблица MCU-vs-supercap; battery deep-discharge cutoff; монотонные часы для таймеров;
  первый boot без времени; периодическое сохранение времени
- watchdog по фазам (runtime + shutdown RebootWatchdogSec/MCU-дедлайн + boot-окно);
  v0=SoC+MCU+reboot, bootcount=v4
- фазы: MCU HW fail-safe-таймер = v0 (не v1); save-time = v0
- кросс-док: security-privacy (mic power-gated), ipc Power (enum/reason/ShutdownAborted),
  e/data-model (engine_running не дублирует IgnitionState), a-base §7 (периодич. save)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-21 01:53:57 +03:00
parent c66ccf08ea
commit 7a30ed7a7d
6 changed files with 231 additions and 11 deletions
+3 -2
View File
@@ -96,8 +96,9 @@ PID** (Mode 01, PID `0x00/0x20/0x40/…` — битовые маски подд
**оценка** из MAF (предполагает бензин/стехиометрию — помечаем как `estimate`,
зависит от типа топлива).
- **Пробег поездки / средний расход** (интеграл по времени; нужен trip-стейт).
- **Состояние машины** (`off` / `accessory` / `running`) — грубо из RPM/зажигания;
нужно ассистенту, чтобы отличать «двигатель заглушен» от «сигнал недоступен» от «ноль».
- **`engine_running`** (running/stopped/unknown, из RPM) — узкий дискриминатор «двигатель
заглушен» vs «сигнал недоступен». **Lifecycle-состояние** (off/accessory/running) — канонический
`Power.IgnitionState` (домен B), здесь не дублируется.
- Помечаются `source = computed`; зависят от наличия исходных сигналов.
## 6. Модель DTC (диагностические коды)