wiki/z-archive/post-cleanup-report-2026-04-12.md
ValueOn AG cf2e875968 uüd
2026-04-14 00:15:28 +02:00

6.5 KiB
Raw Blame History

Post-Cleanup Report: Entfernte API-Endpunkte

Datum: 2026-04-12
Scope: Suche nach verwaisten Referenzen auf die am selben Tag entfernten Routen und Endpunkte (siehe wiki/z-archive/unused-api-endpoints.md).


1. Zusammenfassung

Kategorie Funde Handlungsbedarf
Verwaiste Frontend-Komponenten (RBAC Export/Import) 3 Dateien Hoch — Code ruft gelöschte Backend-Endpunkte auf
Datenmodell-Referenz auf entfernten i18n-Endpunkt 1 Stelle Hochfrontend_options zeigt auf nicht mehr existierenden Pfad
Billing filter-values (User-View) 1 Stelle Kein — Endpunkt existiert noch (nur Admin-Variante entfernt)
Wiki-Dokumentation mit Verweisen auf gelöschte Module 1 Datei Niedrig — Doku-Aktualisierung
Analyse-Artefakte (CSV/TXT) 2 Dateien Keine — Einmalige Analyse-Skripte

2. Detaillierte Funde und Handlungsempfehlungen

2.1 RBAC Export/Import — Frontend-Code ohne Backend (HOCH)

Problem: Die gelöschte Route routeAdminRbacExport.py bediente die Endpunkte /api/mandates/{id}/rbac/export, /api/admin/rbac/global/export etc. Im Frontend existieren noch:

Datei Beschreibung
frontend_nyla/src/hooks/useRbacExportImport.ts Hook mit API-Calls zu /api/mandates/{id}/rbac/export, /api/admin/rbac/global/export, /api/features/instances/{id}/rbac/export, und den zugehörigen Import-Endpunkten
frontend_nyla/src/components/RbacExportImport/RbacExportImport.tsx UI-Komponente (Export-Button, Import-Upload, Vorschau, Ergebnis-Modal)
frontend_nyla/src/components/RbacExportImport/index.ts Re-Export
frontend_nyla/src/components/RbacExportImport/RbacExportImport.module.css Styles

Prüfung: Die Komponente RbacExportImport wird aktuell nirgendwo importiert oder eingebunden — sie ist toter Code.

Empfehlung:

  • Option A (empfohlen): Alle vier Dateien löschen (useRbacExportImport.ts, RbacExportImport.tsx, index.ts, RbacExportImport.module.css). Der Code ist vollständig verwaist.
  • Option B: Falls RBAC-Export/Import in Zukunft wieder gebraucht wird, die Dateien in einen _archive-Ordner verschieben.

2.2 Datenmodell datamodelUam.py — Verweis auf gelöschten i18n-Endpunkt (HOCH)

Problem: In gateway/modules/datamodels/datamodelUam.py (Zeile 246252) verweist das Feld language des User-Modells auf den entfernten Endpunkt:

"frontend_options": "/api/i18n/user-language-options"

Dieser Endpunkt (GET /user-language-options in routeI18n.py) wurde entfernt.

Auswirkung: Wenn das Frontend frontend_options dynamisch auflöst (z. B. im FormGenerator), wird der Select-Dropdown für die Sprachauswahl beim User-Profil leer bleiben oder einen 404-Fehler auslösen.

Empfehlung:

  • Prüfen, ob frontend_options tatsächlich dynamisch aufgelöst wird (FormGenerator-Logik).
  • Falls ja: Entweder den Endpunkt wiederherstellen oder frontend_options auf einen existierenden Endpunkt umleiten (z. B. GET /api/i18n/sets mit Mapping auf {value, label}-Format).
  • Falls nein (statische Anzeige): Den frontend_options-Wert durch eine statische Liste ersetzen oder entfernen.

2.3 Billing filter-values — Erledigt (2026-04-13)

Befund (alt): BillingDataView.tsx rief /api/billing/view/users/transactions/filter-values auf.

Update: Im Rahmen der Unified Filter API Migration (2026-04-13) wurde das gesamte /filter-values-Pattern eliminiert. BillingDataView.tsx nutzt jetzt GET /api/billing/view/users/transactions?mode=filterValues&column=xxx. Der separate Endpunkt existiert nicht mehr.


2.4 FormGeneratorTable — Unified Filter API (aktualisiert 2026-04-13)

Befund (alt): FormGeneratorTable.tsx baute generisch {apiEndpoint}/filter-values-URLs zusammen.

Update: Das /filter-values-Sub-Pfad-Pattern wurde komplett durch Query-Parameter auf dem Haupt-Endpunkt ersetzt:

  • GET {apiEndpoint}?mode=filterValues&column=xxx — Distinct-Werte für Spaltenfilter
  • GET {apiEndpoint}?mode=ids&pagination={filters} — Alle gefilterten IDs (für "Select All Filtered")

Alle separaten /filter-values-Endpunkte in Core-Routes und Feature-Routes (Trustee, RealEstate) wurden entfernt. Siehe wiki/b-reference/frontend-nyla/formgenerator.md für die aktuelle Dokumentation.


2.5 Wiki-Dokumentation — Verweis auf gelöschte routeSecurityAdmin.py (NIEDRIG)

Datei: wiki/b-reference/platform/database-architecture.md

In Zeile 251 und 270 wird routeSecurityAdmin.py als Admin-DB-Listing-Modul erwähnt.

Empfehlung: Die betroffenen Abschnitte aktualisieren — entweder den Verweis entfernen oder als „entfernt am 2026-04-12" markieren.


2.6 SharePoint folder-options — Funktioniert weiterhin

Befund: NeutralizationView.tsx und TrusteeExpenseImportView.tsx rufen GET /api/sharepoint/folder-options?connectionReference=... auf. Dieser Endpunkt wurde beibehalten — nur die alten Pfade mit /{connectionId}/... wurden entfernt.

Empfehlung: Kein Handlungsbedarf.


2.7 ClickUp — Funktioniert weiterhin

Befund: workflowApi.ts ruft GET /api/clickup/{connectionId}/teams/{teamId} auf. Dieser Endpunkt ist einer der fünf beibehaltenen Pfade.

Empfehlung: Kein Handlungsbedarf.


2.8 Analyse-Artefakte

Dateien:

  • gateway/scripts/import_analysis.csv
  • gateway/scripts/function_imports_analysis.txt

Diese enthalten Referenzen auf gelöschte Module, sind aber einmalige Analyse-Outputs.

Empfehlung: Optional löschen oder in z-archive verschieben, um Verwirrung zu vermeiden.


3. Priorisierte Aktionsliste

Prio Aktion Status
1 datamodelUam.py: frontend_options auf /api/i18n/codes umgestellt + FormGenerator-Mapping erweitert (code/id Fallback) Erledigt
2 Frontend: RbacExportImport-Komponente + Hook gelöscht (4 Dateien) Erledigt
3 Wiki: database-architecture.md aktualisiert (routeSecurityAdmin-Verweis entfernt) Erledigt
4 Analyse-Artefakte gelöscht (import_analysis.csv, function_imports_analysis.txt) Erledigt

4. Verifizierung

  • Gateway-Import-Test: python -c "import app; print('ok')" → Exit-Code 0, Ausgabe ok.
  • Keine Laufzeitfehler durch gelöschte Module (aiohttp/langchain_core-Fehler sind vorbestehend und betreffen optionale Features).
  • Kein Frontend-Code ruft die vollständig gelöschten Routen (Messaging, SecurityAdmin) auf.
  • Kein Bot/LLM-Code referenziert entfernte Endpunkte.