Automation · Case Study
Aufgaben-Eskalation mit Timeout
n8n-Workflow, Dental Intelligence OS

Kontext
Das System erkennt Handlungsbedarf in einer Zahnarztpraxis und legt Signale mit Fälligkeit und Zuständigkeit an. Nach Ablauf der Fälligkeit passierte nichts — die Tagesliste sortierte nur. Messung in der Demo-Datenbank am 21.08.2026: 668 offene Signale mit überschrittener Fälligkeit, davon 372 ohne Zuständigkeit.
Was es leistet
Erkennung und Filter
Täglicher Lauf um 05:00 Uhr oder manueller Start über einen tokengeschützten Webhook. Kandidaten sind überfällige Signale sowie Signale ohne Fälligkeitsdatum nach einer Ersatzfrist. Signale, die seit der Fälligkeit jemand angefasst hat, fallen raus.
Stufenlogik und Digest
Stufe 1 an den zuständigen Bereich, Stufe 2 an die Praxisleitung (auch wenn niemand zuständig ist), Stufe 3 als Entscheidungsanfrage. Eine Mail je Praxis, Bereich und Stufe — mit Anzahl, ältester Fälligkeit, Summe und Deep-Links, ohne Patientendaten.
Entscheidung
Die Stufe-3-Mail enthält signierte Links für Wiedervorlage oder Neuzuweisung. Ohne Antwort binnen Frist wird die Anfrage als unbeantwortet geschlossen, das Signal bleibt unverändert.
Protokoll und Fehlerpfad
Jede Eskalation wird mit Stufe, Empfängerrolle und Ausführungs-ID protokolliert. Bei Mailfehler ein Wiederholungsversuch nach zehn Minuten, danach Abbruch mit Alarmmail — ohne halben Zustand in der Datenbank.

Technisch bemerkenswert
Mengenbasiert statt ein HTTP-Aufruf je Signal
Die Prüfung „seit der Fälligkeit unberührt“ läuft mengenbasiert als EXISTS in einer SQL-Sicht statt als ein HTTP-Aufruf je Signal — 668 IDs sprengen jeden URL-Filter.
Entscheidungslinks sind HMAC-signiert
Ein gefälschter Link liefert 401, ein zweiter Klick auf denselben Link 409; zusätzlich erzwingt ein Datenbank-Trigger, dass eine Anfrage genau einmal beantwortet wird.
Kein Service-Role-Key
Alle Datenbankzugriffe laufen unter Row-Level-Security mit dem Token eines Automationskontos, das Mitglied der Praxis mit Leitungsrolle ist.
Eskalation geht an Rollen, nie an Personen
Das erzwingt das Datenmodell, nicht eine Absprache.

Stand und Grenzen
724
Kandidaten im Volllauf
80
davon unberührt
5
Digest-Mails
11
Testfälle inkl. Negativtests
Erster Volllauf gegen die Demo-Datenbank am 23.08.2026: 724 Kandidaten, davon 80 unberührt, 5 Digest-Mails, 80 Protokollzeilen; ein Entscheidungsklick verschob ein Signal um fünf Wochen. Elf Testfälle inklusive Negativtests (manipulierte Signatur, Fristablauf, Mailserver aus, Datenbank aus) liefen auf einer lokalen Replik des Schemas.
Offen benannt
- ›Keine Paginierung über 1000 Zeilen je Anfrage.
- ›Der Signaturvergleich ist nicht zeitkonstant.
- ›Als Postausgang dient ein Testpostfach statt eines Transaktionsmailers.
- ›Der Testlauf verwendet ausschließlich synthetische Daten.
Workflow ansehen
Der exportierte Workflow lässt sich in jede n8n-Instanz importieren. Die n8n-Oberfläche selbst liegt hinter Anmeldung; ein Walkthrough ist auf Anfrage möglich.