# Portabilität: UNIVERSAL
# Version: 1.0.0
# Zuletzt validiert: 2026-02-21 (SQ063)
# Nächste Prüfung: 2026-08-21

BACH DOWNGRADE - VERSION ZURÜCKSETZEN
======================================

Setzt BACH auf eine frühere Version zurück. Verwendet historische
Versionen aus dist_file_versions (SQ020).


VERWENDUNG
----------

  # Verfügbare Versionen einer Datei anzeigen
  bach downgrade list <datei-pfad>

  # Einzelne Datei auf Version zurücksetzen
  bach downgrade <datei-pfad> --version <version>

  # Gesamtes System auf Release zurücksetzen
  bach downgrade --release <release-id>

  # Dry-Run (nur anzeigen, nicht ausführen)
  bach downgrade --dry-run <datei-pfad> --version <version>


VERSIONEN
---------

Versionsnummern: v1, v2, v3, ...
  - Hash-basiert (SHA256 erkennt Änderungen automatisch)
  - Auto-Increment gibt menschenlesbare Reihenfolge


WICHTIG
-------

- Downgrade funktioniert NUR für CORE + TEMPLATE Dateien
- Alte Versionen werden in dist_file_versions gespeichert
- USER_DATA hat keine Versionierung (gehört dem User)
- Backup wird empfohlen vor Downgrade


BEISPIELE
---------

  # Versionen von bach.py anzeigen
  bach downgrade list system/bach.py

  # bach.py auf Version 3 zurücksetzen
  bach downgrade system/bach.py --version v3

  # Prüfen welche Dateien geändert würden
  bach downgrade --dry-run --release r2


KOMBINIERT MIT UPGRADE
-----------------------

Upgrade und Downgrade arbeiten zusammen:
  - Upgrade speichert alte Version automatisch
  - Downgrade greift auf gespeicherte Versionen zurück
  - Bidirektionales System (vor + zurück)


SIEHE AUCH
----------

  bach --help upgrade       Upgrade auf neuere Version
  bach --help restore       Template-Wiederherstellung
  bach --help seal          Integritätsprüfung
