docs: 5 weitere Architektur-Fehler (ARCH-053 bis ARCH-057) — alle routes komplett gelesen
This commit is contained in:
@@ -1124,3 +1124,33 @@ Playwright E2E: 10 passed, 24 failed (BUG-011/012/013 — Mock-Daten und data-te
|
|||||||
- **Problem:** `loop = asyncio.new_event_loop()` für S3 fallback — erstellt einen neuen Event Loop in einem async Kontext. Kann zu Deadlocks führen wenn bereits ein Loop läuft.
|
- **Problem:** `loop = asyncio.new_event_loop()` für S3 fallback — erstellt einen neuen Event Loop in einem async Kontext. Kann zu Deadlocks führen wenn bereits ein Loop läuft.
|
||||||
- **Schweregrad:** Medium
|
- **Schweregrad:** Medium
|
||||||
- **Status:** ⏳ Nicht gefixt
|
- **Status:** ⏳ Nicht gefixt
|
||||||
|
|
||||||
|
### ARCH-053: audit.py — datetime.utcnow() naive datetime in retention cleanup
|
||||||
|
- **Datei:** app/routes/audit.py:179
|
||||||
|
- **Problem:** `datetime.utcnow() - timedelta(days=retention_days)` verwendet naive datetime. AGENTS.md verbietet naive datetime — TIMESTAMPTZ only. Sollte `datetime.now(UTC)` sein.
|
||||||
|
- **Schweregrad:** Medium
|
||||||
|
- **Status:** ⏳ Nicht gefixt
|
||||||
|
|
||||||
|
### ARCH-054: entity_permissions.py — _check_entity_ownership greift auf falsche Datenstruktur
|
||||||
|
- **Datei:** app/routes/entity_permissions.py:259
|
||||||
|
- **Problem:** `model_info = ENTITY_MODELS.get(entity_type)` gibt eine Model-Klasse zurück, nicht ein dict. `model_info["model"]` wirft TypeError. Sollte `model = ENTITY_MODELS.get(entity_type)` sein.
|
||||||
|
- **Schweregrad:** High
|
||||||
|
- **Status:** ⏳ Nicht gefixt
|
||||||
|
|
||||||
|
### ARCH-055: errors.py — error.userAgent statt error.user_agent
|
||||||
|
- **Datei:** app/routes/errors.py:124
|
||||||
|
- **Problem:** `error.userAgent` im extra dict — aber das Pydantic model ErrorReport hat `user_agent` als field name, nicht `userAgent`. AttributeError zur Laufzeit.
|
||||||
|
- **Schweregrad:** Medium
|
||||||
|
- **Status:** ⏳ Nicht gefixt
|
||||||
|
|
||||||
|
### ARCH-056: roles.py — hardcoded SYSTEM_PERMISSIONS dupliziert permission_registry.py
|
||||||
|
- **Datei:** app/routes/roles.py:38-70
|
||||||
|
- **Problem:** `SYSTEM_PERMISSIONS` Liste ist hardcoded und dupliziert `CORE_PERMISSIONS` aus `app/core/permission_registry.py`. Änderungen an permission_registry werden nicht in roles.py reflektiert.
|
||||||
|
- **Schweregrad:** Medium
|
||||||
|
- **Status:** ⏳ Nicht gefixt
|
||||||
|
|
||||||
|
### ARCH-057: roles.py — Zugriff auf private Variable registry._plugins
|
||||||
|
- **Datei:** app/routes/roles.py:87
|
||||||
|
- **Problem:** `registry._plugins.items()` greift auf eine private Variable zu. Sollte eine öffentliche Methode wie `registry.list_discovered()` oder `registry.get_all_plugins()` verwenden.
|
||||||
|
- **Schweregrad:** Low
|
||||||
|
- **Status:** ⏳ Nicht gefixt
|
||||||
|
|||||||
Reference in New Issue
Block a user