# Проверка аварийных остановок на разных этапах ## Кратко Нужно отдельно проверить, как сервер восстанавливается после внезапной остановки: 1. во время обычного `AddBlock` / `tmp_bch`-pipeline; 2. во время `full resync` цепочки; 3. во время startup recovery, если остановка произошла на предыдущем запуске; 4. при обычном апгрейде сервиса без явного crash-сценария. ## Что проверять 1. Остановка сервиса до `commit` БД. 2. Остановка сервиса после `commit`, но до замены `main.bch`. 3. Остановка сервиса во время `BlockchainResyncCleanupDAO`. 4. Остановка сервиса во время повторной загрузки цепочки по `GetBlockchainBlock`. 5. Поведение при обычном `systemctl restart`, когда сервер сам должен добить recovery. ## Ожидаемый результат - после старта сервер либо дочищает временные артефакты, либо завершает незаконченный `resync`; - не остаётся битых `.tmp_bch`, `.write_check`, `.write_pending`, `.resync_pending`; - БД и файлы цепочки остаются согласованными; - обычная работа сервера не стартует поверх незавершённого recovery. ## Статус `pending`