33 lines
2.9 KiB
Markdown
33 lines
2.9 KiB
Markdown
# Phase 8 — завершена
|
|
|
|
Проверено 4 октября 2026 (Asia/Novosibirsk): rollback по SSH без повторного build.
|
|
Оба режима автоматизированы; команды и условия описаны в [rollback.md](rollback.md).
|
|
|
|
На изолированном SSH/Docker-стенде восстановлен snapshot Phase 7, применён
|
|
чистый release 0.0.5, затем выполнен pack-only rollback на retained 0.0.4.
|
|
Маркеры мира и состояния модов сохранили текущий прогресс. Следующий snapshot
|
|
rollback восстановил исходные маркеры, убрал появившийся позже файл из активного
|
|
runtime и сохранил его вместе с текущим прогрессом в retired runtime.
|
|
|
|
Для обеих операций проверены backup текущего состояния, успешный health,
|
|
сохранение `.env` и публикации `0.0.0.0:25566`, правильные pointers и освобождение
|
|
общей блокировки. Просмотр планов сохранил список файлов root, ID контейнера и
|
|
время его запуска. Финальный Minecraft status query прошёл. Контейнер стенда удалён.
|
|
|
|
68 unit tests прошли: CLI подтверждения, readonly plan, corrupt snapshot до stop,
|
|
ошибка current backup, startup failure без автоматического возврата, snapshot
|
|
recovery после failed deploy по фактическому binding, lock и безопасные ID.
|
|
Старый immutable Compose проверен настоящим pinned Compose без зависимости от dist.
|
|
Обнаруженные права `700` у опубликованного release исправлены на `755`, чтобы
|
|
контейнер UID 1000 мог читать bind-mounted `.mrpack`; добавлена регрессионная проверка.
|
|
|
|
Доказательства: `.tools/phase8-check.Hgc1oL/evidence/`,
|
|
`.tools/phase8-unit-tests.log`, `.tools/phase8-integration.log`.
|
|
Рабочий host не откатывался: прямой query `192.168.1.61:25565` прошёл;
|
|
результат `.tools/phase8-target-evidence/direct-status.json`.
|
|
|
|
Ограничения: world compatibility подтверждает оператор; аварийное завершение
|
|
между обновлениями двух pointer files требует сверки state/binding. Незавершённый
|
|
rollback требует документированного ручного recovery. Retired runtime и backups
|
|
сохраняются без автоматической очистки. Forge остаётся непроверенной веткой.
|