# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

ПОНИЖЕНИЕ БАХА - СБРОС ВЕРСИИ
======================================

Сбрасывает BACH к предыдущей версии. Использует исторические
Версии из dist_file_versions (SQ020).


USE
----------

  # Показать доступные версии файла
  bach downgrade list <datei-pfad>

  # Вернуть отдельный файл к версии
  bach downgrade <datei-pfad> --version <version>

  # Сброс всей системы до версии
  bach downgrade --release <release-id>

  # Пробный запуск (только просмотр, не запускать)
  bach downgrade --dry-run <datei-pfad> --version <version>


ВЕРСИИ
---------

Номера версий: v1, v2, v3, ...
  - На основе хеша (SHA256 автоматически обнаруживает изменения)
  - Автоинкремент обеспечивает удобочитаемый порядок 


ВАЖНО
-------

- Понижение версии работает ТОЛЬКО для файлов CORE + TEMPLATE.
- Старые версии хранятся в dist_file_versions.
- USER_DATA не имеет версии (принадлежит пользователю)
- Перед переходом на более раннюю версию рекомендуется выполнить резервное копирование


ПРИМЕРЫ
---------

  # Просмотр версий bach.py
  bach downgrade list system/bach.py

  # сбросим bach.py ​​до версии 3
  bach downgrade system/bach.py --version v3

  # Проверьте, какие файлы будут изменены 
  bach downgrade --dry-run --release r2


В СОВМЕСТЕ С ОБНОВЛЕНИЕМ
-----------------------

Обновление и понижение версии работают вместе:
  - Обновление автоматически сохраняет старую версию
  - При переходе на более раннюю версию используются сохраненные версии.
  - Двунаправленная система (вперед + назад)


СМОТРИ ТАКЖЕ
----------

  bach --help upgrade       Обновление до более новой версии
  bach --help restore       Восстановление шаблона
  bach --help seal          Проверка целостности
