From 919b753f54f0684d14c764b082ad416fc58f59ee Mon Sep 17 00:00:00 2001 From: Kevin Adametz Date: Fri, 9 Oct 2026 12:45:09 +0000 Subject: [PATCH] dev: Historienbereinigung auf Remotes und Server abgeschlossen Co-Authored-By: Claude Opus 5.5 --- dev/betrieb/git-deploy.md | 2 +- dev/roadmap.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dev/betrieb/git-deploy.md b/dev/betrieb/git-deploy.md index b28e3f27..5799df46 100644 --- a/dev/betrieb/git-deploy.md +++ b/dev/betrieb/git-deploy.md @@ -266,7 +266,7 @@ Ausfall des Anbieters keinen Deploy abbricht. | 08.10.2026 | `v1.6.0` | Mit Migration (`users.sessions_revoked_at_ms`, Batch 22). Härtung aus Phase 4 des Sicherheitsaudits: „Andere Geräte abmelden“, IP-weites Login-Limit (20 Fehlversuche in 15 Minuten), dauerhafte Session-Sperrmarke, Passwörter ab 12 Zeichen mit Leak-Abgleich, CSP im Melde-Modus (`storage/logs/csp-*.log`), npm `shell-quote`/`source-map-js`. Nach dem Deploy: Header `content-security-policy-report-only` vorhanden, Umami- und GlitchTip-Host in `script-src`/`connect-src`. CSP-Log in einigen Tagen auswerten. | | 08.10.2026 | `v1.6.1` | Vorher auf dem Server `php8.4-imagick` installiert und FPM neu geladen: Die Erweiterung fehlte auf Live, Herkunftsprüfung und KI-Vorab-Check der Bilder liefen seitdem ins Leere. Release: Zeile „PHP-Erweiterung Imagick“ in der Betriebsüberwachung, gebaute Livewire-Anfragen von Scannern (GlitchTip 38, 39) als 400 statt 500/419, Browser-Filter für abgebrochene Alpine-Übergänge (GlitchTip 18). Keine Migration. Nach dem Deploy: Betriebsüberwachung „Imagick ist geladen“. | | 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`, danach einmalig der Server-Abgleich unten. | +| 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`, danach einmalig der Server-Abgleich unten — ausgeführt, Server `size-pack` 33,4 MiB. Lokal zusätzlich drei Codex-Checkpoint-Refs (`refs/codex/…`) entfernt, die noch auf die alte Historie zeigten. | ### Einmalig nach der Historienbereinigung (09.10.2026) diff --git a/dev/roadmap.md b/dev/roadmap.md index 8bbb6f6c..a781592a 100644 --- a/dev/roadmap.md +++ b/dev/roadmap.md @@ -55,7 +55,7 @@ oder Release versehen. | # | Punkt | Quelle | Aufwand | |---|---|---|---| -| ~~1.1~~ | ~~**Produktiv-SQL-Dumps in der Git-Historie.**~~ **Lokal bereinigt 09.10.2026** (`git filter-branch`, alle Branches und Tags, Inhalt unverändert, Hashes neu, Zuordnung in [`commit-map-2026-10-09.txt`](archive/commit-map-2026-10-09.txt)). **Offen:** Force-Push auf `origin` und `NAS`, Server-Abgleich ([git-deploy.md, Einmalig nach der Historienbereinigung](betrieb/git-deploy.md)), Speicherbereinigung in Forgejo und auf dem NAS, andere Klone neu klonen. | [Release-Plan R6.2](archive/release/entwicklungsplan-release.md) | S [LIVE] | +| ~~1.1~~ | ~~**Produktiv-SQL-Dumps in der Git-Historie.**~~ **Lokal bereinigt 09.10.2026** (`git filter-branch`, alle Branches und Tags, Inhalt unverändert, Hashes neu, Zuordnung in [`commit-map-2026-10-09.txt`](archive/commit-map-2026-10-09.txt)). Force-Push auf `origin` und `NAS` und Server-Abgleich erledigt 09.10.2026 (Server und lokal je 33 MiB statt 313 MiB, Dump-Blobs nicht mehr vorhanden). **Offen:** Speicherbereinigung in Forgejo und auf dem NAS anstoßen, andere Klone neu klonen. | [Release-Plan R6.2](archive/release/entwicklungsplan-release.md) | S [LIVE] | | 1.2 | **Schlüssel rotieren**, deren Rotation nirgends belegt ist: OpenAI, Google OAuth, Mail-Zugang (K2 vom 14.07.), Context7 (stand in `.mcp.json`, Git-Historie), Connektar-API-Keys (Legacy-Keys liefen über Test-Kanäle), MySQL-Root lokal (Git-Historie). | [optimize 14.07. K2](archive/optimize/optimize-14-07-2026.md), [Deploy v1.1.0 F](archive/betrieb/deploy-v1.1.0.md), [Sicherheitsplan](sicherheit/ENTWICKLUNGSPLAN-SICHERHEIT-2026-10-07.md) | S [EXTERN] | | 1.3 | **Dev-Container neu erstellen.** `docker-compose.yml` ist bereinigt, im laufenden Container sind `DB_CONNECTION` … `DB_PASSWORD` aber weiter als Umgebungsvariablen gesetzt — genau die Ursache des Datenverlusts vom 07.10. Danach lokalen `APP_KEY` reparieren (33 statt 44 Zeichen, ungültig) und Cloudflare-Testkeys in die lokale `.env`. | [Sicherheitsplan](sicherheit/ENTWICKLUNGSPLAN-SICHERHEIT-2026-10-07.md), [Spamschutz](sicherheit/ENTWICKLUNGSPLAN-SPAMSCHUTZ-2026-10-09.md) | S | | ~~1.4~~ | ~~**Lokale Dateien mit Personenbezug**~~ — **gelöscht 09.10.2026:** `dev/migration/` (7,4 GB), `dev/archive/migration-2026/sql/` (905 MB), `dev/api/`, `dev/newsletter/`, `dev/2026-10/`, `storage/app/private/restore-company-user-auto-2026-10-07.sql`. | [dev/README](README.md) | — |