2.2 KiB
2.2 KiB
Changelog & Versionierung (verbindlich)
Diese Regel steuert, wann und wie CHANGELOG.md und VERSION zu pflegen sind.
Sie gilt fuer jede Code-/Config-/Doku-Aenderung in diesem Repo.
Single Source of Truth
VERSION(Repo-Root): genau eine Zeile,MAJOR.MINOR.PATCH(SemVer).CHANGELOG.md(Repo-Root): Format „Keep a Changelog". Oben steht immer ein Abschnitt## [Unreleased].- Die GitLab-Pages-Seite „Changelog" (
changelog.html) wird ausCHANGELOG.mderzeugt;src/site.pyzeigt dieVERSIONin der Navigation an. Beides wird beim Pages-Build automatisch aktuell – es ist also keine HTML-Datei von Hand zu pflegen, nurCHANGELOG.mdundVERSION.
Bei JEDER inhaltlichen Aenderung (vor dem Commit)
Trage einen kurzen, nutzerverstaendlichen Eintrag unter ## [Unreleased] ein,
gruppiert in Added / Changed / Fixed (bei Bedarf Removed):
## [Unreleased]
### Added
- <was neu ist>
### Fixed
- <was korrigiert wurde>
Reine interne Nebensaechlichkeiten (Tippfehler in Kommentaren o.ae.) muessen nicht ins Changelog.
Beim Abschluss eines Merge Requests (Release schneiden)
Wenn ein MR gemergt werden soll und [Unreleased] Eintraege enthaelt:
- Version bestimmen (SemVer, ausgehend vom aktuellen
VERSION):- MAJOR +1: inkompatible Aenderung an Datenmodell/Frontmatter/Output-Struktur
(
output/processed/<scope>/<domaene>), an Strategien-Semantik oder Pipeline-Verhalten. - MINOR +1: neue Strategie/Quelle/Funktion/Seite, abwaertskompatibel.
- PATCH +1: Bugfix, Doku, kleine Korrektur.
- MAJOR +1: inkompatible Aenderung an Datenmodell/Frontmatter/Output-Struktur
(
VERSIONauf die neue Nummer setzen.- In
CHANGELOG.mdden Block## [Unreleased]in## [X.Y.Z] - JJJJ-MM-TTumbenennen (Datum = heute) und einen neuen leeren## [Unreleased]darueber anlegen. - Commit-Message:
chore(release): vX.Y.Z.
Hinweise
- Im Zweifel die kleinere Erhoehung waehlen (lieber MINOR als MAJOR), aber inkompatible Aenderungen ehrlich als MAJOR markieren.
- Den automatischen Daten-Commit des Bots (
chore(data): ...) NICHT versionieren – er aendert nurdata/, nicht Code/Verhalten. - Wird die Output-/Frontmatter-Struktur geaendert, zusaetzlich
.kiro/steering/architecture.md,README.mdund Tests anpassen (siehe AGENTS.md).