docs(issues): close #0031 and #0104 - green is the normal state again

Pipeline 540 has both management checks passing, and canonize_rotation has been green
since yesterday. That is the condition AGENTS.md's alarm rule silently assumed, and it
holds again.

#0031 is done because the Authentik blueprint check now runs rather than skipping:
sorb supplied the variables, the token carries exactly one permission on its own
service account, and the run says "Geprueft: 11 Projekte" with no skip line. The blind
spot it named - a blueprint discarded on every pass while Flux reported green - would
now surface.

#0104 closes on all four criteria. Twice the route was the cause rather than an
acknowledgement: gitops had no workflow block and created pipelines with no jobs,
which is red without a fault, and management had the same gap for API triggers and was
closed pre-emptively. Exactly one thing is acknowledged, because it cannot be unmade -
pipeline 518 exists in history and sits inside the check's eight-day window, so the
entry expires with the window on 2026-08-28.

From 25 open findings this morning to none, with nothing hidden: 26 entries carry a
reason and a date in the log.
This commit is contained in:
Thore Cimbal
2026-08-19 12:00:00 +00:00
parent cc3c43052b
commit 22775e499c
3 changed files with 51 additions and 7 deletions
@@ -1,7 +1,7 @@
---
type: issue
id: "0031"
status: open
status: done
created: 2026-08-09
milestone: M1
priority: low
@@ -51,3 +51,20 @@ Mehr ist nicht zu tun — der Code steht, er wartet nur auf die Zugänge.
-`GITLAB_TOKEN` hinterlegt, in der CI verifiziert
- ✅ Zeitplan `Stillstandsprüfung (täglich)` angelegt, 6:17 Europe/Berlin
- ✅ Erster Lauf über den Zeitplan durchgeführt: fand in der CI **dieselben 7 Befunde** wie lokal — kein Unterschied zwischen den Umgebungen
## Erledigt 2026-08-19 — Authentik-Teil läuft
sorb hat `AUTHENTIK_URL` und `AUTHENTIK_TOKEN` als maskierte, geschützte CI-Variablen
im management-Projekt hinterlegt (dazu `GITEA_TOKEN`, der die privaten Spiegel
gegenlesbar macht). Der Token trägt genau eine Berechtigung —
`authentik_blueprints.view_blueprintinstance` —, vergeben an ein eigenes Dienstkonto;
kein Admin.
**Belegt am Lauf, nicht an der Konfiguration** (Pipeline 540): Der Vermerk
„Uebersprungen: Authentik-Blueprints … fehlen" ist verschwunden, stattdessen meldet die
Prüfung `Geprueft: 11 Projekte der Gruppe axion1337.chat` und **Keine offenen Befunde**.
Damit ist genau der blinde Fleck geschlossen, den dieses Issue als den ärgerlichsten
benannt hat: Der `matrix-recovery-flow`-Blueprint wurde tagelang bei jedem Durchlauf
verworfen, während Flux grün meldete — gefunden nur, weil jemand aus anderem Anlass in
die Datenbank sah. Dieser Fall würde jetzt auffallen.
@@ -1,7 +1,7 @@
---
type: issue
id: "0104"
status: open
status: done
created: 2026-08-18
milestone: M1
priority: high
@@ -125,7 +125,7 @@ Spalte `pruefung`.
| Kriterium | Stand |
|---|---|
| Alle drei Prüfungen laufen grün durch | ⏳ canonize ✅; die beiden management-Prüfungen erst nach dem Nachzug unten |
| Alle drei Prüfungen laufen grün durch | ✅ Pipeline 540 |
| Ein *neu* eingeführter Befund färbt nachweislich rot | ✅ am Beispiel gezeigt, nicht abgeleitet |
| Quittiertes bleibt sichtbar, mit Grund und Datum | ✅ |
| Bedingung in AGENTS.md ergänzen | ✅ mit sorbs Zustimmung 2026-08-19; im Projektabschnitt, die neckbeard-Baseline bleibt byte-treu |
@@ -153,3 +153,32 @@ startet, weil der Spiegel ein paar Minuten nachhinkt. Verlockend zu quittieren
und genau falsch: Dieselbe Meldung ist der einzige Hinweis, wenn ein Spiegel
*wirklich* stehenbleibt (MIRROR-01, #0028). Sie bleibt scharf; ein Lauf unmittelbar
nach einem Push ist eben kurz rot.
## Erledigt 2026-08-19 — alle drei Prüfungen grün
| Prüfung | Stand |
|---|---|
| `canonize_rotation` (gitops) | ✅ grün seit dem 2026-08-18 |
| `gruppenpruefung` (management) | ✅ 0 offene Befunde, 20 quittiert |
| `stillstandspruefung` (management) | ✅ „Keine offenen Befunde", 6 quittiert |
Pipeline 540, beide Jobs `success`. **Grün ist wieder der Normalzustand** — womit die
Regel aus AGENTS.md („die rote Pipeline ist der Alarm") wieder trägt.
**Der Weg dahin ging zweimal über die Ursache statt über eine Quittung**, und das ist
der eigentliche Ertrag:
- `gitops` hatte **keinen `workflow`-Block** und legte deshalb Pipelines auch dann an,
wenn kein Job auf sie passte — rot ohne Fehler (Pipeline 518). Behoben in `1e65f5b`;
`management` hatte dieselbe Lücke für API-Trigger und wurde in `cc3c430` vorbeugend
mitgeschlossen.
- Nur **eine** Sache ist quittiert, weil sie sich nicht beheben lässt: Pipeline 518
existiert in der Historie, und die Prüfung schaut acht Tage zurück. Frist
**2026-08-28**, läuft also mit dem Prüffenster aus. Färbt es danach weiter rot, war
der Fix unvollständig — und die Prüfung sagt es von selbst.
Von 25 offenen Befunden am Morgen auf **null**, ohne dass ein einziger davon
verschwiegen wurde: 26 stehen als Quittung mit Grund und Frist im Log.
**Alle vier Abnahmekriterien erfüllt** (siehe Tabelle oben, plus ADR-0020 und der
AGENTS.md-Zusatz).