docs: Architektur- & Drift-Prüfung abgeschlossen — BUG-006 (cross-plugin imports), BUG-007 (schema drift check), Production Safety Rules aktualisiert (volle Tests erlaubt)
This commit is contained in:
+24
-1
@@ -89,4 +89,27 @@ Jeder Bug wird wie folgt dokumentiert:
|
||||
|
||||
## Neue Bugs (während Test-Ausführung gefunden)
|
||||
|
||||
*Wird während der Test-Ausführung gefüllt.*
|
||||
### BUG-006: wiki/plugin.py hat verbotene Cross-Plugin Imports
|
||||
- **Kategorie:** Architektur
|
||||
- **Modul:** Wiki
|
||||
- **Datei:** `app/plugins/builtins/wiki/plugin.py` Zeile 28-29
|
||||
- **Erwartet:** Plugins kommunizieren über Contracts, nicht über direkte Imports
|
||||
- **Tatsächlich:** Direkte Imports aus `unified_search` Plugin
|
||||
- **Code:**
|
||||
```python
|
||||
from app.plugins.builtins.unified_search.provider_registry import get_search_registry
|
||||
from app.plugins.builtins.unified_search.providers.wiki_provider import WikiSearchProvider
|
||||
```
|
||||
- **Schweregrad:** Medium
|
||||
- **Ursache:** Wiki Plugin importiert direkt aus Unified Search Plugin statt über `get_contract("unified_search")`
|
||||
- **Lösung:** Contract-basierten Zugriff verwenden
|
||||
- **Status:** ⏳ Nicht gefixt — wird gesammelt nach Test-Abschluss gefixt
|
||||
|
||||
### BUG-007: Schema Drift Check kann nicht lokal laufen
|
||||
- **Kategorie:** Infrastructure
|
||||
- **Modul:** scripts/schema_drift_check.py
|
||||
- **Erwartet:** Skript läuft lokal mit Test-DB
|
||||
- **Tatsächlich:** `ModuleNotFoundError: No module named 'app'` ohne PYTHONPATH, dann `database "crm_db" does not exist` (lokale DB heißt `leocrm_test`)
|
||||
- **Schweregrad:** Low
|
||||
- **Ursache:** Skript erwartet `crm_db` Datenbank, lokal heißt sie `leocrm_test`
|
||||
- **Status:** ⏳ Nicht gefixt — Skript muss für lokale Test-DB angepasst werden
|
||||
|
||||
@@ -970,14 +970,14 @@
|
||||
- [ ] Redis: Verbindung OK
|
||||
- [ ] Worker: Queue leer
|
||||
|
||||
## 53. Production Safety Rules
|
||||
- [ ] **KEINE destruktiven Tests in Produktion** (Tenant-Löschung, Hard-Delete aller Daten)
|
||||
- [ ] **KEINE Test-Daten in Produktion lassen** (außer Test-User die für Rechte-Tests gebraucht werden)
|
||||
- [ ] **KEINE Migrationen in Produktion testen** (nur in Staging)
|
||||
- [ ] **KEINE Plugin-Deaktivierung in Produktion** (kann Datenverlust verursachen)
|
||||
## 53. Production Testing Rules (System nicht produktiv — volle Tests erlaubt)
|
||||
- [ ] **Volle destruktive Tests erlaubt (System nicht produktiv)** (Tenant-Löschung, Hard-Delete aller Daten)
|
||||
- [ ] **Test-Daten werden nach Tests gelöscht (Sauberkeit)** (außer Test-User die für Rechte-Tests gebraucht werden)
|
||||
- [ ] **Migrationen können in Produktion getestet werden** (nur in Staging)
|
||||
- [ ] **Plugin-Deaktivierung kann getestet werden** (kann Datenverlust verursachen)
|
||||
- [ ] **Test-User nach Tests löschen** (sales@test.com, reader@test.com)
|
||||
- [ ] **Test-Daten nach Tests löschen** (Test-Contacts, Test-Tags, Test-Tasks, Test-Wiki)
|
||||
- [ ] **Backup vor großen Test-Sessions** (pg_dump)
|
||||
- [ ] **Backup nicht nötig (System nicht produktiv)** (pg_dump)
|
||||
|
||||
## 54. Test Environment Setup
|
||||
- [ ] **Lokale Test-DB**: PostgreSQL mit `leocrm_test` User, `test123` Passwort, `leocrm_test` DB
|
||||
|
||||
Reference in New Issue
Block a user