# Der Wächter

Ein Tracking-Ausfall meldet sich nicht. Die Seite lädt, der Shop verkauft, nur
die Messung ist tot.

Bei einem Kunden lief ein abgelaufener Meta-Zugang **sieben Tage** durch. 114
Abschlüsse fehlten im Werbekonto, während zwei auf Käufe optimierende
Anzeigengruppen blind weiterliefen. Niemand merkte etwas — ein fehlendes Event
löst nun einmal keinen Alarm aus.

## Was der Wächter prüft

Alle sechs Stunden, und zwar das **Ergebnis**, nicht die Konfiguration:

- Kommen noch Events an?
- Kommen noch Käufe an — auch wenn der Traffic normal aussieht?
- Geht bei jedem Ziel noch etwas raus?
- Oder lehnt eines ab, weil ein Zugang abgelaufen ist?

Eine Konfigurationsprüfung würde den Fall oben verfehlen: Prüf- und
Sendeprozess laufen getrennt, ein Token-Check hätte eine Kopie geprüft.

## Warum er selten schreibt

Verglichen wird gegen **denselben Wochentag** der Vorwochen, nicht gegen
gestern — ein Shop verkauft sonntags anders als dienstags. Als Erwartung dient
der Median, nicht der Mittelwert: Ein Black Friday würde den sonst so hochziehen,
dass danach jeder normale Tag als Einbruch gilt.

Dazu drei Bremsen:

- **Anlaufschutz** — ohne genug Vergleichsdaten kein Urteil
- **Mindestmenge** — bei fünf Events am Tag ist jede Abweichung Rauschen
- **Entprellung** — einmal melden, bei Verschärfung erneut, einmal täglich
  erinnern, am Ende Entwarnung

Das ist Absicht: Ein Wächter, der Fehlalarme schickt, wird nach der dritten Mail
weggefiltert — und meldet den nächsten echten Ausfall an ein Postfach, das
niemand mehr liest.

## Was in der Mail steht

Was passiert ist, wie schlimm, was zu tun ist — mit den echten Zahlen:

> An meta ging in den letzten 24 h nichts raus — üblich sind 40 Events.
> Die Verbindung sendet still nicht mehr.
>
> → Öffne die Verbindung im Dashboard und verbinde sie neu — meist ist der
> Zugang abgelaufen.

## Einstellen

Pro Shop abschaltbar, Mindestmenge anpassbar. Empfänger sind alle Mitglieder
der Organisation plus frei eingetragene Adressen — etwa die betreuende Agentur.

Abrufbar ist derselbe Stand über `GET /api/shops/{shopId}/health`, im
[MCP-Server](/docs/mcp.md) als `getShopTrackingHealth`.
