Полный чистый `just vm-reset && just e2e` (PRE→reboot→POST) впервые прогнан после
добавления power-safe-блока — вскрыл два латентных шва харнесса (FSM/сервис-код цел):
1. start-limit-hit: блок намеренно рестартит shturman-power N+ раз за <10s →
systemd StartLimitBurst (5/10s) → power в failed, имя ru.shturman.Power теряется,
блок abort не доезжает. Фикс: reset-failed перед намеренными рестартами (как при
реальном reboot); ждать active power, не только settings.
2. machine-id залипал на нижнем rootfs-значении: цикл/power-cut делает
`umount /etc/machine-id`, но `systemctl start shturman.target` НЕ пере-bind-ит —
shturman-machineid это oneshot RemainAfterExit (уже active) → ExecStart не
перезапускается. POST-чек стабильности machine-id (§9.3.4) падал после reboot.
Фикс: `systemctl restart shturman-machineid` после remount (форсит пере-bind).
E2E OK ✅ с нуля (vm-reset → PRE → reboot → POST); регресс v0.1/v0.2 цел.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Alexander <akotenev2003@gmail.com>
- machineid bind (/data/state/machine-id→/etc/machine-id) держит /data busy →
снимаем bind перед umount; remount через systemctl start (не mount /data — нет fstab).
- restart power/settings после install (повторный just run: иначе крутится старый
бинарь, start=no-op) + restart power в начале power-safe-блока (чистый FSM Running).
- §3 oneshot-чек: firstboot/machineid валидны в active|inactive (отработал ИЛИ корректно
пропущен Condition'ом на повторном boot); реальный сбой = failed.
- stage2.target тянет savetime.timer (WantedBy без enable не срабатывал).
Блок power-safe зелёный: N=3 цикла /data цел, abort→ShutdownAborted, power-cut fsck-clean.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Alexander <akotenev2003@gmail.com>
P6.4: just splash-frame; lima yaml ставит stage0/1/2.target + tmpfiles
(splash/warmup ловит glob *.service). run.sh: install splash-бинаря, раскладка
новых юнитов+tmpfiles, блок «Stage 0/1/2 разделены» (3 таргета reached, splash.png
до frame.png, stage2.ready после, systemd-analyze лог). Убран restart shell
(ломал бы порядок warmup-после-кадра — фазовый старт рендерит всё по порядку).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Alexander <akotenev2003@gmail.com>