restore-drill-media, on the 4th at 05:20, an hour after the database probe. The name is the alerting: BackupJobFailed already matches restore-drill.*, so a failure needs no new rule and reaches the maintenance room through the single alertmanager route. Every link is measured rather than assumed. A control run with a deliberately damaged file reported one mismatch and failed the job. The job name was checked against the rule's regex. The route was read from the config. And delivery works today: seven notifications sent, none failed, alertmanager up. The probe re-proves its own comparison on every run: after passing, it alters one shared file by a byte and fails with "this probe proves nothing" if the comparison stays quiet. That a comparison has only ever said "equal" is a guess, and running monthly does not change it. Silence is covered too - the stale and missing alarms now match the prefix and name which probe is affected - but those two rule changes sit in threadnet-operating and are not live: the operating stack does not pull by itself, and Prometheus still serves the old expressions, measured through its rules API. The failure alarm is unaffected and already armed. Written down as open rather than reported as done. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01F2Q4Ri8NGwyTZzScvKnWFM
management
Steuerungs-Repo für alles über den einzelnen Projekten: Visionen, Roadmap, Entscheidungen (ADR), Arbeitsverfahren, AARs — und der Bestand der Hosts. Framework: Kanban-Rückgrat mit leichten Scrum-Elementen, begründet und im Detail festgelegt in ADR-0005.
(Bis 2026-08-01 hieß dieses Repo Backlogs und führte offene Punkte als
Markdown — die leben jetzt als Issues, siehe unten.)
Repo-Topologie (seit 2026-08-01)
Kanonisch lebt dieses Repo auf git.lab (axion1337.chat/management, nur im
Lab bzw. via VPN erreichbar — das Lab ist die Quelle der Wahrheit,
ADR-0002).
rohana.axion1337.de/sorb/management ist ein Push-Mirror: git.lab
überschreibt ihn bei jedem Push per Force. Deshalb nie direkt zu Gitea
pushen — solche Commits gehen beim nächsten Mirror-Lauf verloren (Rettung:
.patch von Gitea ziehen + git am, siehe
Kanonisierung).
Keine Ausnahmen mehr. Die Deploy-Übergabe-Issues liefen bis 2026-08-02 auf
dem Gitea-Tracker, weil Hosts außerhalb des Labs git.lab nicht erreichten. Mit dem
Site-to-Site-VPN (ADR-0004) ist der
Grund entfallen — bei eingeschaltetem Tunnel erreicht CFGMON git.lab. Sie sind
umgezogen (LABNET-03), der Gitea-Tracker ist leer, die Vorlage liegt als
GitLab-Issue-Template. Alle Issues leben auf git.lab.
Struktur
| Pfad | Artefakt |
|---|---|
AGENTS.md |
Kanonische Arbeitskonventionen für alle Agenten-Sessions (Topologie, Framework, Secrets, Karpathy-Guidelines). CLAUDE.md zeigt nur hierher. |
WORKFLOW.md |
Gates, Größenklassen, Debugging-Pfad, Refinement-Ritual |
schema.yaml |
Frontmatter-Schema — einzige Wahrheit über den Aufbau der Artefakte |
STATUS.md |
Generierte Übersicht; nicht von Hand ändern (scripts/gen_status.py) |
roadmap.md |
Linien, Meilenstein-Kandidaten, Kadenz — die Gruppen-Milestones halten den Stand |
FRAMEWORK-BEFUNDE.md |
Erzeugter Wegweiser; die Fehlerklassen liegen als Seiten in docs/wiki/stolpersteine/, die Übersicht in STATUS.md |
docs/adr/ |
ADRs — Pflicht bei Architektur- und Prozessentscheidungen; für dauerhafte Ausnahmen gilt dieselbe Pflicht aus dem Upstream-Teil von AGENTS.md |
docs/issues/ |
Das kanonische Backlog der ganzen Gruppe (ADR-0012, ADR-0019) |
docs/design/, docs/aar/ |
Design-Dokumente je Vorhaben; AARs zu Vorfällen und größeren Abweichungen |
docs/components/ |
Eine Datei je Projekt der Gruppe — wer hier fehlt, wird zum Befund |
docs/wiki/, docs/sources/ |
Wiki-Flächen (u. a. Deploy-Übergabe/DoD, Refinement & Retro, Branding) und unveränderliche Quellen |
scripts/, verfahren/ |
Deterministische Werkzeuge — Prüfungen, Spiegel, Migration/Adoption |
Die Prüfungen sind die Alarmanlage: validate.py und gen_status.py laufen bei jedem
Push, gruppenpruefung.py und stillstandspruefung.py täglich per Zeitplan. Bekanntes
wird in scripts/befund_quittungen.tsv quittiert, nicht toleriert
(ADR-0020) — eine Prüfung, die dauerhaft
rot steht, meldet nichts mehr.
Gelesen wird die Anwender- und Betriebsdoku unter
wiki.axion1337.chat (Wiki.js,
ADR-0014). Das frühere Docusaurus-Wiki
auf axionwiki.lab existiert nicht mehr — nicht danach suchen.
Das Backlog: Issues + Board
Alle offenen Punkte sind Issues in diesem Projekt (host-/infra-Scope, mit
host:-Labels; die alten IDs wie CFGMON-01 bleiben im Titel) bzw. in den
Produkt-Projekten der Gruppe (Projekt-Scope). Das
Gruppen-Board zeigt alles
über die status:-Labels:
| Label | Bedeutung | Policy |
|---|---|---|
| (keins) | Backlog | wird im Refinement gesichtet |
status:next |
als Nächstes gezogen | die einzige „Zusage" (Pull nach Kapazität) |
status:doing |
in Arbeit | WIP-Limit: max. 2 |
status:wartet |
blockiert | nur mit benanntem Grund im Issue |
Genau ein status:-Label pro Issue. Prioritäten weiter über priority:*.
Konventionen (unverändert gültig)
IDs (CFGMON-01, ZONE-01, …) werden nie wiederverwendet; sie leben in
Issue-Titeln weiter. Neue host-/infra-Punkte bekommen die nächste freie Nummer
ihres Präfixes als Issue.
Jeder Punkt braucht eine Beschreibung des tatsächlichen Zustands und einen konkreten nächsten Schritt; nicht selbst Verifiziertes wird als solches markiert (woher stammt die Aussage?). Zeitkritisches bekommt ein Datum, nicht „bald".
Erledigtes und Verworfenes bleibt sichtbar: Issues werden geschlossen (nicht
gelöscht), verworfen wird im Schlusskommentar begründet — der Unterschied
zwischen „gemacht" und „bewusst gelassen" ist die häufigste Rückfrage.
Verhältnis zu den Projekt-Repos
Konfiguration lebt in den Projekt-Repos (z. B. threadnet-operating für den
CFGMON-Stack), reine Projekt-Bugs/-Features in deren Issues auf git.lab.
Hierher gehört, was mehrere Hosts/Repos betrifft oder eine Entscheidung ist.
Ein Punkt, der von zwei Seiten beschrieben wird, verlinkt die andere Seite und
wird beim Schließen dort mitaktualisiert.