fixes in node languages and ai workflow

This commit is contained in:
ValueOn AG 2026-04-13 01:37:33 +02:00
parent 4e6977ef96
commit f52398cd02

View file

@ -44,7 +44,7 @@
|---|----------|-------|------------|------------------|
| UC1 | **Treuhand: Automatisierte Spesenverarbeitung** | 6 Min | Beleg → OCR → Kontierung → Export in Sekunden | Trustee-Feature, Graph-Editor Workflow, SharePoint-Nodes |
| UC2 | **Immobilien: Automatisierte Machbarkeitsstudie** | 4 Min | Grundstück eingeben → 6 Min statt 4 Std. Recherche | RealEstate-Feature, Agent + webSearch + readUrl |
| UC3 | **Enterprise: AI Knowledge Chatbot** | 4 Min | Frage stellen → sofortige Antwort mit Quellenangabe | Chatbot-Feature, RAG, Neutralisierung |
| UC3 | **Enterprise: AI Knowledge Workspace** | 4 Min | Frage stellen → sofortige Antwort mit Quellenangabe | AI Workspace (nicht Chatbot), RAG auto-indexiert, Neutralisierung |
| UC4 | **Sprach-Deployment: Neue Sprache in 5 Minuten** | 3 Min | Sprache anlegen → AI uebersetzt → UI sofort mehrsprachig | i18n-System, AI-Batch-Translation, Admin-UI |
| UC5 | **Integrationen: Architektur-Visualisierung** | 1 Min | Komplette Integrationslandschaft auf einen Blick | Neue Systemseite, Custom React-Komponente |
| — | **Neutralisierung (Querschnitt)** | 3 Min | PII live entfernen + Re-Personalisierung | Neutralisierung-Feature, Private LLM |
@ -78,7 +78,7 @@
## Betroffene Module
- **Gateway:** `modules/demoConfigs/` (neu — Demo-Config-System), `modules/routes/routeAdminDemoConfig.py` (neu), `modules/system/mainSystem.py` (Nav-Eintrag), `features/trustee/`, `features/chatbot/`, `features/neutralization/`, `features/workspace/`, `features/graphicalEditor/`
- **Gateway:** `modules/demoConfigs/` (neu — Demo-Config-System), `modules/routes/routeAdminDemoConfig.py` (neu), `modules/system/mainSystem.py` (Nav-Eintrag), `features/trustee/`, `features/workspace/` (RAG fuer UC3), `features/neutralization/`, `features/graphicalEditor/`
- **Frontend:** `pages/admin/AdminDemoConfigPage.tsx` (neu), `IntegrationsOverviewPage.tsx` (erledigt), `config/pageRegistry.tsx` (Eintrag), `App.tsx` (Route)
- **DB-Migration:** nein (nur Daten-Seeding)
- **Config:** `gateway/config.ini` (Demo_RMA_* Credentials)
@ -95,6 +95,7 @@
| 2026-04-12 | Neutralisierung als Querschnitt in UC1 + UC3 einbauen, nicht als eigenen Block | Natürlicher Flow, keine "Feature-Parade" |
| 2026-04-12 | Testdrehbuch als pytest-Suite unter `gateway/tests/demo/` | Automatisch prüfbar, CI-fähig, reproduzierbar |
| 2026-04-12 | Fallback-Screenshots für UC2 (Internet-abhängig) | Demo darf nicht an WLAN scheitern |
| 2026-04-13 | UC3 nutzt AI Workspace statt Chatbot fuer RAG | Chatbot hat kein eigenes RAG (nur SQL + Tavily). Workspace hat vollstaendiges RAG: Upload → auto-Indexing (Extraktion + Embeddings) → semantische Suche via `buildAgentContext`. Einfacher, staerker, ein Interface fuer alles. |
---
@ -105,7 +106,7 @@
- [ ] **Use-Case-Auswahl bestätigen** mit Kollegen (Keynote-Alignment)
- UC1: Treuhand Spesenverarbeitung → zeigt Plug&Play + Workflow
- UC2: Immobilien Machbarkeitsstudie → zeigt AI-Agent-Power + Zeitersparnis
- UC3: Knowledge Chatbot → zeigt RAG + Enterprise-Readiness
- UC3: AI Knowledge Workspace → zeigt RAG + Enterprise-Readiness (via Workspace, nicht Chatbot)
- UC4: Sprach-Deployment → zeigt Skalierbarkeit + Enterprise-Readiness (neue Sprache in 5 Min)
- UC5: Integrationen → zeigt Plug&Play-Architektur visuell (Datenquellen → PORTA → Services)
- Querschnitt: Neutralisierung → zeigt Privacy-First
@ -118,7 +119,7 @@
- `_baseDemoConfig.py` — Abstrakte Basisklasse mit `load()` / `remove()`
- `__init__.py` — Auto-Discovery aller Config-Files im Ordner
- `investorDemo2026.py` — Investor-Demo Konfiguration:
- Mandant **HappyLife AG** (`happylife`): workspace, trustee(RMA), graphicalEditor, chatbot, neutralization
- Mandant **HappyLife AG** (`happylife`): workspace (RAG fuer UC3), trustee(RMA), graphicalEditor, chatbot (inaktiv — UC3 nutzt Workspace), neutralization
- Mandant **Alpina Treuhand AG** (`alpina-treuhand`): workspace, trustee(RMA), graphicalEditor, neutralization
- User **Patrick Helvetia** (`p.motsch@poweron.swiss`): SysAdmin, Mitglied beider Mandanten
- RMA-Credentials aus `config.ini` (Demo_RMA_*)
@ -160,14 +161,25 @@
- [ ] **Fallback:** Vorbereitete Ergebnis-Screenshots falls Internet ausfällt
- [ ] **Erwartetes Ergebnis dokumentieren:** Automatische Datensammlung → BZO-Analyse → Zusammenfassung
#### UC3: Enterprise — Knowledge Chatbot
#### UC3: Enterprise — AI Knowledge Workspace
- [ ] **Chatbot-Instanz konfigurieren** mit Demo-Datenbank (oder Workspace-RAG)
- [ ] **Knowledge-Base befüllen:** 3-4 Dokumente hochladen + RAG-Index aufbauen
- [ ] **Demo-Fragen vorbereiten:**
> **Entscheidung:** UC3 nutzt den **AI Workspace** (nicht den Chatbot). Der Chatbot hat kein eigenes RAG-System
> (er arbeitet mit SQL + Tavily). Der Workspace hat vollstaendiges RAG: Upload → automatisches Indexing
> (Extraktion + Embeddings) → semantische Suche im Workspace-Chat via `buildAgentContext`.
- [ ] **Workspace-Instanz** in HappyLife AG verwenden (bereits via Bootstrap erstellt)
- [ ] **Knowledge-Base befuellen:** Im Workspace-Dashboard (`/mandates/<id>/workspace/<instanceId>/dashboard`)
die 4 Dokumente aus `gateway/demoData/knowledge-base/` hochladen (Drag & Drop oder + Button):
- `investor-summary.md`
- `2025-10-investor-detail.md`
- `platform-overview.html`
- `referenzen.html`
RAG-Indexing laeuft **automatisch** nach Upload (async Pipeline: Pre-Scan → Extraktion → Chunking → Embeddings).
Status pruefen unter **RAG Insights** (`/mandates/<id>/workspace/<instanceId>/rag-insights`).
- [ ] **Demo-Fragen vorbereiten** (im Workspace-Chat stellen, nicht im Chatbot):
- "Wie ist unser Reklamationsprozess?" (→ Antwort mit Quellenangabe)
- "Welche Fristen gelten für Nebenkostenabrechnungen?" (→ zeigt domänenspezifisches Wissen)
- "Erstelle eine Zusammenfassung der Q1-Ergebnisse" (→ zeigt Analyse-Fähigkeit)
- "Welche Fristen gelten fuer Nebenkostenabrechnungen?" (→ zeigt domaenenspezifisches Wissen)
- "Erstelle eine Zusammenfassung der Q1-Ergebnisse" (→ zeigt Analyse-Faehigkeit)
- [ ] **Neutralisierung aktivieren** und in einer Frage live demonstrieren
- [ ] **Erwartetes Ergebnis dokumentieren:** Frage → Antwort mit Quellenangabe + Audit-Trail
@ -232,7 +244,7 @@
- Demo-Config geladen via Admin UI (`/admin/demo-config` → "Investor Demo April 2026" → Load)
- Browser auf: PORTA Dashboard (eingeloggt als `p.motsch@poweron.swiss` / `patrick.helvetia`)
- Mandanten: HappyLife AG + Alpina Treuhand AG
- Tabs vorbereitet: Dashboard, Workspace, Graph-Editor, Trustee, Chatbot
- Tabs vorbereitet: Dashboard, Workspace (mit indexierten Knowledge-Docs), Graph-Editor, Trustee
- SharePoint-Demo-Ordner mit Belegen befuellt
- Neutralisierung aktiviert
- Knowledge-Base indexiert
@ -305,19 +317,22 @@
**Transition:** "Letztes Beispiel — wie die KI als Firmen-Wissensbasis funktioniert."
### Szene 5: UC3 — Knowledge Chatbot (15:00 17:00)
### Szene 5: UC3 — AI Knowledge Workspace (15:00 17:00)
**Was zeigen:** Firmenwissen sofort abrufbar — mit Quellenangabe
**Was zeigen:** Firmenwissen sofort abrufbar — mit Quellenangabe, alles im AI Workspace
**Talking Points:**
- "Informationssilos sind der Produktivitätskiller Nr. 1. ERP, CRM, SharePoint — Daten überall."
- "PowerON gibt ein einheitliches Interface auf alle Datenquellen."
- "Dokumente hochladen — der Workspace indexiert automatisch. Fragen stellen — sofortige Antwort mit Quelle."
**Klick-Sequenz:**
1. Chatbot öffnen → "Wie ist unser Reklamationsprozess?"
2. Antwort zeigen: Strukturiert, mit Quellenangabe (Dokument + Seite)
3. Follow-up: "Welche Fristen gelten für Nebenkostenabrechnungen?"
4. Antwort mit Rechtsgrundlage zeigen
5. "Sofortige Antworten statt 10 Minuten Suche. Rollenbasierter Zugriff — jeder sieht nur, was er sehen darf."
1. Workspace oeffnen (HappyLife AG) → Dokumente sind bereits hochgeladen und indexiert
2. Optional: RAG Insights zeigen → "Hier sehen Sie den Index-Status — alle Dokumente sind verarbeitet."
3. Im Workspace-Chat fragen: "Wie ist unser Reklamationsprozess?"
4. Antwort zeigen: Strukturiert, mit Quellenangabe (Dokument + Abschnitt)
5. Follow-up: "Welche Fristen gelten fuer Nebenkostenabrechnungen?"
6. Antwort mit Rechtsgrundlage zeigen
7. "Sofortige Antworten statt 10 Minuten Suche. Rollenbasierter Zugriff — jeder sieht nur, was er sehen darf."
### Szene 6: UC4 — Sprach-Deployment live (17:00 20:00)
@ -407,16 +422,17 @@ Then Agent nutzt webSearch und/oder readUrl Tools
AND Antwortzeit < 120 Sekunden
```
#### T-UC3: Knowledge Chatbot
#### T-UC3: AI Knowledge Workspace
```
Given Demo-Mandant mit Chatbot-Instanz und indexierter Knowledge-Base (3+ Dokumente)
When Frage "Wie ist unser Reklamationsprozess?" gestellt wird
Then Antwort referenziert mindestens 1 Quell-Dokument
Given Demo-Mandant mit Workspace-Instanz und indexierter Knowledge-Base (3+ Dokumente)
AND Dokumente via Workspace-Dashboard hochgeladen (auto-indexiert via _autoIndexFile Pipeline)
When im Workspace-Chat "Wie ist unser Reklamationsprozess?" gestellt wird
Then Antwort referenziert mindestens 1 Quell-Dokument (via buildAgentContext → semanticSearch)
AND Antwort ist inhaltlich korrekt (enthält Prozessschritte)
AND Antwortzeit < 15 Sekunden
Given Chatbot mit RAG-Index
Given Workspace mit RAG-Index
When Frage zu Thema ausserhalb der Knowledge-Base gestellt wird
Then Antwort zeigt an, dass keine relevante Quelle gefunden wurde (kein Halluzinieren)
```
@ -481,7 +497,7 @@ pytest tests/demo/ -v -m ""
| 1 | Given Demo-Mandant, When Bootstrap ausgeführt wird, Then alle Features aktiv + Testdaten geladen + Neutralisierung an | must |
| 2 | Given 3 Musterbelege, When Trustee-Workflow läuft, Then Belege extrahiert + kontiert + Audit-Trail vorhanden | must |
| 3 | Given Workspace mit Agent, When Machbarkeitsstudie-Prompt, Then strukturierte Analyse mit Quellen in <2 Min | must |
| 4 | Given Chatbot mit Knowledge-Base, When Frage gestellt, Then Antwort mit Quellenangabe in <15s | must |
| 4 | Given AI Workspace mit Knowledge-Base (auto-indexiert), When Frage im Workspace-Chat gestellt, Then Antwort mit Quellenangabe in <15s | must |
| 5 | Given Mieterdossier-PDF, When Neutralisierung aktiv + AI-Analyse, Then PII nie an LLM gesendet + Re-Personalisierung korrekt | must |
| 6 | Given i18n Admin-UI, When neue Sprache "es" angelegt wird, Then AI uebersetzt alle Keys in <5 Min und UI zeigt Spanisch nach Sprachwechsel | must |
| 7 | Given komplettes Drehbuch, When Demo komplett durchgespielt, Then Timing ≤ 20 Min mit Puffer | must |
@ -494,7 +510,7 @@ pytest tests/demo/ -v -m ""
| T1 | 1 | integration | ja | gateway/tests/demo/test_demo_bootstrap.py | pending |
| T2 | 2 | e2e | ja (teilweise, AI=expensive) | gateway/tests/demo/test_demo_uc1_trustee.py | pending |
| T3 | 3 | e2e | ja (expensive) | gateway/tests/demo/test_demo_uc2_realestate.py | pending |
| T4 | 4 | e2e | ja (expensive) | gateway/tests/demo/test_demo_uc3_chatbot.py | pending |
| T4 | 4 | e2e | ja (expensive) | gateway/tests/demo/test_demo_uc3_chatbot.py (Workspace-RAG, nicht Chatbot) | pending |
| T5 | 5 | e2e | ja (expensive) | gateway/tests/demo/test_demo_neutralization.py | pending |
| T6 | 6 | e2e | ja (expensive) | gateway/tests/demo/test_demo_uc4_i18n.py | pending |
| T7 | 7 | manual | nein | — (Generalprobe Di Morgen) | pending |
@ -512,7 +528,7 @@ pytest tests/demo/ -v -m ""
- Testing-Strategie: `d-guides/testing-strategy.md`
- Trustee-Feature: `gateway/modules/features/trustee/`
- RealEstate-Feature: `gateway/modules/features/realEstate/`
- Chatbot-Feature: `gateway/modules/features/chatbot/`
- Chatbot-Feature: `gateway/modules/features/chatbot/` (nicht fuer UC3 — UC3 nutzt Workspace-RAG)
- Neutralisierung-Feature: `gateway/modules/features/neutralization/`
- Graph-Editor: `gateway/modules/features/graphicalEditor/`