Files
tessera-ctl/.planning/phases/16-ad-gruppen-synchronisation/16-UAT.md
T
schalli d7f8448be5
Tessera CI/CD / Lint & Type Check (push) Successful in 50s
Tessera CI/CD / Tests (push) Successful in 53s
Tessera CI/CD / Build & Publish Images (push) Successful in 2m13s
test(16): persist human verification items as UAT
2026-08-06 17:10:38 +02:00

3.9 KiB

status, phase, source, started, updated
status phase source started updated
testing 16-ad-gruppen-synchronisation
16-VERIFICATION.md
2026-08-06T15:15:00Z 2026-08-06T15:15:00Z

Current Test

number: 1 name: AD-Umbenennung behaelt dieselbe Kennung (Annahme A1) expected: | Eine im Active Directory umbenannte Gruppe behaelt ihre unveraenderliche objectGUID. Nur dann kann der Sync eine Umbenennung von einem Verschwinden unterscheiden — die Grundlage von Erfolgskriterium 3. awaiting: user response

Tests

1. AD-Umbenennung behaelt dieselbe Kennung (Annahme A1)

expected: Gegen ein echtes AD (ViCoTest, balios.ctl.local), read-only — eine importierte Gruppe suchen, ihre objectGUID notieren, die Gruppe im AD umbenennen, erneut suchen, GUID vergleichen. Die GUID muss identisch bleiben. result: [pending]

2. Binaerer Existenz-Filter liefert korrekte Treffer (Annahme A2)

expected: Gegen dasselbe AD, read-only — eine Suche mit dem byteweise escapten (objectGUID=...)-Binaerfilter absetzen. Eine weiterhin existierende Gruppe muss einen Treffer liefern, eine tatsaechlich geloeschte keinen. Ein negatives Ergebnis bei Test 1 ODER 2 ist ein Stopp-Grund fuer die Loeschsemantik aus D-05. result: [pending]

3. Umbenennung im AD zieht in Tessera nach (SC-3, end-to-end)

expected: Gruppe im echten AD umbenennen, Sync laufen lassen. Group.name und Group.ldapDn ziehen nach, der Zaehler groupsRenamed steigt, es findet KEINE Loesch-und-Neuanlage statt, Mitgliedschaften und Modulfreigaben bleiben erhalten, ein gesetzter interner Name bleibt unveraendert. result: [pending]

4. Loeschung im AD entfernt die Gruppe — Verschiebung nicht (SC-4, end-to-end)

expected: Gruppe im echten AD loeschen, Sync laufen lassen — die Tessera-Gruppe wird samt GroupMembership und ModuleGrant kaskadierend entfernt, und war sie die Standardgruppe, wandert die Markierung weiter. Zusaetzlich: eine lediglich in eine andere OU VERSCHOBENE Gruppe darf NICHT geloescht werden, sondern erzeugt eine Fehlerzeile (WR-03-Fix). result: [pending]

5. Browser: Import-Sektion auf /admin/ldap

expected: Sektion "AD-Gruppen importieren" — Discovery liefert nur Gruppen (keine OUs), Checkbox-Auswahl funktioniert, Import-Button traegt die Auswahlzahl und ist bei leerer Auswahl deaktiviert, bereits importierte Gruppen tragen das Badge und sind deaktiviert, Ergebnisblock erscheint, Fehlerzustaende sind sichtbar (nicht still). Deckt die als verification: backstop markierten UI-Zustaende ab: leer, ladend, Fehler, Overflow, lange Namen. result: [pending]

6. Browser: Gruppen-Dialog in allen drei Zustaenden

expected: /admin/groups — Anlegen zeigt den Hinweis mit Link zum LDAP-Bereich und keine AD-Auswahl mehr; eine lokale Gruppe laesst sich umbenennen; bei einer importierten Gruppe ist das Namensfeld sichtbar gesperrt mit Herkunftshinweis, die AD-DN-Zeile ist sichtbar, der interne Name speichert korrekt, und ein Fehler beim Speichern bleibt im Dialog sichtbar mit erhaltenen Eingaben. result: [pending]

7. Browser: Sync-Bericht und Freigabe-Matrix

expected: /admin/ldap — Sync ausloesen, alle drei Zahlenzeilen erscheinen auch bei Werten von 0; die gelbe Zeile zur verschobenen Standardmarkierung erscheint nur, wenn das tatsaechlich passiert ist; ein fehlgeschlagener Sync zeigt eine Fehlermeldung statt eines Null-Berichts. /admin/modules/grants — die Spaltensuche findet eine Gruppe sowohl unter ihrem internen als auch unter ihrem AD-Namen. result: [pending]

8. Nebenlaeufigkeit und Layoutstress (backstop-Aussagen)

expected: Kein beobachtbares Fehlverhalten bei parallelen Anfragen, bei Reihenfolgeunabhaengigkeit, bei Sortier-Divergenz zwischen AD-Name und internem Namen, und bei sehr langen Texten in Listen und Dialogen. Diese Aussagen sind bewusst als verification: backstop deklariert — kein Code-Beleg reicht zu ihrer Bestaetigung. result: [pending]

Summary

total: 8 passed: 0 issues: 0 pending: 8 skipped: 0 blocked: 0

Gaps