docs(compliance): Dokumentation auf Stand P-01b und P-01c aktualisiert (0.8.74)
Some checks failed
Deploy Development / deploy (push) Successful in 39s
Test Suite / pytest-backend (push) Successful in 33s
Test Suite / lint-backend (push) Successful in 0s
Test Suite / build-frontend (push) Successful in 18s
Test Suite / playwright-tests (push) Failing after 58s

- compliance-implementation.md: P-01c um copy-as-draft (0.8.72) und jsPDF
  + Abschnitts-Sortierung/-Einfuegen (0.8.74) ergaenzt; Testzusammenfassung
  auf 17 Playwright-Tests aktualisiert; Versionheader 0.8.74
- compliance-roadmap.md: App-Version 0.8.74; P-01-Blocker-Beschreibung
  vollstaendig (alle technischen Faehigkeiten); P-01c-Erweiterungen in
  Abschlussliste; Schnellreferenz aktualisiert
- compliance-package-register.md: P-01 Letzter Stand auf 0.8.74; Verweise
  und Hinweise ergaenzt (copy-as-draft, jsPDF, Sortierung); Fortschritt 0.8.74
- compliance-audit.md: Amendment §14.2 und §14.3 mit aktuellem Umsetzungsstand
  P-01/P-01b/P-01c; historische Befunde unveraendert

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Lars 2026-05-10 22:17:51 +02:00
parent 456ead72b6
commit aff3020b13
4 changed files with 89 additions and 27 deletions

View File

