dev: Nachweise gesichtet, Vertragsübersicht BN-06, Deploy-Notiz v1.9.1

Screenshots und Verträge geprüft und in nachweise/ zusammengeführt;
Binärdateien per .gitignore ausgeschlossen (vertraulich, Kunden- und
Organisationsnummern, Größe). Vertragsübersicht mit Fassungen, Daten und
Drittlandgrundlagen. Versandfassung: DPF-Status Cloudflare vom 13.10.2026,
OpenAI-DPA unterzeichnet am 13.10.2026. Juli-Zahlen auf Live bestätigt.
Protokollzeile v1.9.0 im Git-Deploy-Dokument.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Kevin Adametz 2026-10-13 11:22:15 +00:00
parent 6647e420c8
commit 6c6015f960
7 changed files with 75 additions and 25 deletions

View file

@ -320,3 +320,4 @@ Ausfall des Anbieters keinen Deploy abbricht.
| 09.10.2026 | `v1.7.0` | Spamschutz für Kontakt-Widget und Registrierung (Cloudflare Turnstile, Inhaltsfilter mit Spam-Quarantäne, Namensregel bei der Registrierung). Bei nicht erreichbarem Cloudflare wird durchgelassen und markiert. Keine Migration. Vorher: Turnstile-Keys in der `.env`, Widget im Cloudflare-Dashboard mit allen drei Live-Hostnamen. Nach dem Deploy: Kontakt-Widget im Browser getestet, Betriebsüberwachung „Spamschutz (Cloudflare Turnstile)“ grün. `contact-messages:quarantine-spam`: 152 Anliegen in die Quarantäne, 130 offen (Rest per Sammelaktion), echte Korrekturanfragen blieben offen. `users:prune-bot-registrations` nach freigegebenem Probelauf ausgeführt, danach `USERS_PRUNE_BOT_REGISTRATIONS=true` und `config:cache`. |
| 09.10.2026 | Historie bereinigt | Die Produktiv-SQL-Dumps vom 23.04. (`dev/migration 2026/sql`, ~290 MB, Kundendaten) lagen seit `5b8bdf4` in der Historie und auf beiden Remotes. Mit `git filter-branch` aus allen Branches und Tags entfernt; Dateibäume und Commitzahlen aller 21 Refs unverändert, **alle Hashes neu** (Zuordnung alt → neu: [`commit-map-2026-10-09.txt`](../archive/commit-map-2026-10-09.txt)). Tags `v1.0.0`–`v1.7.0` neu gesetzt, gleicher Inhalt. Force-Push auf `origin` und `NAS`, Server-Abgleich nach G.7 (Server `size-pack` 33,4 MiB), Speicherbereinigung in Forgejo und auf dem NAS, keine weiteren Klone. Lokal zusätzlich drei Codex-Checkpoint-Refs entfernt, die noch auf die alte Historie zeigten; danach 33,5 MiB, beide Dump-Blobs nicht mehr vorhanden. Die betroffenen Live-Schlüssel waren bereits rotiert (Betreiber). Vorgehen allgemein in Abschnitt G. |
| 12.10.2026 | `v1.8.0` | Von `v1.7.0`, keine Migration, kein Asset-Diff. Sicherheitsseite mit „Geräte und Anmeldungen“, Breadcrumbs ohne Daten an GlitchTip (Livewire-Breadcrumbs aus), Löschfristen `activity_events` 395 / `api_usage_logs` 90 Tage (erster Lauf 04:05), Newsletter-API 410, Wortwahl „automatisiert geprüft“. Prüfung von außen: alle drei Domains melden Release `v1.8.0` (Meta-Tag der Fehlererfassung), robots.txt und Sitemaps hostkorrekt, Veröffentlichen-Seite mit neuem Text, GlitchTip ohne Einträge unter `v1.8.0`. `/health` mit Token nicht geprüft (lokales Token ≠ Live). Befund: „Qualitätsgeprüft“ stand noch in `config/domains.php` (Meta und Taglines) und im Tarifvorteil „Starter“ (Datenbank) → Hotfix `v1.8.1`. |
| 13.10.2026 | `v1.9.0` | Von `v1.8.1`, keine Migration, mit Asset-Diff. Boost-Label „Gebuchte Platzierung“ mit Erklärung, „Aktuell“ statt „Top-Auswahl“, Admin-Aktion „Boost beenden“, `audit:admins`. Deploy durch den Betreiber; danach auf Live Rollenprüfung BN-02 mit `audit:admins` (ein Admin-Konto mit Passkey und TOTP) und Test-Boost für die Screenshots des Anwaltspakets. Befund aus den Screenshots: auf Mobil verdeckt das Label den Bildnachweis → `v1.9.1`. |