30 lines
2.4 KiB
Markdown
30 lines
2.4 KiB
Markdown
# Phase 9 — завершена
|
|
|
|
Проверено 4 октября 2026: `mcpack release VERSION` реализует workflow из §22 плана.
|
|
Требует clean Git worktree, проверяет SemVer без build metadata, отсутствие
|
|
release/tag и Git identity; обновляет только версию pack, выполняет candidate build,
|
|
коммитит версию, собирает полный release из чистого commit, проверяет SHA256SUMS
|
|
и provenance, создаёт annotated tag. Push, публикация и deploy не выполняются.
|
|
|
|
76 тестов прошли. Новые проверки покрывают успешный выпуск, грязное дерево,
|
|
занятые release/tag, некорректные аргументы/версии, lock, candidate export failure,
|
|
final build failure, отклонённый Git commit hook и сохранение concurrent source edit.
|
|
Общий build fixture выделен без изменения прежних проверок build.
|
|
|
|
`scripts/verify-phase9.sh` проверил настоящий pinned packwiz/Compose в отдельном
|
|
Git clone: обе сборки 0.0.6, чистый финальный manifest, полные checksums, отдельный
|
|
version commit только для `pack.toml`, annotated `v0.0.6` на manifest commit,
|
|
отказ повторного выпуска и удаление временного output/lock. HEAD и status
|
|
основного workspace до/после совпали.
|
|
|
|
Артефакт:
|
|
`.tools/phase9-check.FX8NZe/clone/dist/minecraft-lab-neoforge-spike-0.0.6/`.
|
|
Доказательства: `.tools/phase9-check.FX8NZe/evidence/`,
|
|
`.tools/phase9-unit-tests.log`, `.tools/phase9-integration.log`.
|
|
|
|
Основной workspace по-прежнему содержит uncommitted исходники; его выпуск
|
|
корректно заблокирован до обычного коммита проекта. Версия исходного pack остаётся
|
|
0.0.5, основной Git не получил release commit/tag, рабочий сервер не изменён.
|
|
Recovery и ограничения описаны в [releases.md](releases.md). Синхронизация
|
|
удалённых tags остаётся обязанностью оператора; автоматического push нет.
|