@ -467,19 +467,21 @@ if os.getenv("ALLOW_PUBLIC_MEDIA_STATIC", "").strip().lower() in ("1", "true", "
### 14.2 Fehlende rechtliche Dokumentation ### 14.2 Fehlende rechtliche Dokumentation
| Dokument | Status | | Dokument | Status (Audit 2026-05-09) | Stand 2026-05-10 |
|----------|--------| |----------|--------------------------|------------------|
| Impressum | ❌ Keine Seite, kein Inhalt, keine Route | | Impressum | ❌ Keine Seite, kein Inhalt, keine Route | ⚠️ Route + Platzhalter vorhanden; Inhalt durch Betreiber/Rechtsanwalt ausstehend |
| Datenschutzerklärung | ❌ | | Datenschutzerklärung | ❌ | ⚠️ Route + Platzhalter vorhanden; Inhalt ausstehend |
| Nutzungsbedingungen / AGB | ❌ | | Nutzungsbedingungen / AGB | ❌ | ⚠️ Route + Platzhalter vorhanden; Inhalt ausstehend |
| Medienrichtlinie / Community-Regeln | ❌ | | Medienrichtlinie / Community-Regeln | ❌ | ⚠️ Route + Platzhalter vorhanden; Inhalt ausstehend |
| Verzeichnis der Verarbeitungstätigkeiten (VVT) | ❌ | | Verzeichnis der Verarbeitungstätigkeiten (VVT) | ❌ | ❌ offen (Betreiber-Aufgabe) |
| AV-Verträge mit Auftragsverarbeitern | ❌ | | AV-Verträge mit Auftragsverarbeitern | ❌ | ❌ offen (Betreiber-Aufgabe) |
| Backup-Konzept schriftlich | ❌ | | Backup-Konzept schriftlich | ❌ | ❌ offen (Betreiber-Aufgabe) |
> **Amendment 2026-05-10:** Routen und Platzhalterseiten implementiert (P-01, 0.8.69); Mobile/PWA via `/settings/legal` (P-01b, 0.8.70); Admin-konfigurierbare Rechtstexte mit DB-Versionierung, Superadmin-UI, PDF-Download, Abschnitts-Editor (P-01c, 0.8.710.8.74). KRIT-01 bleibt offen bis zur Veröffentlichung juristisch geprüfter Inhalte.
### 14.3 Fehlende Frontend-Routen ### 14.3 Fehlende Frontend-Routen
In `frontend/src/App.jsx` fehlen: In `frontend/src/App.jsx` fehlen (Stand Audit 2026-05-09):
- `/impressum` - `/impressum`
- `/datenschutz` - `/datenschutz`
- `/nutzungsbedingungen` - `/nutzungsbedingungen`
@ -487,6 +489,8 @@ In `frontend/src/App.jsx` fehlen:
Alle müssen **vor der Authentifizierung** erreichbar und in der PWA verfügbar sein. Alle müssen **vor der Authentifizierung** erreichbar und in der PWA verfügbar sein.
> **Amendment 2026-05-10 (P-01, Version 0.8.69):** Alle vier Routen sind implementiert und ohne Auth erreichbar. Links in LoginPage-Footer, DesktopSidebar-Footer und `/settings/legal` (P-01b). Migrationsnummer der Datenbank: bis 046 geprüft (Audit-Scope). Migration 047 (legal_documents) wurde außerhalb des Audit-Zeitfensters angelegt — siehe `docs/compliance-implementation.md` §P-01c.
--- ---
## 15. Testanalyse ## 15. Testanalyse

View File

@ -3,7 +3,7 @@
**Erstellt:** 2026-05-09 **Erstellt:** 2026-05-09
**Zuletzt aktualisiert:** 2026-05-10 **Zuletzt aktualisiert:** 2026-05-10
**Audit-Basis:** `docs/compliance-audit.md` **Audit-Basis:** `docs/compliance-audit.md`
**App-Version nach Umsetzung:** 0.8.71 **App-Version nach Umsetzung:** 0.8.74
--- ---
@ -111,6 +111,49 @@ Tabelle `legal_documents`: versionierte Rechtstexte mit Workflow `draft → publ
--- ---
### P-01c Erweiterung — Als-Entwurf-kopieren ✅
**Status:** Umgesetzt (2026-05-10, Version 0.8.72) — Ergänzung zu P-01c
**Betroffene Dateien:**
- `backend/routers/legal_documents.py` — Neuer Endpoint `POST /api/admin/legal-documents/{id}/copy-as-draft`
- `frontend/src/utils/api.js``copyLegalDocumentAsDraft(id)`
- `frontend/src/pages/AdminLegalDocumentsPage.jsx` — „Als Entwurf kopieren"-Button in der Dokumentliste
**Technische Änderung:**
Neuer Superadmin-Endpoint kopiert `title` und `content_sections` eines bestehenden Dokuments in einen neuen Entwurf. Die Versionsnummer wird dabei automatisch inkrementiert (letztes Dokument dieses Typs + 1). Status ist immer `draft`. Ermöglicht inkrementelle Überarbeitung ohne vollständige Neueingabe.
**Motivation:** Bei jeder fälligen Textanpassung mussten alle Abschnitte neu erfasst werden. Die Kopierfunktion ermöglicht, den letzten Stand zu übernehmen und nur die geänderten Abschnitte zu bearbeiten.
---
### P-01c Erweiterung — Echter PDF-Download + Abschnitts-Sortierung ✅
**Status:** Umgesetzt (2026-05-10, Version 0.8.74) — Ergänzung zu P-01c
**Betroffene Dateien:**
- `frontend/src/pages/AdminLegalDocumentsPage.jsx``generateLegalPdf()` via jsPDF, `SectionEditor` mit Sortierung
- `frontend/src/pages/LegalPage.jsx``generateLegalPdf()` via jsPDF, Button „PDF herunterladen"
- `frontend/package.json` — neues npm-Paket `jspdf`
**Technische Änderung — PDF:**
Ersetzt die bisherige `window.open()` + `window.print()`-Lösung (Browser-Druckdialog) durch `jsPDF`. Die Funktion `generateLegalPdf(doc)` erzeugt ein A4-PDF client-seitig mit:
- Titel (bold, 20 pt), Metazeile (Version + Gültigkeitsdatum), Trennlinie
- Abschnitte mit Heading (bold, 11 pt) und Fließtext (10 pt, `splitTextToSize` für automatischen Zeilenumbruch)
- Automatischer Seitenumbruch bei `y > 277 mm`
- Footer auf jeder Seite: „Shinkan Jinkendo | Exportiert am DD.MM.YYYY Seite X von Y"
- Direkter Dateidownload via `pdf.save('{document_type}_v{version}.pdf')`
Gilt sowohl für die Admin-Seite (Download aus der Dokumentliste, ruft `getLegalDocument(id)` für Volldokument ab) als auch für `LegalPage.jsx` (öffentlich, nur bei veröffentlichten Dokumenten).
**Technische Änderung — Abschnitts-Sortierung und Einfügen:**
`SectionEditor` in `AdminLegalDocumentsPage.jsx` erhält:
- ▲/▼-Buttons pro Abschnitt (deaktiviert an den Rändern) — Reihenfolge per Array-Swap
- `InsertButton` zwischen jedem Abschnitt (inkl. vor dem ersten) — fügt leeren Abschnitt an beliebiger Stelle per `splice` ein
- Kein Drag-and-Drop-Framework — reine React-State-Manipulation
---
### P-03 Papierkorb-Retention-Job aktivieren ✅ ### P-03 Papierkorb-Retention-Job aktivieren ✅
**Status:** Umgesetzt **Status:** Umgesetzt
@ -304,7 +347,7 @@ allow_headers=["Content-Type", "X-Auth-Token", "X-Active-Club-Id"],
--- ---
## Test-Zusammenfassung (Stand 0.8.69) ## Test-Zusammenfassung (Stand 0.8.74)
``` ```
tests/test_auth_password_reset_minlength.py 7 passed (neu, P-05b) tests/test_auth_password_reset_minlength.py 7 passed (neu, P-05b)
@ -317,9 +360,16 @@ Fehlgeschlagener Test: test_list_media_assets_invalid_lifecycle_400
→ Pre-existing: benötigt laufenden PostgreSQL-Container (Hostname "postgres") → Pre-existing: benötigt laufenden PostgreSQL-Container (Hostname "postgres")
→ Bestand bereits vor allen Compliance-Änderungen (verifiziert per git stash) → Bestand bereits vor allen Compliance-Änderungen (verifiziert per git stash)
Playwright E2E (dev-smoke-test.spec.js): 14 passed (inkl. 5 neue P-01-Tests) Playwright E2E (dev-smoke-test.spec.js): 17 passed (inkl. P-01c-Tests)
→ P-01: 4× Route ohne Auth + Platzhalterhinweis + Reload, 1× Login-Links → P-01: 4× Route ohne Auth + Platzhalterhinweis + Reload, 1× Login-Links
→ P-01b: 3× /settings/legal (Link in Einstellungen, Überschrift, Rechtstext-Links)
→ P-01c: 3× Admin-Rechtstexte (Seitenladung, Route /admin/legal-documents, Admin-Nav)
→ P-12: sessionStorage-Bereinigung (grün) → P-12: sessionStorage-Bereinigung (grün)
Anmerkung jsPDF (0.8.74):
→ PDF-Download via pdf.save() ist ein Browser-Download, kein Server-Request.
→ Kein Backend-Test möglich; funktional im Browser verifizierbar.
→ Playwright-E2E-Test erfordert laufenden Dev-Server (npx playwright test).
``` ```
--- ---

View File

@ -3,7 +3,7 @@
**Typ:** Kanonisches Referenzdokument **Typ:** Kanonisches Referenzdokument
**Erstellt:** 2026-05-10 **Erstellt:** 2026-05-10
**Basisdokument:** `docs/compliance-audit.md` (Initial-Audit 2026-05-09, App-Version 0.8.65) **Basisdokument:** `docs/compliance-audit.md` (Initial-Audit 2026-05-09, App-Version 0.8.65)
**Letzte Aktualisierung:** 2026-05-10 (App-Version 0.8.71) **Letzte Aktualisierung:** 2026-05-10 (App-Version 0.8.74)
--- ---
@ -32,9 +32,9 @@
| **Findings** | KRIT-01 | | **Findings** | KRIT-01 |
| **Etappe** | 1 | | **Etappe** | 1 |
| **Status** | ⚠️ partially implemented | | **Status** | ⚠️ partially implemented |
| **Letzter Stand** | Technischer Teil umgesetzt (2026-05-10, Version 0.8.71, inkl. P-01b + P-01c): Routen `/impressum`, `/datenschutz`, `/nutzungsbedingungen`, `/medienrichtlinie` öffentlich erreichbar ohne Auth. Platzhalterseiten mit strukturierten Pflichtfeldern und sichtbarem Muster-Hinweis. Links in LoginPage, DesktopSidebar und `/settings/legal` (Mobile/PWA, P-01b). Admin-konfigurierbare Rechtstexte mit Versionierung + Publish-Workflow (DB 047, Superadmin-UI `/admin/legal-documents`, P-01c). **Juristisch geprüfte Inhalte fehlen noch — Betreiber + Rechtsanwalt erforderlich. KRIT-01 bleibt offen bis zur Veröffentlichung echter Texte.** | | **Letzter Stand** | Technischer Teil vollständig umgesetzt (2026-05-10, Version 0.8.74, inkl. P-01b + P-01c + Erweiterungen): Routen `/impressum`, `/datenschutz`, `/nutzungsbedingungen`, `/medienrichtlinie` öffentlich erreichbar ohne Auth. Platzhalterseiten mit strukturierten Pflichtfeldern und sichtbarem Muster-Hinweis. Links in LoginPage, DesktopSidebar und `/settings/legal` (Mobile/PWA, P-01b, 0.8.70). Admin-konfigurierbare Rechtstexte mit Versionierung + Publish/Archive-Workflow (DB 047, Superadmin-UI `/admin/legal-documents`, P-01c, 0.8.71). Als-Entwurf-kopieren: `POST /api/admin/legal-documents/{id}/copy-as-draft` (0.8.72). Echter PDF-Download via jsPDF (direkter Dateidownload, A4, Seitenumbruch, Footer), Abschnitte sortieren (▲/▼) und an beliebiger Stelle einfügen (0.8.74). **Juristisch geprüfte Inhalte fehlen noch — Betreiber + Rechtsanwalt erforderlich. KRIT-01 bleibt offen bis zur Veröffentlichung echter Texte.** |
| **Verweise** | `docs/compliance-audit.md` §14.2, §17, §19.1; `docs/compliance-implementation.md` §P-01, §P-01b, §P-01c; `frontend/src/pages/LegalPage.jsx`; `frontend/src/pages/SettingsLegalPage.jsx`; `frontend/src/pages/AdminLegalDocumentsPage.jsx`; `backend/routers/legal_documents.py`; `backend/migrations/047_legal_documents.sql` | | **Verweise** | `docs/compliance-audit.md` §14.2, §17, §19.1; `docs/compliance-implementation.md` §P-01, §P-01b, §P-01c; `frontend/src/pages/LegalPage.jsx`; `frontend/src/pages/SettingsLegalPage.jsx`; `frontend/src/pages/AdminLegalDocumentsPage.jsx`; `backend/routers/legal_documents.py`; `backend/migrations/047_legal_documents.sql` |
| **Hinweise** | P-01b (Mobile-Erreichbarkeit) und P-01c (Admin-konfigurierbar) als Suffix-Pakete ergänzt und vollständig umgesetzt. Keine Nummerierungsabweichung. Scope Drift ausgeschlossen. | | **Hinweise** | P-01b (Mobile-Erreichbarkeit, 0.8.70) und P-01c (Admin-konfigurierbar, 0.8.71) als Suffix-Pakete ergänzt und vollständig umgesetzt. Erweiterungen: copy-as-draft (0.8.72), jsPDF + Abschnitts-Sortierung/-Einfügen (0.8.74). Keine Nummerierungsabweichung. |
--- ---
@ -424,9 +424,9 @@
## Fortschritt ## Fortschritt
**Implementiert (vollständig):** P-03, P-03b, P-04, P-05, P-05b, P-07, P-12, P-23, P-24 — 9 Pakete (inkl. 2 Nacharbeiten) **Implementiert (vollständig):** P-03, P-03b, P-04, P-05, P-05b, P-07, P-12, P-23, P-24 — 9 Pakete (inkl. 2 Nacharbeiten)
**Teilweise implementiert:** P-01 (technischer Teil; juristische Inhalte offen) — 1 Paket **Teilweise implementiert:** P-01 (technischer Teil vollständig inkl. P-01b, P-01c, copy-as-draft, jsPDF; juristische Inhalte offen) — 1 Paket
**Offen:** P-02, P-06, P-08, P-09, P-10, P-11, P-13, P-14, P-15, P-16, P-17, P-18, P-19, P-20, P-21, P-22 — 16 Pakete **Offen:** P-02, P-06, P-08, P-09, P-10, P-11, P-13, P-14, P-15, P-16, P-17, P-18, P-19, P-20, P-21, P-22 — 16 Pakete
**App-Version bei letzter Aktualisierung:** 0.8.69 **App-Version bei letzter Aktualisierung:** 0.8.74
**Letztes Umsetzungsdatum:** 2026-05-10 **Letztes Umsetzungsdatum:** 2026-05-10
--- ---

View File

@ -2,7 +2,7 @@
**Typ:** Lebendes Steuerungsdokument **Typ:** Lebendes Steuerungsdokument
**Erstellt:** 2026-05-10 **Erstellt:** 2026-05-10
**App-Version:** 0.8.71 **App-Version:** 0.8.74
**Zuletzt aktualisiert:** 2026-05-10 **Zuletzt aktualisiert:** 2026-05-10
--- ---
@ -29,13 +29,13 @@ Diese Roadmap ist nach jedem Re-Audit zu aktualisieren. Abweichungen von der bis
## 2. Aktueller Stand (2026-05-10) ## 2. Aktueller Stand (2026-05-10)
### App-Version: 0.8.71 ### App-Version: 0.8.74
### Teilweise umgesetzte Pakete ### Teilweise umgesetzte Pakete
| ID | Titel | Version | Offen | | ID | Titel | Version | Offen |
|----|-------|---------|-------| |----|-------|---------|-------|
| P-01 | Rechtstexte | 0.8.70 | Juristische Inhalte — Betreiber + Rechtsanwalt | | P-01 | Rechtstexte | 0.8.74 | Juristische Inhalte — Betreiber + Rechtsanwalt |
### Vollständig geschlossene Pakete ### Vollständig geschlossene Pakete
@ -52,8 +52,10 @@ Diese Roadmap ist nach jedem Re-Audit zu aktualisieren. Abweichungen von der bis
| P-24 | CORS einschränken (Methoden + Header) | 0.8.66 | | P-24 | CORS einschränken (Methoden + Header) | 0.8.66 |
| P-01b | _Nacharbeit:_ Mobile/PWA-Erreichbarkeit Rechtstexte via `/settings/legal` | 0.8.70 | | P-01b | _Nacharbeit:_ Mobile/PWA-Erreichbarkeit Rechtstexte via `/settings/legal` | 0.8.70 |
| P-01c | _Nacharbeit:_ Admin-konfigurierbare Rechtstexte (DB 047, Superadmin-UI, API) | 0.8.71 | | P-01c | _Nacharbeit:_ Admin-konfigurierbare Rechtstexte (DB 047, Superadmin-UI, API) | 0.8.71 |
| P-01c+ | _Erweiterung:_ Als-Entwurf-kopieren (`copy-as-draft`) | 0.8.72 |
| P-01c++ | _Erweiterung:_ Echter PDF-Download (jsPDF) + Abschnitts-Sortierung/-Einfügen | 0.8.74 |
**Vollständig abgeschlossen:** 7 Hauptpakete + 4 Nacharbeiten = 11 Umsetzungseinheiten **Vollständig abgeschlossen:** 7 Hauptpakete + 4 Nacharbeiten + 2 Erweiterungen = 13 Umsetzungseinheiten
**Teilweise umgesetzt (technisch):** P-01 **Teilweise umgesetzt (technisch):** P-01
### Offene Pakete (16) ### Offene Pakete (16)
@ -83,9 +85,15 @@ Die folgenden Pakete sind vor der Freigabe für allgemeine öffentliche Registri
### Blocker 1 — P-01: Rechtstexte ### Blocker 1 — P-01: Rechtstexte
**Finding:** KRIT-01 (Ordnungswidrigkeit, § 5 DDG) **Finding:** KRIT-01 (Ordnungswidrigkeit, § 5 DDG)
**Technischer Stand:** ⚠️ Routen und Platzhalterseiten vorhanden (Version 0.8.69); Mobile/PWA-Erreichbarkeit via `/settings/legal` ergänzt (P-01b, Version 0.8.70); Admin-konfigurierbare Rechtstexte mit DB-Versionierung und Superadmin-UI implementiert (P-01c, Version 0.8.71). Juristische Inhalte fehlen noch. **Technischer Stand:** ⚠️ Vollständige technische Infrastruktur vorhanden (Version 0.8.74):
**Warum noch offen:** Impressum, Datenschutzerklärung und AGB ohne geprüfte Inhalte genügen der gesetzlichen Pflicht nicht. Technisch kann der Superadmin jetzt Inhalte über `/admin/legal-documents` einpflegen — sobald juristisch geprüfte Texte vorliegen, werden diese veröffentlicht und die Platzhaltermarkierung verschwindet automatisch. - Routen `/impressum`, `/datenschutz`, `/nutzungsbedingungen`, `/medienrichtlinie` öffentlich ohne Auth erreichbar (P-01, 0.8.69)
**Nächster Schritt:** Rechtsanwalt beauftragt werden → Inhalte durch Betreiber über Admin-UI einpflegen → Veröffentlichen → Platzhaltermarkierung verschwindet automatisch. - Mobile/PWA-Erreichbarkeit via `/settings/legal` (P-01b, 0.8.70)
- Admin-konfigurierbare Rechtstexte: DB-Versionierung, Publish/Archive-Workflow, Superadmin-UI `/admin/legal-documents` (P-01c, 0.8.71)
- Als-Entwurf-kopieren: Bestehendes Dokument als Basis für neue Version übernehmen (0.8.72)
- Echter PDF-Download via jsPDF (direkter Dateidownload, kein Druckdialog), Abschnitte sortieren (▲/▼) und an beliebiger Stelle einfügen (0.8.74)
**Warum noch offen:** Impressum, Datenschutzerklärung und AGB ohne juristisch geprüfte Inhalte genügen der gesetzlichen Pflicht nicht. Die Superadmin-UI bietet alle Werkzeuge zum Einpflegen, Versionieren und Veröffentlichen von Texten — sobald Inhalte vorliegen, verschwindet der Platzhalter-Banner automatisch.
**Nächster Schritt:** Rechtsanwalt beauftragen → Inhalte über `/admin/legal-documents` einpflegen → Veröffentlichen → Platzhaltermarkierung verschwindet automatisch.
### Blocker 2 — P-06: Upload-Einwilligungsdialog ### Blocker 2 — P-06: Upload-Einwilligungsdialog
@ -215,7 +223,7 @@ Erst wenn diese Fragen beantwortet und als Spec dokumentiert sind, wird P-02 in
## 6. Nächste empfohlene Freigabe ## 6. Nächste empfohlene Freigabe
**P-01 + P-01b + P-01c technisch umgesetzt (Version 0.8.71).** Rechtstexte über Login, Desktop-Sidebar und Einstellungen → Rechtliches (Mobile/PWA) erreichbar. Superadmin kann jetzt über `/admin/legal-documents` versionierte Rechtstexte anlegen und veröffentlichen — sobald Inhalte eingepflegt sind, verschwindet der Platzhalter-Banner automatisch. Juristische Inhalte bleiben offen. **P-01 + P-01b + P-01c technisch vollständig umgesetzt (Version 0.8.74).** Rechtstexte über Login, Desktop-Sidebar und Einstellungen → Rechtliches (Mobile/PWA) erreichbar. Superadmin kann über `/admin/legal-documents` versionierte Rechtstexte anlegen, bearbeiten (inkl. Abschnitts-Sortierung und Einfügen an beliebiger Stelle), als Entwurf kopieren, veröffentlichen und als PDF herunterladen — sobald Inhalte eingepflegt sind, verschwindet der Platzhalter-Banner automatisch. Juristische Inhalte bleiben offen (Betreiber + Rechtsanwalt).
Die nächste technische Freigabe sollte **Etappe B** umfassen — beginnend mit dem kleinsten Paket: Die nächste technische Freigabe sollte **Etappe B** umfassen — beginnend mit dem kleinsten Paket:
@ -344,7 +352,7 @@ Diese Punkte liegen außerhalb des Code-Scopes und erfordern organisatorische Ma
| ~~P-12 allein~~ | ~~„Freigabe zur Umsetzung P-12: sessionStorage bei Logout bereinigen"~~ | ✅ historisch abgeschlossen (Version 0.8.68) | | ~~P-12 allein~~ | ~~„Freigabe zur Umsetzung P-12: sessionStorage bei Logout bereinigen"~~ | ✅ historisch abgeschlossen (Version 0.8.68) |
| ~~P-01 technisch~~ | ~~„Freigabe zur Umsetzung P-01: Rechtstexte technisch anlegen"~~ | ✅ historisch abgeschlossen (Version 0.8.69) | | ~~P-01 technisch~~ | ~~„Freigabe zur Umsetzung P-01: Rechtstexte technisch anlegen"~~ | ✅ historisch abgeschlossen (Version 0.8.69) |
| ~~P-01b~~ | ~~„Freigabe zur Umsetzung P-01b: Mobile/PWA-Zugriff auf Rechtliches"~~ | ✅ historisch abgeschlossen (Version 0.8.70) | | ~~P-01b~~ | ~~„Freigabe zur Umsetzung P-01b: Mobile/PWA-Zugriff auf Rechtliches"~~ | ✅ historisch abgeschlossen (Version 0.8.70) |
| ~~P-01c~~ | ~~„Freigabe zur Umsetzung P-01c: Admin-konfigurierbare Rechtstexte"~~ | ✅ historisch abgeschlossen (Version 0.8.71) | | ~~P-01c~~ | ~~„Freigabe zur Umsetzung P-01c: Admin-konfigurierbare Rechtstexte"~~ | ✅ historisch abgeschlossen (Version 0.8.71); Erweiterungen copy-as-draft (0.8.72) + jsPDF/Sortierung (0.8.74) |
| **P-06 (empfohlen)** | **„Freigabe zur Umsetzung P-06: Upload-Einwilligungsdialog"** | ⬅ nächste empfohlene Freigabe | | **P-06 (empfohlen)** | **„Freigabe zur Umsetzung P-06: Upload-Einwilligungsdialog"** | ⬅ nächste empfohlene Freigabe |
| Etappe B komplett | „Freigabe zur Umsetzung Etappe B: P-06, P-11, P-13" | offen | | Etappe B komplett | „Freigabe zur Umsetzung Etappe B: P-06, P-11, P-13" | offen |
| P-02 Spezifikation | „Freigabe zur Spezifikation P-02: DSGVO-Self-Service-Prozess" | offen | | P-02 Spezifikation | „Freigabe zur Spezifikation P-02: DSGVO-Self-Service-Prozess" | offen |