Files
minecraft-lab/docs/phase1-results.md
T
2026-10-04 00:30:09 +07:00

52 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Phase 1: каркас проекта
Phase 1 завершена для рабочей основы NeoForge 21.1.252 / Minecraft 1.21.1.
## Каркас
- `platform/config.yaml`: schema version, pack/output paths, server defaults,
будущий SSH deployment target. Host/directory не заданы.
- `platform/schemas/`: место для будущей схемы вместе с parser в Phase 2.
- `pack/`: проверенный packwiz source без изменения версий и состава модов.
- `server/`: Compose, `.env.example`, явно подключаемый override template.
- `scripts/`: минимальные spike-инструменты; основного CLI пока нет.
- `docs/`, `examples/`, `testdata/`: результаты и материалы воспроизведения.
- `dist/`, `runtime/`: только `.gitkeep` включается в source.
`server.properties` генерируется из Compose environment, поэтому отдельный
source-файл не создан. Дополнительные pack-директории создаются по мере
появления контента; пустые файлы не добавляются в экспорт. Makefile и команды
deploy/backup/rollback появятся в соответствующих фазах, без пустых заглушек.
Platform manifest пока не читается spike-скриптами. Текущий runtime использует
env-файлы; подключение manifest и validation относятся к Phase 2.
## Проверка на чистом clone
Из неигнорируемых файлов рабочего дерева создан временный Git snapshot в
`.tools/phase1-check.0Od3T1/source`, затем выполнен локальный `git clone` в
соседний `clone/`. Основной репозиторий не коммитился и не менял index.
В clone отсутствовали прежние `.tools/`, runtime state, backups и `.env`.
Пройдены:
1. `scripts/spike-tools.sh`: новые downloads packwiz и Compose;
архив/бинарники совпали с закреплёнными SHA256, Compose v5.6.0.
2. `packwiz refresh`: успешен, `git diff --exit-code -- pack` подтвердил
отсутствие изменений metadata после refresh/export/build.
3. `packwiz modrinth export`: успешен, ZIP содержит index и pack config.
4. `scripts/spike-server.sh config --quiet`: основной Compose валиден.
5. То же с `-f server/compose.override.yaml.example`: слой overrides валиден.
6. `scripts/spike-build.sh`: экспорт в новый `dist/` с SHA256SUMS успешен.
7. Bash syntax и `git diff --check`: успешны.
8. `git check-ignore`: runtime, dist, tools, backups, локальные `.env` и
активный override игнорируются; `.env.example` не игнорируется.
Проверка Compose не запускала сервер; активный мир и артефакт не изменены.
Точный порядок работы для нового checkout описан в корневом README.
Bootstrap использует закреплённый GitHub Actions artifact packwiz; такие
артефакты имеют ограниченный срок хранения. Для долгосрочного bootstrap
потребуется постоянное хранение проверенного бинарника либо сборка
закреплённого commit. Текущий URL проверен свежим скачиванием.