Zwei Saetze in CLAUDE.md beschrieben den Code nicht genau.
"Nie auf rohe Hexwerte" hat sechs begruendete Ausnahmen, nicht null: Papier,
ein QR-Decoder und das Web-App-Manifest entscheiden nicht nach unserem
Farbschema. Sie stehen jetzt als Tabelle mit Begruendung je Zeile. Die Regel
wurde ergaenzt, nicht der Code geaendert -- eine Konstante ueber drei
unverwandte Dinge haette die Begruendung versteckt.
Das Tor vor jedem Commit nennt den LDAP-Container. Ohne ihn ueberspringt die
Suite 22 Tests -- nachgezaehlt, nicht geschaetzt: 81 mit Container, 59 ohne.
Sie sagt es auf stderr, der Lauf sieht trotzdem gruen aus. Im README fehlte
zusaetzlich format:pruefen, das CLAUDE.md seit #010 verlangt.
Damit das haelt, auch wenn niemand hinsieht: pruefe:doku vergleicht die beiden
Schranken-Bloecke und verlangt von beiden den Container. Gegenprobe gefahren.
Der Review hatte vier Hexwerte genannt und src/lib/qr.ts uebersehen, und das
Issue behauptete die Regel stehe auch in docs/architektur.md -- tut sie nicht.
Beides im Issue-Text richtiggestellt, statt einen Haken ueber falschen Text zu
setzen.
Closes#40
Zwei Wege in den Betrieb, beide so weit gefahren, wie es hier moeglich war.
deploy/install.sh richtet Debian 13 in neun Schritten ein: PostgreSQL 17 hoert
nur am Unix-Socket, der Dienstnutzer hat kein Login, die Geheimnisse entstehen
im Zielsystem und liegen 0600 bei root. Die Umgebungsdatei wird nie
ueberschrieben -- auch nicht beim Aktualisieren, sonst enden alle Sitzungen und
die verschluesselten Bind-Passwoerter waeren unlesbar.
deploy/proxmox/laufzettel.sh legt den Container an und ruft install.sh darin
auf. Der pct-Teil ist ungetestet, weil kein PVE-Host zur Verfuegung stand; die
Gegenprobe steht als Pruefliste in docs/betrieb/proxmox.md, das Folge-Issue ist
Nummer 38.
Die Abnahme gegen alle 61 Kriterien hat drei Zusagen ohne Deckung gefunden, alle
behoben: der Healthcheck des Webdienstes konnte nie bestehen (busybox loest
localhost nach ::1 auf, Next lauscht nur auf IPv4), die CI-Pipeline konnte in
keinem Job gruen werden (kein LDAP-Dienst, kein gestarteter Server, kein
shellcheck), und der README nannte fuer die Entwicklungsdatenbank den falschen
Port.
Closes#19