From ceb94e424bfd884303fd124aea4ded66f013d0f1 Mon Sep 17 00:00:00 2001 From: Schalli Date: Wed, 9 Sep 2026 08:26:15 +0200 Subject: [PATCH] =?UTF-8?q?test(admin):=20WINDOWS=20#14=20und=20#15=20abge?= =?UTF-8?q?nommen=20=E2=80=94=20Ledger=20ohne=20offene=20Punkte?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Abnahme im Browser auf alpha gegen das echte AD, nachdem der User die Container neu erstellt hatte. Voraussetzungen gemessen statt angenommen: Container tatsaechlich getauscht, Migration 20260909120000_user_email_optional angewandt, User.email is_nullable = YES. Die Migration lief beim API-Start automatisch mit. #15 — der Sync meldet jetzt "Erstellt: 4" statt vier stiller Fehlschlaege. Die kollidierenden Konten sind angelegt und aktiv, ohne Adresse; mbuntz behaelt als erster Anspruch seine. Der Bericht zeigt zwei verstaendliche deutsche Abschnitte statt Prisma-Text und englischer Meldungen. Die beiden Folgestellen vertragen Konten ohne Adresse: die Benutzerliste zeigt einen Gedankenstrich, und die Suche im Mitglieder-Dialog liefert die Konten sauber statt abzustuerzen — das war der eigentliche Fallstrick. #14 — die Matrix-Suche laesst die nicht getroffene Achse stehen. Alle vier Faelle geprueft: Modulname behaelt die Gruppenspalten, Gruppenname behaelt die Modulzeile, der AD-Name findet dieselbe Spalte wie der interne Name (Regression #6c intakt), und eine Suche ohne Treffer erklaert sich in einem verstaendlichen Satz. Am Active Directory wurde nichts veraendert; es wurde nur gelesen. Der fuer die Regressionsprobe gesetzte interne Name ist wieder geleert. Ledger danach: 0 offen, 15 behoben, 1 zurueckgestellt (#12 — es gibt intern kein Postfach fuer Ausschreibungs-Alarme). Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01FYZcd3SSmo14QTqWx2KKzU --- .planning/STATE.md | 14 +-- .planning/WINDOWS.md | 18 ++-- .../260909-ab3-UAT-2026-09-09.md | 102 ++++++++++++++++++ ...matrix-gruppensuche-behaelt-modulzeile.png | Bin 0 -> 18505 bytes .../w15-sync-bericht-deutsch.png | Bin 0 -> 77790 bytes 5 files changed, 118 insertions(+), 16 deletions(-) create mode 100644 .planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/260909-ab3-UAT-2026-09-09.md create mode 100644 .planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/uat-2026-09-09/w14-matrix-gruppensuche-behaelt-modulzeile.png create mode 100644 .planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/uat-2026-09-09/w15-sync-bericht-deutsch.png diff --git a/.planning/STATE.md b/.planning/STATE.md index 54ad1cb..9f2904f 100644 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -5,10 +5,10 @@ milestone_name: Plattform-Berechtigungen current_phase: 17 current_phase_name: eigene-ausschreibungs-quellen-je-nutzer status: verified -stopped_at: "Quick-Task 260909-ab3 abgeschlossen und verifiziert (8/8): Matrix-Suche leert die jeweils andere Achse nicht mehr (#14), AD-Konten mit doppelter Mailadresse werden ohne Adresse angelegt statt still zu scheitern, Sync-Bericht spricht Deutsch statt roher Prisma-Texte (#15). Dabei einen Sicherheitsfund geschlossen (T-Q3-01: bedingungsloses Ueberschreiben der Mailadresse haette Uebernahme einer fremden Adresse samt Passwort-Reset erlaubt) — per Rueckbau falsifiziert, nicht nur gruen getestet. User.email ist jetzt optional, die Migration laeuft beim naechsten API-Start automatisch mit (Dockerfile fuehrt migrate deploy aus). OFFEN: Browser-Abnahme der fuenf Punkte nach dem Neubau durch den User; #14 und #15 bleiben bis dahin im Ledger offen." -last_updated: "2026-09-09T09:30:00.000Z" +stopped_at: "WINDOWS #14 und #15 am 2026-09-09 auf alpha abgenommen und geschlossen. Der Sync legt die vier kollidierenden Konten jetzt an (ohne Adresse, erster Anspruch behaelt sie) und meldet das in verstaendlichem Deutsch statt in Prisma-Text; Benutzerliste und Mitgliedersuche vertragen Konten ohne Adresse. Die Matrix-Suche laesst die nicht getroffene Achse stehen, in allen vier geprueften Faellen, Regression #6c intakt. Das Ledger ist damit erstmals ohne offene Punkte: 15 behoben, 1 zurueckgestellt (#12, kein Alarm-Postfach vorhanden). Ebenfalls zurueckgestellt bleibt Abnahmeplan 02-05 (Mandantentrennung, intern zweitrangig)." +last_updated: "2026-09-09T08:30:00.000Z" last_activity: 2026-09-09 -last_activity_desc: WINDOWS #14 und #15 repariert und verifiziert, Sicherheitsfund T-Q3-01 mitgeschlossen — Browser-Abnahme offen +last_activity_desc: WINDOWS #14 und #15 im Browser abgenommen und geschlossen — Ledger erstmals ohne offene Punkte progress: total_phases: 17 completed_phases: 17 @@ -362,7 +362,7 @@ None yet. | 260805-fok | Standardgruppe bei Mandanten-Anlage + Startup-Reparatur — GroupsService.ensureDefaultGroup(tenantId) mit D-13-Waechter (null Gruppen, nicht fehlende Markierung), verdrahtet in TenantService.create und AdminSeedService.ensureDefaultGroupsForAllTenants; schliesst die Migrations-Backfill-Luecke auf frischen Installationen (Testserver: tenants=1 users=4 groups=0) | 2026-08-05 | 9d1254c,0d7d8a5 | [260805-fok-standardgruppe-bei-mandanten-anlage-und-](.planning/quick/260805-fok-standardgruppe-bei-mandanten-anlage-und-/) | | 21 | Verschluesselungsschluessel in den Beispiel-Umgebungsdateien dokumentiert: .env.example hatte gar keinen Eintrag, .env.prod.example nannte noch den alten Namen CALENDAR_ENCRYPTION_KEY. Compose-Teil des Backlog-Punkts war bereits mit 7bda56d erledigt (Vorgabewert raus, :?-Abbruch statt Ersatzwert) | 2026-08-11 | 379606e | — | | 260907-let | Verbindungstest fuer das Postfach im Ausschreibungs-Radar nachgeruestet (WINDOWS #16): POST /modules/tender-radar/email-config/test plus Knopf "Verbindung testen" im Formular unter Meine Quellen. Nutzt die vorhandene testConnection() beider Inbox-Provider, Muster vom DKV-Modul. userId ausschliesslich aus dem Auth-Kontext (eigener IDOR-Test mit Koeder-userId), leerer Benutzername oder leeres Passwort faellt auf die gespeicherten verschluesselten Zugangsdaten desselben Nutzers zurueck, keine Zugangsdaten in Logs oder Antwort. Verifiziert: 646/646 API- und 228/228 Web-Tests, beide Typpruefungen sauber, Sprachschluessel-Gate von rot auf gruen. Offen: Browser-Abnahme gegen ein echtes Postfach (Ende-der-Phase, braucht Neubau durch den User) | 2026-09-07 | c4db3b2 | [260907-let-verbindungstest-fuer-das-postfach-im-aus](./quick/260907-let-verbindungstest-fuer-das-postfach-im-aus/) | -| 260909-ab3 | Zwei Befunde aus der Live-Pruefung behoben. **#14:** Die Suche in der Freigaben-Matrix filterte beide Achsen mit demselben Begriff und leerte dadurch die jeweils andere — jetzt bleibt die nicht getroffene Achse vollstaendig stehen, die Gruppensuche unter internem UND AD-Namen (#6c) ist per Regressionstest gesichert. **#15:** AD-Konten mit bereits vergebener Mailadresse werden nun angelegt, nur ohne Adresse (Produktentscheidung des Users vom 2026-09-09; der erste Anspruch behaelt die Adresse), auf BEIDEN Wegen — Sync und Einzelimport. Rohe Prisma-Texte gehen nur noch ins Log, der Bericht zeigt drei verstaendliche deutsche Abschnitte. **Sicherheitsfund nebenbei geschlossen (T-Q3-01):** der Update-Zweig schrieb die Mailadresse bedingungslos um, ein Verzeichniseintrag haette so die Adresse einer echten Person uebernehmen und deren Passwort-Reset empfangen koennen. `User.email` ist jetzt optional (Migration geschrieben, laeuft beim naechsten API-Start automatisch mit). Verifiziert 8/8: 651/651 API- und 233/233 Web-Tests, beide Typpruefungen sauber; die Sicherheitspruefung wurde durch Rueckbau falsifiziert (ohne Besitzpruefung schlaegt der Test fehl). Offen: Browser-Abnahme nach dem naechsten Neubau | 2026-09-09 | 2167046 | [260909-ab3-matrix-suche-und-sync-meldungen-reparier](./quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/) | +| 260909-ab3 | Zwei Befunde aus der Live-Pruefung behoben. **#14:** Die Suche in der Freigaben-Matrix filterte beide Achsen mit demselben Begriff und leerte dadurch die jeweils andere — jetzt bleibt die nicht getroffene Achse vollstaendig stehen, die Gruppensuche unter internem UND AD-Namen (#6c) ist per Regressionstest gesichert. **#15:** AD-Konten mit bereits vergebener Mailadresse werden nun angelegt, nur ohne Adresse (Produktentscheidung des Users vom 2026-09-09; der erste Anspruch behaelt die Adresse), auf BEIDEN Wegen — Sync und Einzelimport. Rohe Prisma-Texte gehen nur noch ins Log, der Bericht zeigt drei verstaendliche deutsche Abschnitte. **Sicherheitsfund nebenbei geschlossen (T-Q3-01):** der Update-Zweig schrieb die Mailadresse bedingungslos um, ein Verzeichniseintrag haette so die Adresse einer echten Person uebernehmen und deren Passwort-Reset empfangen koennen. `User.email` ist jetzt optional (Migration geschrieben, laeuft beim naechsten API-Start automatisch mit). Verifiziert 8/8: 651/651 API- und 233/233 Web-Tests, beide Typpruefungen sauber; die Sicherheitspruefung wurde durch Rueckbau falsifiziert (ohne Besitzpruefung schlaegt der Test fehl). **Am 2026-09-09 im Browser abgenommen, beide Ledger-Punkte geschlossen** (Bericht: 260909-ab3-UAT-2026-09-09.md) | 2026-09-09 | 2167046 | [260909-ab3-matrix-suche-und-sync-meldungen-reparier](./quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/) | ## Deferred Items @@ -402,7 +402,7 @@ sind. Kein Anlass, sie vorher erneut vorzulegen. ## Session Continuity -Last session: 2026-09-09T09:30:00.000Z -Stopped at: Beide gefundenen Defekte repariert und verifiziert, gepusht. Es wartet nur noch die Browser-Abnahme durch den User nach dem naechsten Neubau (API + Web). Danach koennen #14 und #15 geschlossen werden. Zurueckgestellt bleiben #12 (kein Alarm-Postfach vorhanden) und Abnahmeplan 02-05 (Mandantentrennung, intern zweitrangig). +Last session: 2026-09-09T08:30:00.000Z +Stopped at: Nichts in Arbeit, nichts offen. Das Broken-Windows-Ledger ist leer (15 behoben, 1 zurueckgestellt). Zurueckgestellt: #12 (kein Postfach fuer Ausschreibungs-Alarme vorhanden) und Abnahmeplan 02-05 (Mandantentrennung, solange Tessera nur intern laeuft). Naechster Bau-Kandidat aus dem Backlog waere das Mandanten-Branding (eigenes Logo und eigene Farben je Mandant). Resume file: None -Last activity: 2026-09-09 - #14 und #15 repariert, T-Q3-01 geschlossen, verifiziert und gepusht +Last activity: 2026-09-09 - #14 und #15 abgenommen und geschlossen, Ledger ohne offene Punkte diff --git a/.planning/WINDOWS.md b/.planning/WINDOWS.md index e97af63..f22fc92 100644 --- a/.planning/WINDOWS.md +++ b/.planning/WINDOWS.md @@ -1,10 +1,10 @@ --- schema_version: 1 -open_count: 2 +open_count: 0 waived_count: 1 -fixed_count: 13 +fixed_count: 15 total_count: 16 -last_updated: 2026-09-09T05:20:34.736Z +last_updated: 2026-09-09T06:25:18.145Z --- # Broken Windows Ledger @@ -28,8 +28,8 @@ last_updated: 2026-09-09T05:20:34.736Z | 11 | 13 | unmet-truth | apps/api/src/tenders/tender-fingerprint.ts | | Cross-Source-Dedup kollabiert die Mehrzahl echter Duplikate nicht: tenderFingerprint() haengt [buyerName, title, cpvDivisionKey, deadlineKey, valueBucket] zu einem String und hasht ihn. Die Scraper-Adapter liefern cpvDivisions immer leer, DOE dagegen meist gefuellt - dieselbe Ausschreibung ergibt aus beiden Quellen verschiedene Fingerabdruecke, die Fingerprint-Stufe greift also gerade dort nicht, wo sie greifen soll. Steht als offener Rest in 13-VERIFICATION.md (status gaps_found, 3/4 Wahrheiten), war aber bisher nicht im Ledger und damit unsichtbar. Die frueher vermutete Ursache (Normalizer-Defaults) ist mit 9881005 geschlossen und nicht gemeint. | fixed | | 2026-09-07T08:09:04.188Z | 2026-09-07T08:42:34.794Z | | 12 | 14 | unrun-verify | .planning/phases/14-rss-email-alert-ingestion-module-rollout/14-03-PLAN.md | | 14-03 Task 4 (checkpoint human-verify, gate blocking): echtes Portal-Alert-Postfach ueber den Exchange/EWS-Weg anbinden und eine echte Alarm-Mail ingestieren. Zu belegen sind (a) die Mail erzeugt eine mandantenprivate Ausschreibung, (b) ein anderer Mandant sieht sie nicht, (c) der EWS-Body-Abruf liefert nicht-leeren, nicht-verstuemmelten Inhalt gegen einen echten Exchange-Server. Der handgeschriebene NTLM/SOAP-Weg ist nur gegen gemocktes httpntlm.post geprueft, nie gegen einen echten Server. Braucht ein echtes Postfach - vom User am 2026-07-24 bewusst zurueckgestellt. Stand bisher nur in 14-VERIFICATION.md (status human_needed), nicht im Ledger. | waived | Zurueckgestellt auf Entscheidung des Users vom 2026-09-09: es gibt intern derzeit KEIN Postfach, in das Ausschreibungs-Alarme hereinkommen — die Voraussetzung des Pruefpunkts existiert nicht. Ein frueheres Missverstaendnis hatte ein solches Postfach angenommen. Nachzuholen, sobald ein Alarm-Postfach eingerichtet ist: dann sind (a) mandantenprivate Ausschreibung aus der Mail, (b) Unsichtbarkeit fuer andere Mandanten und (c) nicht-leerer, nicht-verstuemmelter Nachrichtentext zu belegen. Teilentlastung vom 2026-09-09: der handgeschriebene NTLM/EWS-Weg wurde beim Test von #16 erstmals gegen den echten Exchange owa.ctl.de gemessen — Anmeldung, FindFolder und Ordneraufloesung funktionieren, belegt durch die echte ServerVersionInfo-Antwort (Exchange 15.2) im API-Protokoll. Der frueher als fragil markierte Verbindungsaufbau ist damit nicht mehr ungeprueft; offen bleibt allein das Einlesen einer echten Alarm-Mail. | 2026-09-07T08:09:04.406Z | 2026-09-09T05:20:34.736Z | | 13 | 1 | unmet-truth | apps/web/src/app/globals.css | | Tailwind-4-Dunkelvariante war nie an die .dark-Klasse gebunden: globals.css definierte die Farbtokens unter .dark, deklarierte aber kein @custom-variant dark. In Tailwind 4 haengt die dark:-Utility-Variante per Vorgabe an prefers-color-scheme, nicht an einer Klasse. Die App schaltet den Modus jedoch ueber next-themes mit attribute=class. Folge: JEDE dark:-Utility im Web-Quellcode (ueber 100 Vorkommen in 10+ Dateien - Status-, Warn- und Fehlerfarben, Hinweisboxen, Badges in der Administration) blieb wirkungslos, sobald der Nutzer im Portal auf dunkel stellte, waehrend sein Betriebssystem hell stand. Am laufenden System gemessen: html.dark gesetzt, prefers-color-scheme hell, dark:bg-gray-800 ergab transparent und dark:text-green-400 blieb ohne Wirkung. Unentdeckt geblieben, weil Hintergrund und Textfarbe ueber CSS-Variablen unter .dark laufen und deshalb korrekt umschalten. Aufgedeckt beim Logo-Einbau 260907-fgv, dessen Plattenkontur dark:stroke-white/25 aus demselben Grund nicht griff. | fixed | | 2026-09-07T09:32:24.960Z | 2026-09-07T09:35:49.019Z | -| 14 | 15 | unmet-truth | apps/web/src/app/(portal)/admin/modules/grants/page.tsx | | Die Suche in der Freigaben-Matrix macht die Matrix unbenutzbar, sobald sie etwas findet: derselbe Suchbegriff filtert BEIDE Achsen unabhaengig voneinander (page.tsx:137 filtert Module ueber m.name, page.tsx:145 filtert Gruppen ueber internalName/name). Ein Begriff, der nur eine Achse trifft, leert die andere vollstaendig — es bleibt nie ein Kaestchen zum Klicken uebrig. Am 2026-09-07 im Browser auf alpha gemessen: Suche 'Claude_VT' bzw. 'Vertrieb' laesst die Gruppenspalte stehen, entfernt aber jede Modulzeile; Suche 'Cert' laesst die Modulzeile stehen, entfernt aber jede Gruppenspalte. Damit scheitert genau der Zweck der Suche — in einer grossen Matrix die Kreuzung Modul x Gruppe finden. Belege: .planning/phases/16-ad-gruppen-synchronisation/uat-2026-09-07/befund-matrix-suche-gruppenname.png und befund-matrix-suche-modulname.png | open | | 2026-09-07T12:46:56.172Z | | -| 15 | 16 | unmet-truth | apps/api/src/ldap/ldap.service.ts | | Der Sync reicht rohe Techniktexte an den Administrator durch und laesst echte AD-Konten still liegen. Am 2026-09-07 auf alpha gegen das echte AD gemessen (Lauf 14:42): zehn Fehlerzeilen unter den drei Zahlenzeilen, davon zwei Sorten. (1) Vier Konten scheitern mit der woertlichen Prisma-Meldung 'Invalid prisma.user.create() invocation: Unique constraint failed on the fields: (email)' — CN=uvertrieb_ro, uvertrieb_rw, uvertrieb_ro_ss, usoftware_rw aus OU=CTL_PWS_Gruppen teilen sich offenbar eine E-Mail-Adresse. Sie werden dadurch NIE importiert, ohne dass der Administrator erfaehrt warum oder was er tun soll. (2) Sechs Eintraege melden englisch 'no username mapped (check sAMAccountName mapping)' — korrekt uebersprungene Kontakte/Ressourcen ohne sAMAccountName, aber die Meldung liest sich wie ein Fehler und ist nicht uebersetzt. Beides braucht eine verstaendliche deutsche Meldung; die E-Mail-Kollision zusaetzlich eine Entscheidung, ob solche Konten ohne E-Mail angelegt oder bewusst uebersprungen werden. Beleg: .planning/phases/16-ad-gruppen-synchronisation/uat-2026-09-07/windows6a-sync-zahlenzeilen.png | open | | 2026-09-07T12:47:32.058Z | | +| 14 | 15 | unmet-truth | apps/web/src/app/(portal)/admin/modules/grants/page.tsx | | Die Suche in der Freigaben-Matrix macht die Matrix unbenutzbar, sobald sie etwas findet: derselbe Suchbegriff filtert BEIDE Achsen unabhaengig voneinander (page.tsx:137 filtert Module ueber m.name, page.tsx:145 filtert Gruppen ueber internalName/name). Ein Begriff, der nur eine Achse trifft, leert die andere vollstaendig — es bleibt nie ein Kaestchen zum Klicken uebrig. Am 2026-09-07 im Browser auf alpha gemessen: Suche 'Claude_VT' bzw. 'Vertrieb' laesst die Gruppenspalte stehen, entfernt aber jede Modulzeile; Suche 'Cert' laesst die Modulzeile stehen, entfernt aber jede Gruppenspalte. Damit scheitert genau der Zweck der Suche — in einer grossen Matrix die Kreuzung Modul x Gruppe finden. Belege: .planning/phases/16-ad-gruppen-synchronisation/uat-2026-09-07/befund-matrix-suche-gruppenname.png und befund-matrix-suche-modulname.png | fixed | | 2026-09-07T12:46:56.172Z | 2026-09-09T06:25:17.928Z | +| 15 | 16 | unmet-truth | apps/api/src/ldap/ldap.service.ts | | Der Sync reicht rohe Techniktexte an den Administrator durch und laesst echte AD-Konten still liegen. Am 2026-09-07 auf alpha gegen das echte AD gemessen (Lauf 14:42): zehn Fehlerzeilen unter den drei Zahlenzeilen, davon zwei Sorten. (1) Vier Konten scheitern mit der woertlichen Prisma-Meldung 'Invalid prisma.user.create() invocation: Unique constraint failed on the fields: (email)' — CN=uvertrieb_ro, uvertrieb_rw, uvertrieb_ro_ss, usoftware_rw aus OU=CTL_PWS_Gruppen teilen sich offenbar eine E-Mail-Adresse. Sie werden dadurch NIE importiert, ohne dass der Administrator erfaehrt warum oder was er tun soll. (2) Sechs Eintraege melden englisch 'no username mapped (check sAMAccountName mapping)' — korrekt uebersprungene Kontakte/Ressourcen ohne sAMAccountName, aber die Meldung liest sich wie ein Fehler und ist nicht uebersetzt. Beides braucht eine verstaendliche deutsche Meldung; die E-Mail-Kollision zusaetzlich eine Entscheidung, ob solche Konten ohne E-Mail angelegt oder bewusst uebersprungen werden. Beleg: .planning/phases/16-ad-gruppen-synchronisation/uat-2026-09-07/windows6a-sync-zahlenzeilen.png | fixed | | 2026-09-07T12:47:32.058Z | 2026-09-09T06:25:18.145Z | | 16 | 14 | unmet-truth | apps/api/src/tenders/tenders.controller.ts | | Das Postfach im Ausschreibungs-Radar hat keinen Verbindungstest, obwohl die Faehigkeit fertig vorliegt. Beide Inbox-Provider bringen testConnection() mit (imap.provider.ts:343, exchange-inbox.provider.ts:294), und das DKV-Modul nutzt sie ueber POST /dkv/test-connection samt Knopf 'Verbindung testen' im InboxConfigForm. Beim Ausschreibungs-Radar fehlt beides: der Controller kennt zu email-config nur GET (:343) und PUT (:357), kein Test-Endpunkt, und das Formular unter Meine Quellen hat keinen Knopf. Historie geprueft: der Knopf war nie vorhanden (git log -S testConnection im tender-radar-Frontend ist leer), es ist also eine Luecke, keine Regression. Folge fuer den Betrieb: ein Tippfehler in der EWS-Endpunkt-URL oder falsche Zugangsdaten fallen erst auf, wenn dauerhaft nichts ankommt — und dann ist nicht unterscheidbar, ob die Verbindung scheitert oder schlicht keine Alarm-Mail da war. Das trifft besonders WINDOWS #12, dessen ganzer Zweck der Beleg des handgeschriebenen NTLM/SOAP-Wegs ist. Aufgefallen am 2026-09-07 beim Einrichten des Postfachs. | fixed | | 2026-09-07T13:22:33.916Z | 2026-09-09T05:20:09.851Z | ````json @@ -197,10 +197,10 @@ last_updated: 2026-09-09T05:20:34.736Z "file": "apps/web/src/app/(portal)/admin/modules/grants/page.tsx", "line": null, "description": "Die Suche in der Freigaben-Matrix macht die Matrix unbenutzbar, sobald sie etwas findet: derselbe Suchbegriff filtert BEIDE Achsen unabhaengig voneinander (page.tsx:137 filtert Module ueber m.name, page.tsx:145 filtert Gruppen ueber internalName/name). Ein Begriff, der nur eine Achse trifft, leert die andere vollstaendig — es bleibt nie ein Kaestchen zum Klicken uebrig. Am 2026-09-07 im Browser auf alpha gemessen: Suche 'Claude_VT' bzw. 'Vertrieb' laesst die Gruppenspalte stehen, entfernt aber jede Modulzeile; Suche 'Cert' laesst die Modulzeile stehen, entfernt aber jede Gruppenspalte. Damit scheitert genau der Zweck der Suche — in einer grossen Matrix die Kreuzung Modul x Gruppe finden. Belege: .planning/phases/16-ad-gruppen-synchronisation/uat-2026-09-07/befund-matrix-suche-gruppenname.png und befund-matrix-suche-modulname.png", - "status": "open", + "status": "fixed", "reason": "", "recorded_at": "2026-09-07T12:46:56.172Z", - "resolved_at": null + "resolved_at": "2026-09-09T06:25:17.928Z" }, { "id": 15, @@ -209,10 +209,10 @@ last_updated: 2026-09-09T05:20:34.736Z "file": "apps/api/src/ldap/ldap.service.ts", "line": null, "description": "Der Sync reicht rohe Techniktexte an den Administrator durch und laesst echte AD-Konten still liegen. Am 2026-09-07 auf alpha gegen das echte AD gemessen (Lauf 14:42): zehn Fehlerzeilen unter den drei Zahlenzeilen, davon zwei Sorten. (1) Vier Konten scheitern mit der woertlichen Prisma-Meldung 'Invalid prisma.user.create() invocation: Unique constraint failed on the fields: (email)' — CN=uvertrieb_ro, uvertrieb_rw, uvertrieb_ro_ss, usoftware_rw aus OU=CTL_PWS_Gruppen teilen sich offenbar eine E-Mail-Adresse. Sie werden dadurch NIE importiert, ohne dass der Administrator erfaehrt warum oder was er tun soll. (2) Sechs Eintraege melden englisch 'no username mapped (check sAMAccountName mapping)' — korrekt uebersprungene Kontakte/Ressourcen ohne sAMAccountName, aber die Meldung liest sich wie ein Fehler und ist nicht uebersetzt. Beides braucht eine verstaendliche deutsche Meldung; die E-Mail-Kollision zusaetzlich eine Entscheidung, ob solche Konten ohne E-Mail angelegt oder bewusst uebersprungen werden. Beleg: .planning/phases/16-ad-gruppen-synchronisation/uat-2026-09-07/windows6a-sync-zahlenzeilen.png", - "status": "open", + "status": "fixed", "reason": "", "recorded_at": "2026-09-07T12:47:32.058Z", - "resolved_at": null + "resolved_at": "2026-09-09T06:25:18.145Z" }, { "id": 16, diff --git a/.planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/260909-ab3-UAT-2026-09-09.md b/.planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/260909-ab3-UAT-2026-09-09.md new file mode 100644 index 0000000..89d5ea5 --- /dev/null +++ b/.planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/260909-ab3-UAT-2026-09-09.md @@ -0,0 +1,102 @@ +# Abnahme im Browser — 2026-09-09 + +Durchgefuehrt auf **alpha** (https://alpha.tessera.ctl.de) gegen das echte +Active Directory, nachdem der User die Container neu erstellt hatte. +Schliesst WINDOWS.md **#14** und **#15**. + +## Voraussetzungen gemessen, nicht angenommen + +| Pruefung | Ergebnis | +|----------|----------| +| Container wirklich getauscht | alle drei "Up About a minute" | +| Migration angekommen | `User.email` → `is_nullable = YES` | +| Migration in der Historie | `20260909120000_user_email_optional` | + +Die Migration lief beim Start der API automatisch mit — der Container fuehrt +`prisma migrate deploy` vor dem Start aus (`apps/api/Dockerfile`). Es war kein +zusaetzlicher Schritt noetig. + +## WINDOWS #15 — Sync-Bericht und Kontenanlage + +Ausgangslage vor dem Lauf: 409 Benutzer, **keiner** ohne Adresse, die vier +kollidierenden Konten **nicht vorhanden**. + +Nach `Jetzt synchronisieren`: + +``` +Erstellt: 4, aktualisiert: 408, deaktiviert: 0 +``` + +Darunter zwei neue, verstaendliche Abschnitte — kein Prisma-Text mehr, kein +Englisch: + +> Diese Konten wurden ohne E-Mail-Adresse angelegt, weil die Adresse bereits zu +> einem anderen Konto gehoert. Anmeldung und Zugriff funktionieren, nur +> Benachrichtigungen per E-Mail erreichen sie nicht. +> +> - uvertrieb_ro — Adresse bereits vergeben an ein anderes Konto: mbuntz@ctl.de +> - uvertrieb_rw — … +> - uvertrieb_ro_ss — … +> - usoftware_rw — … + +> Ohne Anmeldenamen uebersprungen — normal fuer Kontakte und Verteiler im +> Verzeichnis. +> +> - CN=backupprtg@albweb.de,CN=Users,DC=ctl,DC=local +> - CN=Rolf Staudenmayer,OU=CTL_Ressourcen,DC=ctl,DC=local +> - … + +**Datenbankstand danach** — die Produktentscheidung haelt exakt: + +| Konto | Adresse | +|-------|---------| +| mbuntz | mbuntz@ctl.de (erster Anspruch behaelt sie) | +| uvertrieb_ro | (keine) | +| uvertrieb_rw | (keine) | +| uvertrieb_ro_ss | (keine) | +| usoftware_rw | (keine) | + +Alle vier aktiv. Vorher wurden sie bei **jedem** Lauf still verworfen. + +Beleg: `uat-2026-09-09/w15-sync-bericht-deutsch.png` + +### Folgestellen, die an Konten ohne Adresse haetten scheitern koennen + +| Stelle | Ergebnis | +|--------|----------| +| Benutzerliste (`/admin/users`) | zeigt die Konten, Adressspalte `–`, kein Fehler | +| Suche im Mitglieder-Dialog | Suche nach `uvertrieb` liefert die drei Konten sauber — **kein Absturz** | + +Die zweite Stelle war der eigentliche Fallstrick: `GroupMembersModal` rief +`.toLowerCase()` ungeschuetzt auf der Adresse auf. Ohne den Schutz waere die +Mitgliedersuche mit dem ersten adresslosen Konto kaputtgegangen. + +## WINDOWS #14 — Suche in der Freigaben-Matrix + +Aufbau: zwei Gruppenspalten (`Alle Benutzer`, `Vertrieb Team` — interner Name +fuer die AD-Gruppe `Claude_VT`), eine Modulzeile (`Ausschreibungs-Radar`). + +| Sucheingabe | Erwartung | Ergebnis | +|-------------|-----------|----------| +| `Ausschreibung` (Modulname) | Modulzeile **und alle** Gruppenspalten bleiben | bestanden — beide Spalten samt Kaestchen da | +| `Vertrieb` (interner Gruppenname) | Spalte **und** Modulzeile bleiben | bestanden — Kaestchen anklickbar | +| `Claude_VT` (AD-Name) | dieselbe Spalte, Modulzeile bleibt | bestanden — **Regression #6c intakt** | +| `gibtesnicht123` | verstaendliche Leermeldung | „Kein Treffer fuer „gibtesnicht123" — weder bei den Modulen noch bei den Gruppen." | + +Vor der Reparatur leerte jede Suche die jeweils andere Achse, sodass nie ein +Kaestchen uebrig blieb. + +Beleg: `uat-2026-09-09/w14-matrix-gruppensuche-behaelt-modulzeile.png` + +## Zustand nach der Abnahme + +- Der interne Name `Vertrieb Team` wurde nur fuer die Regressionsprobe gesetzt + und danach wieder geleert. +- Die vier neu angelegten Konten bleiben bestehen — sie sind das Ergebnis des + Tests, kein Testartefakt, und gehoeren fachlich ins Verzeichnis. +- Am Active Directory wurde **nichts** veraendert; es wurde nur gelesen. + +## Ledger + +WINDOWS.md danach: **0 offen**, 15 behoben, 1 zurueckgestellt (#12 — es gibt +intern kein Postfach fuer Ausschreibungs-Alarme). diff --git a/.planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/uat-2026-09-09/w14-matrix-gruppensuche-behaelt-modulzeile.png b/.planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/uat-2026-09-09/w14-matrix-gruppensuche-behaelt-modulzeile.png new file mode 100644 index 0000000000000000000000000000000000000000..d13f645306ae53b33f1dbc1ca71c7dd80b60ac48 GIT binary patch literal 18505 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 PdW6CYmFI}3Zvy`Za>jc& literal 0 HcmV?d00001 diff --git a/.planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/uat-2026-09-09/w15-sync-bericht-deutsch.png b/.planning/quick/260909-ab3-matrix-suche-und-sync-meldungen-reparier/uat-2026-09-09/w15-sync-bericht-deutsch.png new file mode 100644 index 0000000000000000000000000000000000000000..ccc7c890a609fafe9d3c94bf91e4734151a20245 GIT binary patch literal 77790 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 KN0um>`Tq~2g)#O3 literal 0 HcmV?d00001