adr vertraulich owner: matus
ADR-0010: „Kataloge & Regelwerk" (R-Praxis-Governance) als Scope-Erweiterung — Mechanismus statt Fachzahl
ADR-0010: „Kataloge & Regelwerk" (R-Praxis-Governance) als Scope-Erweiterung — Mechanismus statt Fachzahl
Status
Angenommen (2026-08-24)
Kontext
agentic-engineering/backlog/hifi-prototyp-daniel-review.md stuft Screen 09 Kataloge & Regelwerk des
Hi-Fi-Prototyps als Stufe D ein: „steht gegen gold-path-scope.md (R-Praxis P2, draußen) …
Scope-Entscheidung nötig, nicht anfassen." gold-path-scope.md listet FACH-061–FACH-063
(R-Praxis) explizit unter „Ausdrücklich NICHT im Schnitt" — Begründung: „P2; FACH-063 ist P0, aber
als Dokument, nicht als Funktion."
Der Product Owner hat am 2026-08-24 entschieden, diese Scope-Erweiterung jetzt vorzunehmen: ein
eigenes ADR statt eines stillen Commits, wie es gold-path-scope.md selbst verlangt („ein Feature
ohne Zeile hier braucht ein ADR, keinen Commit").
Die entscheidende Unterscheidung, die dieses ADR trifft: gold-path-scope.md schließt R-Praxis
als fachlichen Bestandteil des Gold-Path-Schnitts E1/E3 aus — es gibt im Material keinen Beleg für
konkrete Praxis-Regelwerte, keinen Freigabeprozess (FACH-119/FACH-120 „kommt später", siehe
Regelkatalog.java-Klassenjavadoc) und keine Spezifikation, wie ein Regelkandidat aus der Fallarbeit
entsteht. Was hier ins Scope kommt, ist nicht eine fachlich validierte R-Praxis-Instanz, sondern
der Verwaltungsmechanismus dafür: Versionierung, Entwurf/Freigabe/Ablehnung, Sichtbarkeit
gegenüber dem bestehenden R-Global-Katalog. Ein Mechanismus ist keine Fachzahl — er braucht keinen
Beleg im Quellmaterial, weil er nichts über Zink, Magnesium oder Vitamin D behauptet. Er behauptet nur:
„eine Praxis kann einen eigenen Wert vorschlagen, versionieren und freigeben."
Entscheidung
Was ins Scope kommt
- Lesezugriff auf
Regelkatalog.java— der Grund, warumnavConfig.tsden Menüpunkt bisher durch „Systemsteckbrief" ersetzt hat, entfällt:GET .../regelkatalogliefert Dosisobergrenzen, kritische Schwellen, Kontraindikationszuordnungen, Sicherheitshinweise und Reevaluationsintervalle — unverändert ausRegelkatalog.java, keine zweite Quelle. Das bestehendeR-Global-SYNTH-0bleibt die einzige Wahrheit, die in die Auswertungslogik einfließt; dieser Endpunkt liest sie nur. - R-Praxis als eigene, leere Domäne mit echtem Freigabe-Workflow. Eine Praxis kann einen eigenen
Katalogeintrag (Element, Obergrenze, Einheit, Begründung) anlegen (
ENTWURF), ihn freigeben (GUELTIG, nurUSER— siehe unten) oder ablehnen (ABGELEHNT, mit Pflichtbegründung). Die R-Praxis-Version ist die Anzahl gültiger Einträge — eine bewusste Vereinfachung gegenüber dem Mockup-BildR-PRAXIS 0.4, siehe „Bewusst offen gelassen" unten. - Kein Rückkanal in die Auswertungslogik. Ein freigegebener R-Praxis-Eintrag wirkt nicht auf
TherapieplanServiceoder eine laufende Auswertung — das wäre die eigentliche R-Praxis-Funktion ausFACH-061–063und bräuchte eine Vorrangregel (R-Praxis vs. R-Global), die im Material nicht spezifiziert ist. Diese Verwaltungsfläche ist reine Governance, keine Wirkung.
Was ausdrücklich draußen bleibt
- „Freigabe von Kandidaten aus der Fallarbeit" (Mockup-Panel unten auf Screen
09): Es gibt keine Ableitung vonUebersteuerung/Therapeutenentscheidungzu einem Regelkandidaten —GM-7.4erwähnt das Konzept („eine Übersteuerung verändert das Regelwerk nicht, sondern geht als Kandidat weiter",regelkandidatErzeugtinUebersteuerung, siehe ADR-0004 Abschnitt 3), aber die Ableitungsregel (wann genau wird ein Kandidat erzeugt, mit welchem Text) ist nicht spezifiziert. Das zu erfinden wäre keine Scope-Erweiterung mehr, sondern eine neue Fachregel ohne Beleg — genau das verbietet die Projektregel „wo das Material keine Zahl hat, hat der Code auch keine". Die R-Praxis-Oberfläche zeigt diese Sektion deshalb nicht simuliert, sondern mit einer ehrlichen Leermeldung, im selben Stil wie die Substanzauflösung (OF-07) an anderer Stelle. - Vorrangregel R-Praxis vs. R-Global. Nicht spezifiziert, deshalb nicht gebaut.
- 29 Kataloge wie im Mockup. Der Mockup-Zähler „… 29 Kataloge insgesamt" ist Bildschirmdekoration.
Gebaut werden die Kataloge, die
Regelkatalog.javatatsächlich führt (fünf Tabellen, siehe oben).
GM-7-Analogie, nicht GM-7 selbst
Die drei GM-7-Capabilities (txm.empfehlung.decide, txm.uebersteuerung.create, txm.freigabe.grant)
sind unverändert und bleiben die einzige Kette, die Gm7Schutz erzwingt. R-Praxis-Freigabe ist keine
Therapieentscheidung und damit fachlich kein GM-7-Fall. Sie bekommt trotzdem allowedActors=[USER]
(txm.regelwerk.rpraxis.freigeben) — nicht aus GM-7-Zwang, sondern aus derselben Erwägung wie bei
txm.demo.cleanup (ADR-CapabilityRegistrar-Javadoc): eine Änderung an einem Katalog, der später
Empfehlungen beeinflussen könnte, hat eine andere Tragweite als Lesen, auch ohne dass GM-7 sie
verlangt.
Bewusst offen gelassen
- R-Praxis-Versionszähler ist die Anzahl gültiger Einträge, nicht eine SemVer-artige Zahl wie im
Mockup (
0.4). Eine echte Versionshistorie pro Element bräuchte ein eigenes Versionsmodell, das für eine erste Governance-Fläche nicht nötig ist. - Element-Referenz ungeprüft. Ein R-Praxis-Eintrag trägt den Elementnamen als Freitext, ohne
Abgleich gegen
Regelkatalog.java-Schlüssel. Eine Praxis kann damit auch ein Element anlegen, das im R-Global-Katalog nicht existiert — bewusst zugelassen, weil eine Praxis auch Elemente regeln können soll, die R-Global nicht führt.
Konsequenzen
- + Der Menüpunkt „Kataloge & Regelwerk" ersetzt „Systemsteckbrief" wieder — der Grund für den damaligen Ersatz (kein Lese-Endpunkt) entfällt.
- +
Regelkatalog.javabekommt seinen ersten Konsumenten außerhalb der Auswertungslogik, ohne dass eine zweite Quelle für dieselben Zahlen entsteht. - + R-Praxis-Governance ist ein echtes, testbares Feature, keine Kulisse.
- − Das Mockup verspricht mehr, als hier steht (Freigabekandidaten aus der Fallarbeit, 29 Kataloge, Vorrangregel). Wer nur den Screen kennt und nicht dieses ADR, hält die Lücken für ein Versehen.
- − R-Praxis-Einträge wirken auf nichts. Das ist die Konsequenz aus „kein Beleg für eine Vorrangregel" — nicht ein technisches Versäumnis, sondern eine bewusste Grenze dieses ADR.
Nachtrag UI-Vereinfachung (2026-08-26)
Status bleibt Angenommen. Die Entscheidung selbst (kein Rueckkanal fuer den Kandidatenfluss, ehrliche Leermeldung statt simulierter Ableitung) ist unveraendert gueltig. Geaendert hat sich nur die Darstellung, nicht die Aussage.
Die eigene Box „Freigabe von Kandidaten aus der Fallarbeit" (§„Was ausdruecklich draussen bleibt")
ist aus KatalogeRegelwerkPage.tsx entfernt. Sie hatte keinen eigenen Zustand — kein Query, kein
Prop — und konnte strukturell nie etwas anderes zeigen als exakt den einen Leertext. Eine Erklaerung
im Layout einer Datenansicht ist keine Nettigkeit mehr, sondern eine Verwechslungsquelle: drei
gerahmte Abschnitte untereinander (wirksamer Regelwert, wirkungsloser Kandidatenfluss, staendig
leere Box) sahen gleichrangig aus, obwohl nur zwei davon etwas TUN. Der Product Owner selbst konnte
die beiden unteren Bereiche nach der Umsetzung nicht mehr auseinanderhalten — ein Formattbefund, kein
Missverstaendnis, das man wegerklaeren sollte.
Der Inhalt ist nicht verloren gegangen, nur die Form: der Satz ueber die fehlende Ableitungsregel aus
der Fallarbeit steht jetzt im Erklaertext von „Regelkandidaten der Praxis" (derselben Box, die auch
den wirkungslosen Kandidatenfluss traegt), mit Verweis auf GM-7.4.
Zusaetzlich wurde der Button, der das Kandidaten-Formular oeffnet, von „Regel hinzufuegen" auf „Regelkandidat anlegen" umbenannt — der alte Name behauptete, es entstehe eine Regel; tatsaechlich entsteht ein wirkungsloser Kandidat. Das Formular oeffnet seither in einem Modal statt unterhalb der Regeltabelle: es klappte dort ohne Scroll oder Fokus-Sprung auf und war praktisch unsichtbar, wenn der Viewport die Tabelle zeigte — vermutlich der eigentliche Grund, warum der Button nie mit seinem Ziel in Verbindung gebracht wurde.
Verweise
agentic-engineering/backlog/hifi-prototyp-daniel-review.md— Screen-09-Einordnung als Stufe Dguidelines/project/gold-path-scope.md—R-Praxisaußerhalb des Gold-Path-Schnitts- ADR-0004 —
regelkandidatErzeugt,GM-7.4 Regelkatalog.java— Klassenjavadoc, Abschnitt „nicht versioniert steuerbar"