docs: 475 Architektur-Fehler — alle Frontend Components gelesen

This commit is contained in:
Agent Zero
2026-08-22 23:27:01 +02:00
parent 45bd511831
commit f9048ef073
+240
View File
@@ -3416,3 +3416,243 @@ Playwright E2E: 10 passed, 24 failed (BUG-011/012/013 — Mock-Daten und data-te
- **Problem:** 867 Zeilen — God Object. - **Problem:** 867 Zeilen — God Object.
- **Schweregrad:** Medium - **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt - **Status:** ⏳ Nicht gefixt
### ARCH-436: SuggestionCard.tsx — Hardcoded deutsche Strings ohne i18n
- **Datei:** frontend/src/components/ai/SuggestionCard.tsx:80
- **Problem:** `'✓ Ausgeführt'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-437: SuggestionSidebar.tsx — Hardcoded deutsche Strings
- **Datei:** frontend/src/components/ai/SuggestionSidebar.tsx:20
- **Problem:** `'Alle'`, `'Info'`, `'Warnung'`, `'Aktion'`, `'Erkenntnis'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-438: AIUIControlIndicator.tsx — Hardcoded deutsche Strings
- **Datei:** frontend/src/components/ai-ui-control/AIUIControlIndicator.tsx:70
- **Problem:** `'Navigation'`, `'Filter setzen'`, `'Kontakt öffnen'`, `'Dialog öffnen'`, `'Tab wechseln'`, `'Einstellungen ändern'` — hardcoded deutsch.
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-439: ImprovementPanel.tsx — Hardcoded deutsche Strings
- **Datei:** frontend/src/components/ai/ImprovementPanel.tsx:150
- **Problem:** `'Messen'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-440: ApprovalRequestBlock.tsx — Hardcoded englische Strings
- **Datei:** frontend/src/components/comm/blocks/ApprovalRequestBlock.tsx:25
- **Problem:** `'Approval Required'`, `'Approve'`, `'Reject'` — hardcoded englisch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-441: ContactCardBlock.tsx — Hardcoded deutsche Strings
- **Datei:** frontend/src/components/comm/blocks/ContactCardBlock.tsx:20
- **Problem:** `'Unbekannter Kontakt'`, `'Kontakt anzeigen'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-442: AudioBlock.tsx — Hardcoded deutscher String
- **Datei:** frontend/src/components/comm/blocks/AudioBlock.tsx:35
- **Problem:** `'Dauer:'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-443: KnowledgeCardBlock.tsx — Hardcoded englische Strings
- **Datei:** frontend/src/components/comm/blocks/KnowledgeCardBlock.tsx:20
- **Problem:** `'Knowledge'`, `'Confidence:'`, `'Open'` — hardcoded englisch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-444: MiniAppBlock.tsx — Hardcoded deutscher String
- **Datei:** frontend/src/components/comm/blocks/MiniAppBlock.tsx:80
- **Problem:** `'Keine Konfiguration'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-445: ProtectedRoute.tsx — /kein-zugriff hardcoded deutscher Pfad
- **Datei:** frontend/src/components/common/ProtectedRoute.tsx:25
- **Problem:** `<Navigate to="/kein-zugriff" replace />` — hardcoded deutscher Pfad.
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-446: PrintButton.tsx — Hardcoded deutscher String
- **Datei:** frontend/src/components/common/PrintButton.tsx:100
- **Problem:** `'Als PDF'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-447: ShareDialog.tsx — Hardcoded deutscher String
- **Datei:** frontend/src/components/common/ShareDialog.tsx:300
- **Problem:** `'Schließen'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-448: FolderPermissionDialog.tsx — Hardcoded deutscher String
- **Datei:** frontend/src/components/contacts/FolderPermissionDialog.tsx:280
- **Problem:** `'Schließen'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-449: ContactList.tsx — TODO P2-F18 hardcoded ALL_COLUMNS
- **Datei:** frontend/src/components/contacts/ContactList.tsx:2
- **Problem:** `// TODO: P2-F18 — Replace hardcoded ALL_COLUMNS with backend/manifest config` — hardcoded Spalten-Definition.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-450: FilterPanel.tsx — TODO P2-F10 hardcoded FIELD_DEFS
- **Datei:** frontend/src/components/contacts/FilterPanel.tsx:2
- **Problem:** `// TODO: P2-F10 — Replace hardcoded FIELD_DEFS with backend/manifest config` — hardcoded Feld-Definitionen.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-451: FilterPanel.tsx — Hardcoded deutscher String 'Fertig'
- **Datei:** frontend/src/components/contacts/FilterPanel.tsx:600
- **Problem:** `'Fertig'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-452: GroupPanel.tsx — TODO P2-F12 hardcoded GROUP_FIELDS
- **Datei:** frontend/src/components/contacts/GroupPanel.tsx:2
- **Problem:** `// TODO: P2-F12 — Replace hardcoded GROUP_FIELDS with shared constant` — hardcoded Gruppierungs-Felder.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-453: GroupPanel.tsx — Hardcoded deutscher String 'Fertig'
- **Datei:** frontend/src/components/contacts/GroupPanel.tsx:420
- **Problem:** `'Fertig'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-454: SortPanel.tsx — TODO P2-F11 hardcoded SORT_FIELDS
- **Datei:** frontend/src/components/contacts/SortPanel.tsx:2
- **Problem:** `// TODO: P2-F11 — Replace hardcoded SORT_FIELDS with shared constant` — hardcoded Sortier-Felder.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-455: SortPanel.tsx — Hardcoded deutscher String 'Fertig'
- **Datei:** frontend/src/components/contacts/SortPanel.tsx:430
- **Problem:** `'Fertig'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-456: SaveViewDialog.tsx — Hardcoded deutscher String 'Speichern'
- **Datei:** frontend/src/components/contacts/SaveViewDialog.tsx:120
- **Problem:** `'Speichern'` — hardcoded deutsch ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-457: DashboardWidgetLoader.tsx — TODO P2-F17 hardcoded widgetRegistry
- **Datei:** frontend/src/components/dashboard/DashboardWidgetLoader.tsx:2
- **Problem:** `// TODO: P2-F17 — Replace hardcoded widgetRegistry with dynamic manifest config` — hardcoded Widget Registry.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-458: ContactFolderTree.tsx — Hardcoded 'OK' String
- **Datei:** frontend/src/components/contacts/ContactFolderTree.tsx:580
- **Problem:** `'OK'` — hardcoded ohne t().
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-459: NotificationBell.tsx — TODO P2-F8 Legacy Notifications
- **Datei:** frontend/src/components/layout/NotificationBell.tsx:2
- **Problem:** `// TODO: P2-F8 — Migrate from /notifications to communication API` — Legacy Notification System läuft parallel zu Kommunikation.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-460: NotificationDropdown.tsx — TODO P2-F7 Legacy Notifications
- **Datei:** frontend/src/components/notifications/NotificationDropdown.tsx:2
- **Problem:** `// TODO: P2-F7 — Migrate from /notifications to communication API` — Legacy Notification System.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-461: MailFilterPanel.tsx — TODO P2-F14 hardcoded FIELD_DEFS
- **Datei:** frontend/src/components/mail/MailFilterPanel.tsx:2
- **Problem:** `// TODO: P2-F14 — Replace hardcoded FIELD_DEFS with backend config` — hardcoded Feld-Definitionen.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-462: MailFolderTree.tsx — TODO P2-F13 hardcoded FOLDER_NAME_MAP
- **Datei:** frontend/src/components/mail/MailFolderTree.tsx:2
- **Problem:** `// TODO: P2-F13 — Replace hardcoded FOLDER_NAME_MAP with i18n keys` — hardcoded Ordner-Namen.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-463: MailGroupPanel.tsx — TODO P2-F16 hardcoded GROUP_FIELDS
- **Datei:** frontend/src/components/mail/MailGroupPanel.tsx:2
- **Problem:** `// TODO: P2-F16 — Replace hardcoded GROUP_FIELDS with shared constant` — hardcoded Gruppierungs-Felder.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-464: MailList.tsx — TODO P3-F6 inline style
- **Datei:** frontend/src/components/mail/MailList.tsx:2
- **Problem:** `// TODO: P3-F6 — Replace inline style with Tailwind classes` — inline style statt Tailwind.
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-465: MailSortPanel.tsx — TODO P2-F15 hardcoded SORT_FIELDS
- **Datei:** frontend/src/components/mail/MailSortPanel.tsx:2
- **Problem:** `// TODO: P2-F15 — Replace hardcoded SORT_FIELDS with shared constant` — hardcoded Sortier-Felder.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-466: CommandPalette.tsx — TODO P2-F4 hardcoded TYPE_LABELS/ICONS
- **Datei:** frontend/src/components/search/CommandPalette.tsx:2
- **Problem:** `// TODO: P2-F4 — Replace hardcoded TYPE_LABELS/ICONS with dynamic config` — hardcoded Type-Labels und Icons.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-467: WorkflowEditor.tsx — TODO P2-F21 hardcoded triggerEventOptions
- **Datei:** frontend/src/components/workflows/WorkflowEditor.tsx:3
- **Problem:** `// TODO: P2-F21 — Replace hardcoded triggerEventOptions with backend config` — hardcoded Trigger-Event-Optionen.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-468: WorkspaceManager.tsx — hardcoded CORE_MENU_ITEMS
- **Datei:** frontend/src/components/settings/WorkspaceManager.tsx:10
- **Problem:** `const CORE_MENU_ITEMS = [{ key: 'dashboard', label: 'Dashboard' }, { key: 'contacts', label: 'Kontakte' }]` — hardcoded deutsche Labels und statische Core-Module.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-469: SortableMenuItem.tsx — import * as LucideIcons
- **Datei:** frontend/src/components/layout/SortableMenuItem.tsx:5
- **Problem:** `import * as LucideIcons from 'lucide-react'` — lädt ALLE Icons, kann OOM in Tests verursachen. Sidebar.tsx hat bereits einen kommentierten Fix dafür.
- **Schweregrad:** Low
- **Status:** ⏳ Nicht gefixt
### ARCH-470: ImportWizard.tsx — 1083 Zeilen (God Object)
- **Datei:** frontend/src/components/import-export/ImportWizard.tsx
- **Problem:** 1083 Zeilen — God Object. Sollte aufgeteilt werden.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-471: ContactList.tsx — 1311 Zeilen (God Object)
- **Datei:** frontend/src/components/contacts/ContactList.tsx
- **Problem:** 1311 Zeilen — God Object. Sollte aufgeteilt werden.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-472: ContactFolderTree.tsx — 616 Zeilen (God Object)
- **Datei:** frontend/src/components/contacts/ContactFolderTree.tsx
- **Problem:** 616 Zeilen — God Object.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-473: MessageSidebar.tsx — 671 Zeilen (God Object)
- **Datei:** frontend/src/components/layout/MessageSidebar.tsx
- **Problem:** 671 Zeilen — God Object.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-474: FilterPanel.tsx — 641 Zeilen (God Object)
- **Datei:** frontend/src/components/contacts/FilterPanel.tsx
- **Problem:** 641 Zeilen — God Object.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt
### ARCH-475: ContactDetail.tsx — 588 Zeilen (God Object)
- **Datei:** frontend/src/components/contacts/ContactDetail.tsx
- **Problem:** 588 Zeilen — God Object.
- **Schweregrad:** Medium
- **Status:** ⏳ Nicht gefixt