Files
shacraft-core/docs/VERIFICATION.md
T

4.1 KiB

Проверки первого этапа, 14 сентября 2026

Проверены библиотека хранения и CLI. Рубеж A из ACCEPTANCE.md целиком ещё не пройден: сервер/клиент/MCP отсутствуют. Результаты ниже не объявляют полный MVP готовым.

Автоматические проверки

Команда bash scripts/verify.sh завершилась с кодом 0. В полном журнале сохранены:

  • форматирование и Clippy --workspace --all-targets --locked -- -D warnings без ошибок;
  • 29 Rust-тестов (11 секционного формата, 8 публичных контрактов, 10 хранилища);
  • сборка CLI;
  • девять проверок отдельного процесса, включая принудительное завершение и восстановление.

В аварийном сценарии 80 правок были подтверждены процессом до SIGKILL и сохранились после повторного открытия. Повтор старой операции вернул её исходный результат без повторной правки. Большая операция на 32768 блоков, завершения которой вызывающий код не наблюдал, восстановилась целиком или отсутствовала целиком; безопасный повтор завершился на одной ревизии. Дополнительно SQL-тест принудительно вызывает отказ в середине изменения и проверяет откат данных, истории и ревизии.

Проверка работы и хранения

cargo build --release -p shacraft-tools --locked завершилась успешно. Результат demo подтверждает сценарий общей карты, двух экземпляров, изолированной правки, undo и reset.

Сырой результат benchmark получен командой:

target/release/shacraft-tools --data <пустой-временный-каталог> --cache 8 benchmark --sections 256 --worlds 100

После создания 100 экземпляров количество blobs осталось 256: карты разделяют неизменяемые данные. После обхода карты резидентный кэш остался в пределах восьми записей и зафиксировал вытеснения. Все экземпляры прошли независимую правку и сброс. RSS, размеры файлов и длительности сохранены в JSON вместе с версией Rust и системой.

Это один синтетический прогон на небольшом реестре из двух состояний, без сети, игроков и симуляции. Не использовать его для оценки готового сервера или сравнения с Paper. Байты закодированных секций не включают служебные структуры/аллокатор; RSS измеряется отдельно.

Ограничения доказательств

Подтверждена работа на Linux x86_64. Тесты завершения процесса не имитируют отключение питания или аппаратные сбои. Часть защиты от повреждений проверяется на намеренно изменённых временных SQLite-базах; реальные миры пользователя не затрагиваются. Интеграция с Minecraft, лаунчером и MCP относится к следующим этапам и пока не проверялась.