- ADR 0004 ersetzt ADR 0003: Die Prozessmodelle liegen im Repository AG_Prozesse/Prozessbibliothek, geklont nach Prozessbibliothek/ (neuer Eintrag in workspace.toml, .gitignore). prozesse/ ist entfernt; das Ablageformat (Ordner je Prozess, drei Dateien, Status) bleibt. - pruefe_prozesse.py prüft den Klon (Ort über setup_workspace.repos_root), lässt Punkt-Ordner wie .git aus und erlaubt in der Wurzel nur die Repo-Dateien. Fehlt der Klon, gibt es einen Hinweis statt eines Befunds; pytest warnt dann. - einlesen.py sucht den Bestand in der Bibliothek und nennt Treffer als Prozessbibliothek/<name>/, auch wenn der Klon woanders liegt. - Regeln aus prozesse/README.md nach docs/leitfaden/08_prozessbibliothek.md, inklusive Ablauf bei Konverteränderungen (zwei Pull Requests). - Verweise in AGENTS.md, README, Skills, Leitfäden, Vorlagen, Fallstricken und STATUS nachgezogen. - Tests: python -m pytest -q -> 88 bestanden, 1 xfail (#8), 1 Warnung (Bibliothek noch nicht geklont). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2.3 KiB
0003 – Prozessmodelle liegen versioniert in prozesse/<name>/, die .md ist maßgeblich
Status: ersetzt durch 0004 · Datum: 2026-09-23 · Beteiligte: AG Prozesse
Kontext
Der Skill sn-bpmn legt Entwürfe in entwuerfe/ ab; der Ordner ist nicht versioniert. Fertige Modelle hatten damit
keinen gemeinsamen Ort: Wer ein Modell ändern wollte, musste die letzte Fassung bei der Kollegin erfragen, und niemand
konnte nachvollziehen, welcher Stand abgenommen war. PICTURE ist Zielsystem des Imports, aber kein Ort für Review
und Versionsgeschichte.
Entscheidung
Jedes Prozessmodell liegt in einem eigenen Ordner prozesse/<name>/ mit genau drei Dateien: Steckbrief README.md,
Arbeitsschritt-Beschreibung <name>.md und die daraus erzeugte <name>.bpmn.
- Die
.mdist die maßgebliche Quelle. Die.bpmnwird mitpython scripts/pruefe_prozesse.py --erzeugenerzeugt und mitcommittet, damit sie ohne Python aus Gitea heruntergeladen und in PICTURE importiert werden kann. - Ein Test prüft, dass jede
.bpmnbyte-gleich mit der Umwandlung ihrer.mdist. Das geht, weilmd_to_bpmn.pydeterministisch arbeitet (keine Zufalls-IDs, keine Zeitstempel). - Der Steckbrief trägt den Status
Entwurfoderabgenommen. Entwürfe dürfen aufmain, damit mehrere Personen daran arbeiten können; die Abnahme ist ein eigener Pull Request, der nur den Status ändert. - Im Ordner liegen keine weiteren Dateien, insbesondere keine Originalunterlagen.
Folgen
Modelle sind reviewbar (Diff der .md statt XML), versioniert und mit Status versehen. Eine Änderung am Konverter,
die die Ausgabe verändert, macht alle abgelegten .bpmn rot, bis sie neu erzeugt sind — gewollt: Der Pull Request
zeigt dann, welche Modelle sich im Bild ändern, und sie werden gemeinsam neu erzeugt. Nacharbeiten, die nur in
PICTURE gemacht werden (Layout, Zusatzfelder), gehen bei der nächsten Erzeugung verloren und gehören deshalb in die
.md oder in den Steckbrief.
Verworfene Alternativen
Nur die .md versionieren (Fachleute ohne Python kämen nicht an die .bpmn); nur die .bpmn versionieren (XML ist
nicht reviewbar, die Quelle ginge verloren); Status in Kopfzeilen der .md (der Parser würde Zeilen wie
„Verantwortliche Stelle: …“ als Schritt deuten); Ablage nur in PICTURE (keine Versionsgeschichte, kein Review).