docs(progress): W4a Import/Export Contribution-Architektur — finale Spec (#359) festgehalten, zentraler Dialog per Toolbar-Button, Formate als Plugins
This commit is contained in:
+10
@@ -12,6 +12,16 @@
|
||||
|
||||
**Gates:** ruff exit=0 · tsc --noEmit exit=0 · pytest 11 passed · Vitest 2 passed
|
||||
|
||||
## W4a — Import/Export Contribution-Architektur (2026-08-27, SPECS final)
|
||||
|
||||
**Spec:** [#359](https://forgejo.media-on.de/Leopoldadmin/leocrm/issues/359) (user-abgestimmt)
|
||||
|
||||
**Kernentscheidungen:** Zentraler Dialog (Modal lg/xl) geöffnet per Toolbar-Button in jeder Modulliste, deren Plugin Import/Export anbietet; /import-export-Seite wird zur Übersicht aller Angebote (Variante b). Formate als Plugins (CSV/JSON/XLSX bundled; PDF später separat). Module = Contributors via Contract (`importexport_meta`); Core = Orchestrator + Sicherheits-Policy-Layer (Sensitive-Filter, Tenant-Scoping, Audit unabhängig vom Modul erzwungen). Modul-native Formate (ICS/EML/ZIP) registrieren sich nur anzeigend.
|
||||
|
||||
**Abgelöst:** `export_service.py` (78 Z., CSV-only, alter /export-Endpoint) + contact-spezifische Logik in `import_export_service.py` (504 Z.) — der bewiesene Doppel-Weg wird konsolidiert.
|
||||
|
||||
**Phasen:** 1 Backend (Format-Registry, Standard-Formate-Plugin, Contract-Protokoll, Orchestrator, Contacts migriert) → 2 Frontend (Dialog, Toolbars, alte Seite → Übersicht) → 3 PDF separat.
|
||||
|
||||
## Welle 3a — Route-Permission-Wahrheit (2026-08-27)
|
||||
|
||||
| Finding | Issue | Fix | Verifikation (Live-Messung) |
|
||||
|
||||
Reference in New Issue
Block a user