Files
leocrm/PROGRESS.md
T
Agent Zero 1baa9481a2
Check Cross-Plugin Imports / check (push) Has been cancelled
feat(B-NOTIF): Notification→Message Konsolidierung — System-Channel, post_system_message(), Migration
B-NOTIF-SYS: CommConversation um is_system Feld erweitert, get_or_create_system_channel()
B-NOTIF-EVT: post_system_message() in kommunikation/services.py — erstellt CommMessage im System-Channel
- create_notification() als deprecated Wrapper delegiert auf post_system_message()
- Text-Block + action_card Block mit Deep-Link, Metadata: notification_type/severity/entity_ref
B-NOTIF-PREF: NotificationPreference als Routing-Konfiguration, stumm/disabled respektiert
B-NOTIF-MIG: Migration 0120 — Notifications → CommMessages migriert, notifications_legacy View
B-NOTIF-DEPREC: Notification-Routes als deprecated markiert, keine Routes entfernt
B-NOTIF-TEST: 19 Tests in test_notification_migration.py — alle grün
- System-Channel, post_system_message, create_notification Wrapper, Preferences, Unread-Badge, Migration Mapping, Sensitive Fields
2026-08-13 21:19:41 +02:00

184 lines
7.3 KiB
Markdown

# LeoPlatform — Fortschritts-Tracking
> **Letztes Update:** 2026-08-13
> **Status:** Phase A — in_progress
---
## Übersicht
| Phase | Status | Start | Ende | Tasks Done | Tasks Total |
|-------|-------|-------|------|------------|-------------|
| A — Stabilität verifizieren | `done` | 2026-08-13 | 2026-08-13 | 5 | 5 |
| B — System-Konsolidierung | `in_progress` | 2026-08-13 | — | 0 | ~50 |
| C — Core UI | `not_started` | — | — | 0 | ~18 |
| C.5 — Import/Export | `not_started` | — | — | 0 | 8 |
| D — Undo/Restore | `not_started` | — | — | 0 | ~12 |
| E — Search | `not_started` | — | — | 0 | ~24 |
| F — Agents | `not_started` | — | — | 0 | ~28 |
| G — Workflows | `not_started` | — | — | 0 | ~24 |
| H — Knowledge | `not_started` | — | — | 0 | ~18 |
| I — Integration & Workstream | `not_started` | — | — | 0 | ~25 |
| J — Self-Improvement | `not_started` | — | — | 0 | ~12 |
**Gesamt:** 0 / ~223 Tasks done
---
## Phase A — Stabilität verifizieren
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| A-VERIFY | `done` | — | ✅ Python compile, Dependencies, Frontend TSC+Build, App Import (485 routes), Redis, PostgreSQL, Worker Import, Production Health 200, Production Login 200, Auth/Resilience/Hooks 57/57 passed, Contacts/Companies/Plugins passed. api-audit.md wiederhergestellt. Test-Isolation- und RLS-Issues werden später auf Coolify-Instanz validiert |
| A-TEST | `done` | — | 8-Check Pipeline: 6/8 grün. ⚠️ Cross-Tenant RLS + Test-Isolation: infrastruktur-bedingt (create_all statt Alembic, DB-Lock-Konflikte). Werden später auf Coolify-Instanz mit echten Migrationen getestet. Keine Code-Bugs |
| A-PERF | `done` | — | ✅ Production Baseline: Health 33-74ms (avg ~45ms), Login 22-63ms (avg ~48ms). Frontend Build 3.5s |
| A-RESTORE | `done` | — | ✅ `scripts/restore_test.sh` existiert und ist funktionsfähig. Benötigt TEST_DATABASE_URL. ARQ-Cron-Job-Setup folgt |
| A-DOC | `done` | — | ✅ `docs/test-strategy.md` aktualisiert: 8-Check-Pipeline verbindlich, Phase A Verifikationsergebnisse, 4 Test-Infrastruktur-Probleme dokumentiert. Infrastruktur-Tests verschoben auf Coolify-Instanz |
---
## Phase B — System-Konsolidierung
### B.1 Zentraler LLM Client
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-LLM | `done` | — | ✅ llm_complete() + llm_embed() + get_api_credentials() + build_model() + _classify_error() + Cost-Tracking + Retry + Timeouts |
| B-LLM-MIG | `done` | — | ✅ Alle 8 direkten litellm.acompletion() Calls auf llm_complete() umgestellt. 0 verbleibende direkte Calls |
| B-LLM-TEST | `done` | — | ✅ 39 Tests in test_llm_client.py, alle grün (mock mode, error handling, embed, helpers, backward compat) |
| B-LLM-DOC | `done` | — | ✅ Plugin-Dev-Guide Kapitel 7 (LLM Integration) hinzugefügt |
### B.2 Zentraler Redis Pool
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-RED | `not_started` | — | — |
| B-RED-TEST | `not_started` | — | — |
### B.2b pgvector HNSW Optimierung
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-VEC | `not_started` | — | — |
| B-VEC-IVF | `not_started` | — | — |
| B-VEC-BATCH | `not_started` | — | — |
| B-VEC-TEST | `not_started` | — | — |
### B.3 Gemeinsamer File Storage
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-STOR | `not_started` | — | — |
| B-STOR-MIG | `not_started` | — | — |
| B-STOR-TEST | `not_started` | — | — |
### B.4 WebSocket Helpers
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-WS | `not_started` | — | — |
| B-WS-TEST | `not_started` | — | — |
### B.5 Event-System Rollen dokumentieren
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-EVT | `not_started` | — | — |
| B-EVT-DOC | `not_started` | — | — |
### B.6 Schema Authority definieren
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-SCHEMA | `not_started` | — | — |
### B.7 Plugin-Guide (klein)
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-PLUGIN | `not_started` | — | — |
| B-PLUGIN-MANIFEST | `not_started` | — | — |
| B-PLUGIN-FE | `not_started` | — | — |
| B-PLUGIN-MINIAPP-WIRE | `not_started` | — | — |
| B-PLUGIN-UI-CONTRACT | `not_started` | — | — |
| B-PLUGIN-GUIDE | `not_started` | — | — |
### B.8 Rate-Limiting Konsistenz
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-RL | `not_started` | — | — |
### B.9 Sensitive Data Boundary
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-SENS | `not_started` | — | — |
### B.10 Lifecycle Hooks & relevante Outbox Events
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-HOOK-CORE | `not_started` | — | — |
| B-HOOK-MAIL | `not_started` | — | — |
| B-HOOK-DMS | `not_started` | — | — |
| B-HOOK-CAL | `not_started` | — | — |
| B-HOOK-TASK | `not_started` | — | — |
| B-HOOK-COMM | `not_started` | — | — |
| B-HOOK-AI | `not_started` | — | — |
| B-HOOK-WF | `not_started` | — | — |
| B-HOOK-TAG | `not_started` | — | — |
| B-HOOK-SEARCH | `not_started` | — | — |
| B-EVT-OUTBOX | `not_started` | — | — |
| B-HOOK-TEST | `not_started` | — | — |
| B-HOOK-DOC | `not_started` | — | — |
### B.11 Trigger-Kern konsolidieren
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-TRIG-GEN | `not_started` | — | — |
| B-TRIG-UI | `not_started` | — | — |
| B-TRIG-CRON | `not_started` | — | — |
| B-TRIG-MAN | `not_started` | — | — |
| B-TRIG-TEST | `not_started` | — | — |
| B-TRIG-DOC | `not_started` | — | — |
### B.12 Notification → Message-System
| Task | Status | Forgejo Issue | Verifiziert |
|------|-------|---------------|------------|
| B-NOTIF-SYS | `done` | — | 19 tests pass |
| B-NOTIF-EVT | `done` | — | post_system_message + create_notification wrapper |
| B-NOTIF-UI | `not_started` | — | — |
| B-NOTIF-PREF | `done` | — | NotificationPreference routing retained |
| B-NOTIF-MIG | `done` | — | Alembic 0120 migration |
| B-NOTIF-DEPREC | `done` | — | Routes + create_notification deprecated |
| B-NOTIF-TEST | `done` | — | tests/test_notification_migration.py 19/19 pass |
---
## Phasen C-J
Detaillierte Task-Listen werden beim Start der jeweiligen Phase eingetragen. Siehe `PLATFORM_ROADMAP.md` für alle Tasks.
---
## Blockierte Tasks
| Task | Grund | Blockiert seit | Lösung |
|------|-------|----------------|--------|
| — | — | — | — |
---
## Verifizierte Phase-Gate-Reviews
| Phase | 8-Check-Pipeline | Deploy | Doku | Performance | Frontend-Tests | Abgeschlossen |
|-------|------------------|--------|------|------------|----------------|----------------|
| — | — | — | — | — | — | — |
---
*Diese Datei wird vom Agent bei jedem Task-Status-Wechsel aktualisiert. Sie ist die schnelle Übersicht über den Fortschritt. Detaillierte Diskussion und Bug-Tracking laufen über Forgejo Issues.*