From f38dfdeea16e1e26b28d65eb87158725556bdc02 Mon Sep 17 00:00:00 2001 From: Agent Zero Date: Wed, 16 Sep 2026 00:13:39 +0200 Subject: [PATCH] =?UTF-8?q?docs:=20UI-Backlog=20Modul=2014=20(Guests)=20ab?= =?UTF-8?q?geschlossen=20=E2=80=94=20#386,=2014/16?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PLATFORM_ROADMAP.md | 6 +++--- PROGRESS.md | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/PLATFORM_ROADMAP.md b/PLATFORM_ROADMAP.md index 00aad89..d60f2be 100644 --- a/PLATFORM_ROADMAP.md +++ b/PLATFORM_ROADMAP.md @@ -1818,9 +1818,9 @@ Der AI Assistent ist ein paralleles System das die Kommunikation-Plattform dupli **Kontext:** Frontend-Backend-Gegenüberstellung (2026-09-01) ergab 16 Backend-Module ohne UI (~64 Ops). User-Entscheidung: Module einzeln mit UI ausstatten, priorisiert nach Business-Nutzen. Jedes Modul folgt derselben Verifikationskette: Vitest → tsc → Production-Build → Deploy → Live-API-Check → Forgejo-Issue → PROGRESS.md-Update. -**Status 2026-09-15: 13/16 erledigt.** -- Erledigt: 1 Approvals, 2 Delegations, 3 API-Tokens, 4 Tenants, 5 Marketplace, 6 Permission-Templates, 7 Skills, 8 Agent-Memory, 9 Outbox, 10 Policies, 11 Graph-RAG, 12 Companies, 13 Public-Share (Commits + Issues #369, #372-#385 in PROGRESS.md-Tabelle) -- Offen (Reihenfolge nach Business-Nutzen): 14 Guests (3), 15 External-Agent (3), 16 Ownership-Transfer (1) +**Status 2026-09-16: 14/16 erledigt.** +- Erledigt: 1 Approvals, 2 Delegations, 3 API-Tokens, 4 Tenants, 5 Marketplace, 6 Permission-Templates, 7 Skills, 8 Agent-Memory, 9 Outbox, 10 Policies, 11 Graph-RAG, 12 Companies, 13 Public-Share, 14 Guests (Commits + Issues #369, #372-#386 in PROGRESS.md-Tabelle) +- Offen (Reihenfolge nach Business-Nutzen): 15 External-Agent (3), 16 Ownership-Transfer (1) **Architektur-Regel (seit Phase Q):** Plugin-Module (wie Marketplace, Skills, Agent-Memory) werden AUSSCHLIESSLICH via Plugin-Manifest registriert (page_routes + menu_items + Komponenten-Map-Generator) — routes/index.tsx und Sidebar.tsx bleiben unangetastet. Core-Module (wie Delegations, API-Tokens, Tenants, Permission-Templates) laufen als statische Core-Routen + Settings-Nav. diff --git a/PROGRESS.md b/PROGRESS.md index 8f5f1f1..dea3ca9 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -81,12 +81,12 @@ Phase P Notizen-App oder UI-Backlog-Module 2-16. ## Weitermachen (2026-09-15, Übergabe — für das nächste Modell/jede KI) -**Produktion läuft stabil** (HEAD 2d3ee21 = origin/main, 0 ungepushte Commits, Health healthy, Alembic 0144, RLS 113 Tabellen, Worker up). Alle Forgejo-Issues bis #385 geschlossen. Outbox sauber: 158 Events published (Webhook-Fix #380). +**Produktion läuft stabil** (HEAD b3eaa0e = origin/main, 0 ungepushte Commits, Health healthy, Alembic 0144, RLS 113 Tabellen, Worker up). Alle Forgejo-Issues bis #386 geschlossen. Outbox sauber: 158 Events published (Webhook-Fix #380). -**2026-09-13 bis 15 abgeschlossen:** (1) Externer Architektur-Audit verifiziert — alle 17 Findings bestätigt, 13 Backend-Fixes (Commit 4a25ac1, #370). (2) PHASE Q KOMPLETT — Frontend-Plugin-Architektur: generierte Komponenten-Map (scripts/generate_component_map.py, jetzt 42 Eintraege, Fail-Hard bei Ghosts) ersetzt STATIC_COMPONENT_MAP + widgetRegistry; Plugin-Routen/Settings nur noch aus Manifesten via PluginRouteRenderer (variant pages/settings). (3) Drei Produktions-Bugfixes 2026-09-14 (siehe Bugfix-Tabelle unten): Webhook-JSONB-Containment (#380 — 158 failed Events live repariert), Zustands-Selector-Spinner-Hang (#381 — "Dashboard loads forever" aufgeklärt+gefixt), Consumer-Registry-qualname. (4) UI-Backlog Module 1-13 erledigt, siehe Tabelle oben (Commits + Issues #369, #372-#385) — davon Module 11-13 an einem Tag (2026-09-15): Graph-RAG #383, Companies #384, Public-Share #385. +**2026-09-13 bis 15 abgeschlossen:** (1) Externer Architektur-Audit verifiziert — alle 17 Findings bestätigt, 13 Backend-Fixes (Commit 4a25ac1, #370). (2) PHASE Q KOMPLETT — Frontend-Plugin-Architektur: generierte Komponenten-Map (scripts/generate_component_map.py, jetzt 42 Eintraege, Fail-Hard bei Ghosts) ersetzt STATIC_COMPONENT_MAP + widgetRegistry; Plugin-Routen/Settings nur noch aus Manifesten via PluginRouteRenderer (variant pages/settings). (3) Drei Produktions-Bugfixes 2026-09-14 (siehe Bugfix-Tabelle unten): Webhook-JSONB-Containment (#380 — 158 failed Events live repariert), Zustands-Selector-Spinner-Hang (#381 — "Dashboard loads forever" aufgeklärt+gefixt), Consumer-Registry-qualname. (4) UI-Backlog Module 1-14 erledigt, siehe Tabelle oben (Commits + Issues #369, #372-#386) — davon Module 11-13 an einem Tag (2026-09-15): Graph-RAG #383, Companies #384, Public-Share #385; Guests #386 am 2026-09-16. **OFFENE THREADS (alles Weitere hängt hier, nichts geht verloren):** -1. **UI-Backlog Module 14-16** (Reihenfolge nach Business-Nutzen): 14 Guests (3) → 15 External-Agent (3) → 16 Ownership-Transfer (1). Muster + Architektur-Regel: siehe Roadmap-Abschnitt "UI-Backlog" (Plugin-Module via Manifest, Core-Module statisch; Referenz: Marketplace=Plugin, Approvals=Core). +1. **UI-Backlog Module 15-16** (Reihenfolge nach Business-Nutzen): 15 External-Agent (3) → 16 Ownership-Transfer (1). Muster + Architektur-Regel: siehe Roadmap-Abschnitt "UI-Backlog" (Plugin-Module via Manifest, Core-Module statisch; Referenz: Marketplace=Plugin, Approvals=Core). 2. **Re-Audit ausstehend:** Externer Prüfer prueft leocrm-reaudit.zip (Stand b58c96f, liegt beim User). Bei neuen Findings: erst die fixen. Hinweis: ZIP enthaelt NICHT die UI-Module 2-8 — bei Bedarf frischen ZIP erstellen (git archive HEAD). 3. **Traefik no-cache-Header fuer index.html** (User-Angebot offen, prevents stale JS-Chunks nach Deploys). HINWEIS: Der "Dashboard loads forever"-Incident wurde 2026-09-14 aufgeklaert — es war der Zustands-Selector-Bug (#381), kein Caching-Problem. Der no-cache-Header bleibt trotzdem sinnvoll gegen stale Chunks nach Deploys. 4. **Server-Entlastung** (User-Thema offen): Cron gegen alte Browser-Prozesse (Incident: 3 Zombie-Chromium, 500+ h CPU) und/oder VPS-Upgrade-Diskussion (22 Container auf 7,6 GB). @@ -233,7 +233,7 @@ Phase P Notizen-App oder UI-Backlog-Module 2-16. | 11 | Graph-RAG Traversal | 4 | done | Commit 0404c8f, [#383](https://forgejo.media-on.de/Leopoldadmin/leocrm/issues/383): /graph-rag via graph_rag-Manifest (Phase Q, Share2-ICON_MAP, Komponenten-Map 41) + knowledge.ts-Erweiterung (traverse/create/delete) — Vitest 11/11, tsc 0, Build 0, Full Deploy, live: Manifest page_route+menu_item OK, API 200, echter-Login DOM-Check (Page gerendert, kein Spinner) | | 12 | Companies (Firmen-API) | 9 | done | Commit 06b7284, [#384](https://forgejo.media-on.de/Leopoldadmin/leocrm/issues/384): /companies via contacts-Manifest (Phase Q, Building2-ICON_MAP, Komponenten-Map 42) — Vitest 12/12, tsc 0, Build 0, Full Deploy, live: Manifest OK, API 200 (echte Firmendaten), echter-Login DOM-Check (3 Firmenkarten, Export-Buttons, kein Spinner) | | 13 | Public-Share | 3 | done | Commits 00f8f10 + 2fbffcd, [#385](https://forgejo.media-on.de/Leopoldadmin/leocrm/issues/385): Oeffentliche Seite /share/:token (Passwort-Support, Download, 404/410-Zustaende) + ShareDialog kopiert jetzt SPA-Links statt API-JSON — Vitest 9/9, tsc 0, Frontend-Deploy, live ohne Login: Fehlerseite 'Link not found' gerendert, kein Login-Redirect | -| 14 | Guests | 3 | not_started | | +| 14 | Guests | 3 | done | Commit b3eaa0e, [#386](https://forgejo.media-on.de/Leopoldadmin/leocrm/issues/386): Settings-Page /settings/guests mit Admin-Gate (Outbox-Muster), Gästeliste mit Status-Badges (invited/active/disabled), Invite-Modal (RHF+zod), Revoke-ConfirmDialog — Vitest 8/8, tsc 0, Frontend-Deploy, live: API GET /api/v1/guests 200 [], echter-Login DOM-Check (Page, EmptyState, Invite-Button, Nav-Eintrag gerendert) | | 15 | External-Agent | 3 | not_started | | | 16 | Ownership-Transfer | 1 | not_started | |