docs: clean-install-only, versions.env и очистка предыдущего поколения
Новый docs/14-legacy-cleanup.md: как выглядит отказ установщика, полный список маркеров чужой установки, что сохранить перед очисткой, работа purge-v0.sh, ручная процедура и отдельно - случай незавершённой установки текущего поколения, где нужен repair, а не очистка. Обновлено под фактическое поведение: - README и package/docs: установка описана как две фазы, PHASE 0 ничего не меняет; добавлен troubleshooting по отказу clean-host; версии toolchain больше не передаются через окружение; - 02-build-layer: раздел про versions.env (что в нём есть и чего нет и почему), verify_versions_contract, проверка происхождения артефакта по upstream hashes.txt; - 08-orchestrator-spec: двухфазный контракт, read-only guard, идентификация поколения в install-state, ownership-aware rollback, расширенная семантическая проверка конфига, структурная редакция; - 04-admin-panel: таблица удалённых маршрутов и почему они удалены, а не оставлены заглушками; сужена формулировка гарантии санитайза; - 11-testing: новые unit-наборы, полный список инвариантов конфига, раздел про одну реализацию URI вместо двух, сценарий проверки границы установки на живом сервере; - 12-operations и 13-runbook: диагностика отказов по поколению, поведение diagnostics-бандла; - tools/build/README: контракт версий, обе суммы Bun, hashes.txt. CHANGELOG: раздел Unreleased с разбором каждого исправленного дефекта.
This commit is contained in:
@@ -23,3 +23,29 @@
|
||||
```
|
||||
|
||||
В baseline нет target-side JavaScript, TypeScript, frontend или Go build step.
|
||||
|
||||
## Установка выполняется в две фазы
|
||||
|
||||
```text
|
||||
PHASE 0 — READ ONLY
|
||||
проверка прав и checksums пакета
|
||||
clean-host preflight из распакованного архива
|
||||
↓ ноль изменений на сервере
|
||||
PHASE 1 — MUTATION
|
||||
установка orchestrator, раскладка runtime-пакета
|
||||
install
|
||||
```
|
||||
|
||||
HY2XS v1 **не устанавливается поверх** предыдущей установки и не мигрирует её
|
||||
состояние. Если PHASE 0 обнаружит старую установку, установщик завершится с
|
||||
ошибкой и **не изменит на сервере ничего**.
|
||||
|
||||
Проверить хост, ничего не устанавливая:
|
||||
|
||||
```sh
|
||||
./orchestrator/hy2xs-orchestrator preflight-install --package-dir "$(pwd)"
|
||||
```
|
||||
|
||||
Очистка предыдущей установки — отдельная явная операция оператора, она описана
|
||||
в `docs/14-legacy-cleanup.md` репозитория проекта и выполняется скриптом
|
||||
`tools/legacy/purge-v0.sh`. Установщик её никогда не запускает сам.
|
||||
|
||||
Reference in New Issue
Block a user