docs: 64 Architektur-Fehler (ARCH-001 bis ARCH-064) durch systematisches Code-Review dokumentiert
This commit is contained in:
@@ -1166,3 +1166,33 @@ Playwright E2E: 10 passed, 24 failed (BUG-011/012/013 — Mock-Daten und data-te
|
||||
- **Problem:** `const visibleModuleKeys = useWorkspaceStore(s => s.visibleModuleKeys())` — bei jedem Render wird ein neues Set erstellt. Sollte useMemo verwenden.
|
||||
- **Schweregrad:** Low
|
||||
- **Status:** ⏳ Nicht gefixt
|
||||
|
||||
### ARCH-060: step_handlers.py — MailContract.get_function() existiert nicht
|
||||
- **Datei:** app/workflows/step_handlers.py:221,261,306,351,394
|
||||
- **Problem:** `MailContract.get_function("send_email")` — MailContract hat keine get_function() Methode. Es hat nur `Mail = Mail`. Alle 5 Step-Handler (mail, calendar, dms, search, automation) sind kaputt.
|
||||
- **Schweregrad:** High
|
||||
- **Status:** ⏳ Nicht gefixt
|
||||
|
||||
### ARCH-061: unified_search/contracts.py — get_contract() umgeht Registry
|
||||
- **Datei:** app/plugins/builtins/unified_search/contracts.py:38-43
|
||||
- **Problem:** `get_contract()` erstellt eine NEUE Instanz statt die registrierte aus der Registry zu verwenden. Umgeht die Contract Registry und Plugin-Aktivierungsstatus-Prüfung.
|
||||
- **Schweregrad:** Medium
|
||||
- **Status:** ⏳ Nicht gefixt
|
||||
|
||||
### ARCH-062: mail/contracts.py — MailContract hat keine send_email Funktion
|
||||
- **Datei:** app/plugins/builtins/mail/contracts.py
|
||||
- **Problem:** MailContract hat nur `Mail = Mail` aber step_handlers.py erwartet `get_function("send_email")`. Contract ist unvollständig.
|
||||
- **Schweregrad:** High
|
||||
- **Status:** ⏳ Nicht gefixt
|
||||
|
||||
### ARCH-063: cache.py — Cache und Session-Store verwenden dieselbe Redis-Instanz
|
||||
- **Datei:** app/core/cache.py:12
|
||||
- **Problem:** `get_cache()` delegiert an `get_redis()` — Cache und Session-Store verwenden dieselbe Redis-Instanz. Keine Trennung, kein Namespace-Prefix.
|
||||
- **Schweregrad:** Low
|
||||
- **Status:** ⏳ Nicht gefixt
|
||||
|
||||
### ARCH-064: middleware.py — CSP erlaubt WebSocket zu jedem Server
|
||||
- **Datei:** app/core/middleware.py:33
|
||||
- **Problem:** `connect-src 'self' wss: ws:` — WebSocket-Verbindungen zu jedem wss/ws Server erlaubt, nicht nur zum eigenen Server. Sollte `connect-src 'self'` sein.
|
||||
- **Schweregrad:** Medium
|
||||
- **Status:** ⏳ Nicht gefixt
|
||||
|
||||
Reference in New Issue
Block a user