DOK-04: Pruefprotokoll mit realen Testlaeufen gegen dms_dev auf Host 204
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (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 / 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
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>
This commit is contained in:
patrickandClaude Sonnet 5 committed 2026-10-14 16:47:52 +02:00
1 parent 57c8a2f549
commit 834407aaa8
1 file changed
+62
+62
View File
@@ -0,0 +1,62 @@
# DOK-04 – Prüfprotokoll
Migration: `dms/internal/migrationmetadata` — Custom Fields (MET-02,
`metadata_fields`/`metadata_field_versions`) und Klassifikationsvorlagen
(MET-04, `document_types`/`document_type_fields`) aus archivdms, inklusive
bereits befüllter Feldwerte an durch DOK-01 migrierten Dokumenten
(`document_metadata_values`). Keine neue SQL-Migration nötig — alle
Zieltabellen existieren bereits (MET-02/MET-04 sind fertig gemergt).
## Prüfung 1 — Stichprobe von 5 synthetischen Vorlagen/Feldern vor/nach Migration
Synthetische Quelle (`dms/internal/migrationmetadata/migrate_test.go`,
`newSyntheticSource`): 5 Custom Fields (Text/Datum/Zahl/Bool/Auswahl, je mit
Pflichtkennzeichen, Standardwert bzw. Validierungsregel) und 5 Klassifikations-
vorlagen (Name, Aufbewahrungsklasse, gebündelte Felder).
Ausführung: `go test ./internal/migrationmetadata/... -run TestMigrateAll_AkzeptanzkriteriumIdentischeDefinition -v`
gegen `dms_dev` (Host 192.168.1.204).
Zielwert: Label, Feldtyp und Pflichtkennzeichen jedes der 5 Felder sowie Name,
Aufbewahrungsklasse und Anzahl gebündelter Felder jeder der 5 Vorlagen stimmen
nach der Migration exakt mit der Quelle überein.
Ergebnis: **PASS** (`TestMigrateAll_AkzeptanzkriteriumIdentischeDefinition`,
0,29s, 2026-10-14).
## Prüfung 2 — Feldwerte einer Stichprobe migrierter Dokumente gegen Quelle
Synthetische Quelle: 3 Feldwerte an 2 synthetischen Dokumenten, deren IDs
über dieselbe deterministische Ableitung (`deriveUUID("document", ...)`) wie
in DOK-01 erzeugt werden — simuliert den Zustand nach einer vorangegangenen
DOK-01-Dokumentenmigration.
Ausführung: `go test ./internal/migrationmetadata/... -run TestMigrateAll_AkzeptanzkriteriumFeldwerteErhalten -v`
gegen `dms_dev`.
Zielwert: alle 3 Feldwerte sind nach der Migration unter der korrekten
Dokument-/Feld-ID-Kombination mit identischem Wert vorhanden.
Ergebnis: **PASS** (`TestMigrateAll_AkzeptanzkriteriumFeldwerteErhalten`,
0,25s, 2026-10-14).
## Zusatzprüfung — Wiederholbarkeit
`TestMigrateAll_AkzeptanzkriteriumWiederholbar`: ein zweiter Lauf gegen
dieselbe Quelle migriert 0 neue Felder/Vorlagen/Werte und erzeugt keine
Duplikate (deterministische IDs, `ON CONFLICT DO NOTHING`).
Ergebnis: **PASS** (0,25s, 2026-10-14).
## Regressionsprüfung
`go build ./internal/migrationmetadata/...`, `go vet ./internal/migrationmetadata/...`
sowie die Bestandstests `./internal/metadatafield/...` und
`./internal/documenttype/...` liefen nach der Änderung unverändert grün
(10 Tests, alle PASS) — keine Rückwirkung auf MET-02/MET-04 selbst.
## Umgebung
Host 192.168.1.204 (Wegwerf-Checkout `/root/dok04-work-<timestamp>`, nach
Testlauf entfernt), DB `dms_dev`, Go 1.26.5 / Postgres 17.10. Ausschließlich
synthetische Testfixtures, keine echten archivdms-Daten.