CUT-01: Trockenlauf 1 - Entwicklung #276

Merged
patrick merged 5 commits from feature/cut-01-trockenlauf-1-entwicklung into main 2026-10-14 23:16:03 +02:00
5 Commits
Author SHA1 Message Date
patrickandClaude Sonnet 5 7f37126049 CUT-01: Dokubegruendung DOK-03-Abhaengigkeit korrigieren (COR-02 statt COR-03)
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (pull_request) Canceled after 0s
Core-Schnittstellen-Vertragstests / contract-tests (pull_request) Canceled after 0s
Archive-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
CI / Web (dms-browser) (pull_request) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Canceled after 0s
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (pull_request) Canceled after 0s
CI / Web (shl) (pull_request) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (pull_request) Canceled after 0s
Mail-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
Supply-Chain-Scan (npm) / npm-audit (pull_request) Canceled after 0s
Core-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
RBAC-Rollenhierarchie-Pflichtgate / rbac-policy-invariant (pull_request) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (pull_request) Canceled after 0s
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 23:15:51 +02:00
patrickandClaude Sonnet 5 f1bf748fa8 CUT-01: trockenlauf-1-entwicklung - pruefprotokoll
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
Archive-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Canceled after 0s
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Canceled after 0s
CI / Web (dms-browser) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (pull_request) Canceled after 0s
CI / Web (shl) (pull_request) Canceled after 0s
Core-Schnittstellen-Vertragstests / contract-tests (pull_request) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (pull_request) Canceled after 0s
Mail-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
Supply-Chain-Scan (npm) / npm-audit (pull_request) Canceled after 0s
Core-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
RBAC-Rollenhierarchie-Pflichtgate / rbac-policy-invariant (pull_request) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (pull_request) Canceled after 0s
Pruefprotokoll mit Ablaufplan und Abhaengigkeitsbegruendung,
Iterationsprotokoll (Laeufe 1.1-1.5 mit Korrekturen I-1 bis I-4,
Bestaetigungslaeufe 2.1/2.2), Zielwert/Ergebnis je Pruefung,
Anonymisierungsnachweis fuer Akzeptanzkriterium 3 und offenen Befunden
ohne Abbruch zur Uebergabe an CUT-02 und die Modul-Boards.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 20:57:45 +00:00
patrickandClaude Sonnet 5 936c66888f CUT-01: trockenlauf-1-entwicklung - iteration 2 bestaetigt
Zwei Bestaetigungslaeufe auf Commit 4fdbb9b ohne Codeaenderung dazwischen
(Laeufe 2.1 cut017f8b14 und 2.2 cut01d7d2a2), echter Postgres-Wegwerf-
Cluster auf Host 204: jeweils alle 31 Schritte ohne Abbruch, VAL-01 ohne
offenen Befund, VAL-02 ohne Hash-Abweichung, VAL-05 12/12 Logins,
CHK-01 ohne Befund, alle 15 Lauf-Datenbanken je Lauf wieder entfernt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 20:55:37 +00:00
patrickandClaude Sonnet 5 25812b47b8 CUT-01: trockenlauf-1-entwicklung - korrekturen aus iteration 1
Iteration 1 (Laeufe 1.1-1.5 gegen den Wegwerf-Cluster auf Host 204):

- I-1 (Lauf 1.1, MAP-01/MAP-03): Export erwartete tenants.domain und
  users.name, die Altsysteme fuehren tenant_domains bzw. users.username.
  Behoben ueber Export-Sichten (Schritt EXP-01) statt Aenderung der
  MAP-Pakete.
- I-2 (Lauf 1.2, MAP-02/MAP-03): einseitige Mandanten (nur in einem
  Altsystem) wurden von InsertCandidates verworfen und von usermatch
  uebersprungen und waeren nie migriert worden. Jetzt pending in der Map
  (Freigabe bleibt Pflicht), Benutzer als einseitige Kandidaten.
- I-3 (Lauf 1.3, COR-03): dokumentierte archivmail-Rollen domain_admin,
  auditor, domain_auditor ohne Core-Rolle. Ergaenzt (Pruefer -> user),
  superadmin bleibt fail-closed.
- I-4 (Lauf 1.4, TAR-01 -> MAI-03): retention_objects ohne
  data_subject_ref, offene DSGVO-Anfragen liefen ins Leere. TAR-01
  uebernimmt die betroffene Person aus der Quelle.

Lauf 1.5 lief vollstaendig durch. Protokolle unter docs/cut-01/iteration-1.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 20:53:52 +00:00
patrickandClaude Sonnet 5 8f75ab3b37 CUT-01: trockenlauf-1-entwicklung - orchestrator erster entwurf
Orchestrator (internal/cutoverorchestrator, cmd/cutover-dryrun) fuer den
Trockenlauf aller Migrationspakete gegen eine vollstaendig synthetische
Testkopie: Ablaufplan mit Abhaengigkeitspruefung, Abbruch beim ersten
Fehler, JSON-/Textprotokoll mit Redigierung von Zugangsdaten, Generator
und Anonymisierungsnachweis der Testkopie.

Modulstufen (dms/mail/archive/workflow cmd/cutover-stage) liefern die
Quell-Adapter und rufen die bestehenden Migratoren der jeweiligen Module
auf, da deren internal-Pakete aus dem Root-Modul nicht importierbar sind.
migrationdocument.DocumentID macht die DOK-01-Ziel-ID fuer TAR-01/TAR-02
im Archive-Modul verfuegbar.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 20:45:03 +00:00