ADR-009: Warum klickbare Links Drill-Down-Links nie überschreiben
| Status | Angenommen |
|---|---|
Datum | 2026-07-10 |
Betrifft |
|
1. Kontext
Seit dem link-Feld auf Elementen (#483) kann ein Element auf zwei Arten einen klickbaren Link
im draw.io-Export bekommen:
Drill-Down-Link — automatisch gesetzt, wenn das Element
scopeeiner anderen View ist. Klick führt zum Detail-Diagramm (data:page/id,view-<viewID>).User-definierter Link — explizit im Modell gesetzt (
"link": "…"), z. B. auf eine ADR, ein Jira-Ticket oder eine Confluence-Seite.
Was passiert, wenn beide auf demselben Element vorkommen? Ohne klare Regel wäre das Verhalten zufällig davon abhängig, welcher Code-Pfad zuletzt geschrieben hat — nicht vorhersagbar für Nutzer.
2. Entscheidung
Drill-Down-Links haben immer Vorrang vor user-definierten Links.
Begründung:
Drill-Down ist strukturell Teil der Navigation zwischen Views desselben Modells — ein Klick, der innerhalb der Diagramm-Serie bleibt, wird als grundlegender erwartet als ein Sprung nach außen.
Ein Element, das gleichzeitig Scope einer Detail-View ist, hat bereits eine klare "was zeige ich als nächstes"-Antwort — ein zusätzlicher externer Link würde diese Antwort verdecken.
Die Alternative (User-Link gewinnt) würde Drill-Down-Navigation für jedes verlinkte Element stillschweigend brechen, sobald jemand eine ADR verlinkt — ein überraschender Seiteneffekt.
Bei einem Konflikt gibt bausteinsicht sync eine Warnung aus:
WARNING: element <id>: user-defined link overridden by drill-down link (ADR-009)Der Sync bricht dabei nicht ab — die Warnung ist informativ, damit Modell-Autoren den Konflikt bewusst auflösen können (z. B. den Link auf ein anderes Element verschieben).
3. Konsequenzen
User-definierte Links funktionieren zuverlässig nur auf Elementen, die nicht Scope einer View sind.
Wer beides braucht (Drill-Down UND externen Link auf demselben fachlichen Konzept), modelliert zwei Elemente oder verlinkt die ADR stattdessen von der Detail-View eines Kind-Elements aus.
Die Regel ist einseitig und ohne Konfigurationsoption — Vorhersagbarkeit hat Vorrang vor Flexibilität.