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
+2 -4
View File
@@ -2,9 +2,9 @@
<!-- Generated by scripts/gen_status.py — do not edit. --> <!-- Generated by scripts/gen_status.py — do not edit. -->
## Issues (61 open, 38 closed) ## Issues (59 open, 40 closed)
Verteilung: M1 14 · M2 17 · M3 4 · M4 11 · M5 15 Verteilung: M1 12 · M2 17 · M3 4 · M4 11 · M5 15
| Issue | Status | Meilenstein | Priorität | Title | | Issue | Status | Meilenstein | Priorität | Title |
|---|---|---|---|---| |---|---|---|---|---|
@@ -19,7 +19,6 @@ Verteilung: M1 14 · M2 17 · M3 4 · M4 11 · M5 15
| [0027](docs/issues/0027-audit-01-acht-widersprueche-aus-dem-labnet-02.md) | open | M2 | medium | AUDIT-01: Acht Widersprüche aus dem LABNET-02-Nachlauf (Selbst-Audit CFGMON-Session) | | [0027](docs/issues/0027-audit-01-acht-widersprueche-aus-dem-labnet-02.md) | open | M2 | medium | AUDIT-01: Acht Widersprüche aus dem LABNET-02-Nachlauf (Selbst-Audit CFGMON-Session) |
| [0029](docs/issues/0029-ui-harmonisieren-gleiche-farben-und-formen.md) | open | M4 | medium | UI harmonisieren: gleiche Farben und Formen über alle Oberflächen | | [0029](docs/issues/0029-ui-harmonisieren-gleiche-farben-und-formen.md) | open | M4 | medium | UI harmonisieren: gleiche Farben und Formen über alle Oberflächen |
| [0030](docs/issues/0030-der-restore-ist-nie-geprobt-sicherungen-sind.md) | in-progress | M1 | medium | Der Restore ist nie geprobt — Sicherungen sind bisher eine Vermutung | | [0030](docs/issues/0030-der-restore-ist-nie-geprobt-sicherungen-sind.md) | in-progress | M1 | medium | Der Restore ist nie geprobt — Sicherungen sind bisher eine Vermutung |
| [0031](docs/issues/0031-stillstandspruefung-gitea-token-und-authentik.md) | open | M1 | low | Stillstandsprüfung: GITEA_TOKEN und Authentik-Teil nachziehen |
| [0032](docs/issues/0032-gameserver-hat-keinen-push-mirror-und-auf-gitea.md) | open | M2 | medium | gameserver hat keinen Push-Mirror — und auf Gitea liegt ein anderer Stand | | [0032](docs/issues/0032-gameserver-hat-keinen-push-mirror-und-auf-gitea.md) | open | M2 | medium | gameserver hat keinen Push-Mirror — und auf Gitea liegt ein anderer Stand |
| [0033](docs/issues/0033-overmind-01-element-desktop-build-lab-registry.md) | open | M2 | low | OVERMIND-01 — element-desktop-build von rohana in die Lab-Registry umziehen | | [0033](docs/issues/0033-overmind-01-element-desktop-build-lab-registry.md) | open | M2 | low | OVERMIND-01 — element-desktop-build von rohana in die Lab-Registry umziehen |
| [0034](docs/issues/0034-cfgmon-11-gitea-ci-rueckbau-abschliessen.md) | open | M2 | medium | CFGMON-11 — Gitea-CI-Rückbau abschließen (sicher rückbaubare Schritte) | | [0034](docs/issues/0034-cfgmon-11-gitea-ci-rueckbau-abschliessen.md) | open | M2 | medium | CFGMON-11 — Gitea-CI-Rückbau abschließen (sicher rückbaubare Schritte) |
@@ -67,7 +66,6 @@ Verteilung: M1 14 · M2 17 · M3 4 · M4 11 · M5 15
| [0101](docs/issues/0101-threadnet-call-4-kaputtes-paket-0-19-2-threadnet-6-in-der-regi.md) | open | M4 | low | Kaputtes Paket 0.19.2-threadnet.6 in der Registry — Herkunft ungeklärt | | [0101](docs/issues/0101-threadnet-call-4-kaputtes-paket-0-19-2-threadnet-6-in-der-regi.md) | open | M4 | low | Kaputtes Paket 0.19.2-threadnet.6 in der Registry — Herkunft ungeklärt |
| [0102](docs/issues/0102-dmarc-und-mail-haertung-der-zone-axion1337-chat.md) | open | M1 | medium | DMARC der Plattform-Zone `axion1337.chat` steht auf p=none — und gehört IONOS, nicht uns | | [0102](docs/issues/0102-dmarc-und-mail-haertung-der-zone-axion1337-chat.md) | open | M1 | medium | DMARC der Plattform-Zone `axion1337.chat` steht auf p=none — und gehört IONOS, nicht uns |
| [0103](docs/issues/0103-wiki-zugang-ohne-gruppe-endet-stumm.md) | open | M1 | medium | Wiki: Anmeldung ohne Gruppe endet stumm — `wiki-anwender` hat null Mitglieder | | [0103](docs/issues/0103-wiki-zugang-ohne-gruppe-endet-stumm.md) | open | M1 | medium | Wiki: Anmeldung ohne Gruppe endet stumm — `wiki-anwender` hat null Mitglieder |
| [0104](docs/issues/0104-daueralarme-melden-nichts-mehr.md) | open | M1 | high | Alle geplanten Prüfungen sind dauerhaft rot — damit meldet keine mehr etwas |
| [0105](docs/issues/0105-projekt-wiki-vor-projektabschluss-klaeren.md) | waiting | M2 | low | Projekt `wiki`: Verbleib klären — erst unmittelbar vor Projektabschluss | | [0105](docs/issues/0105-projekt-wiki-vor-projektabschluss-klaeren.md) | waiting | M2 | low | Projekt `wiki`: Verbleib klären — erst unmittelbar vor Projektabschluss |
## Active design docs (0) ## Active design docs (0)
@@ -1,7 +1,7 @@
--- ---
type: issue type: issue
id: "0031" id: "0031"
status: open status: done
created: 2026-08-09 created: 2026-08-09
milestone: M1 milestone: M1
priority: low 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 -`GITLAB_TOKEN` hinterlegt, in der CI verifiziert
- ✅ Zeitplan `Stillstandsprüfung (täglich)` angelegt, 6:17 Europe/Berlin - ✅ 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 - ✅ 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 type: issue
id: "0104" id: "0104"
status: open status: done
created: 2026-08-18 created: 2026-08-18
milestone: M1 milestone: M1
priority: high priority: high
@@ -125,7 +125,7 @@ Spalte `pruefung`.
| Kriterium | Stand | | 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 | | Ein *neu* eingeführter Befund färbt nachweislich rot | ✅ am Beispiel gezeigt, nicht abgeleitet |
| Quittiertes bleibt sichtbar, mit Grund und Datum | ✅ | | 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 | | 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 und genau falsch: Dieselbe Meldung ist der einzige Hinweis, wenn ein Spiegel
*wirklich* stehenbleibt (MIRROR-01, #0028). Sie bleibt scharf; ein Lauf unmittelbar *wirklich* stehenbleibt (MIRROR-01, #0028). Sie bleibt scharf; ein Lauf unmittelbar
nach einem Push ist eben kurz rot. 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).