Files
HiveGrid-Wireframes/02 Wireframes/P5 Integrationen/WF-P5 Integrationen/WF-P5 Integrationen.md
T
davidandClaude Fable 5 e48a5a46e8 Plan Querschnitt-Pakete P3-P5 und Infrastruktur-Entscheidungen
- Feature Map: Regelwerk, Kanten-System, Paket-Canvas-Verknuepfungen, MD-Links
- Infrastruktur & Navigation: Sidebar-Abgleich, Einstellungen-Modell, Mobile, Gating
- WF-P3 Benachrichtigungen + Audit Log (validiert)
- WF-P4 Aufgaben (inkl. Topbar-Drawer-Delta) + Dateien (inkl. Teilen v1, CR an Dev)
- WF-P5 Integrationen (Sync-Verlauf als eigene Seiten)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 20:47:46 +02:00

133 lines
5.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
kind: wireframe-package
project: HiveGrid Screen Project
ticket: D-P5
package: WF-P5 Integrationen
typ: Flow
status: Validiert
subframe: ""
canvas: "WF-P5 Integrationen.canvas"
---
# WF-P5 Integrationen
Status: Validiert (Screen-Liste)
Subframe-Link: -
Canvas: [Canvas](<WF-P5 Integrationen.canvas>)
Stand: 2026-07-08
---
## 1. Kurzfassung
Der „App-Store" von HiveGrid: Katalog externer Dienste, Verbindungs-Verwaltung je App (mehrere Verbindungen möglich), Einrichtungs-Assistent (OAuth **und** API-Schlüssel) und Sync-Verlauf mit Klartext. **Das wiederverwendbare Verbindungs-Gerüst** — E-Mail (P14), Telefonie (P15), Kalender/Signatur (P16) nutzen später genau diese Bausteine.
---
## 2. Intent Check
| Frage | Antwort |
|---|---|
| Welches Ticket/Modul ist betroffen? | D-P5, Dev-Pendant R-P5 (Apps-Engine/Adapter-Layer) |
| Was soll der Nutzer am Ende schaffen? | Externen Dienst anschließen, Zustand verstehen (Ampel + Klartext), Probleme selbst lösen (neu verbinden), nachvollziehen, was übertragen wurde |
| Flow, Screen, Zustand oder Doku? | Screens + Wizard-Modals |
| Welche Planning-Quellen wurden geprüft? | `ticket-docs/D-P5.md`, SCREEN-MAP §2, HiveGrid Map |
| Was ist sicher im Scope? | Katalog, App-Seite, Assistent (2 Varianten), Trennen-Dialog, Sync-Verlauf + Lauf-Detail |
| Was ist sicher nicht im Scope? | App-spezifische Einrichtungs-Details (→ P14/P15/P16), KWP-Sonder-UI (v2), Windows-Client-Flow (kein UI) |
| Admin/Normalrolle-Unterschiede? | Rechte `integrations.read/.connect/.disconnect/.manual_sync/.view_logs/.admin` |
| Unsichere Annahmen? | Ob der Katalog auch nicht verfügbare/kommende Apps zeigt (Teaser) — offene Frage |
---
## 3. Scope
| Punkt | Inhalt |
|---|---|
| Ticket/Modul | D-P5 · Integrationen |
| Nutzerrolle | Admin (Maximalansicht) |
| Startpunkt | Sidebar »Integrationen« (`/admin/integrations`) |
| Ziel | Verbindung läuft grün; Läufe nachvollziehbar |
| Haupt-Archetyp | A6 Settings/Connection-Card · A5 Wizard · A2 Liste |
| Bespoke-Anteil | Keiner |
| Out of scope | App-spezifische Setups, KWP-UI (v2) |
---
## 4. Entscheidungen (validiert 2026-07-08)
| Entscheidung | Status | Notiz |
|---|---|---|
| Ein Paket für das ganze Framework | genommen | Katalog + App-Seite + Assistent + Verlauf |
| **Sync-Verlauf als eigene Seiten** (Liste + Lauf-Detail) | genommen | Davids Entscheidung — KEIN Drawer-Muster wie beim Audit; App-Seite zeigt nur die letzten Läufe + »alle anzeigen« |
| Assistent: beide Zugangsdaten-Varianten als eigene Frames | genommen | M01 OAuth-Weg · M02 API-Schlüssel-Weg (Formular auto-generiert aus App-Schema) |
| Trennen mehrstufig bestätigt, kein Hard-Delete | genommen | Status wird »getrennt«, Jobs stoppen, Klartext-Warnung |
| Mehrere Verbindungen je App mit Namens-Label | genommen | z. B. drei Postfächer »Büro«/»Max«/»Info« |
| KI-Kategorie bleibt im Katalog | genommen | Andockpunkt für MCP (Pivot AD-26), passt zum Sidebar-Punkt »MCP« |
### Happy Path
1. Sidebar »Integrationen« → Katalog mit App-Karten nach Kategorie, Ampel je App.
2. App öffnen → Verbindungs-Karten; »Verbinden« startet den Assistenten.
3. Assistent: Voraussetzungen → Zugangsdaten (OAuth-Knopf ODER Schlüssel einfügen) → Verbindungs-Test ✓ → optional erster Abgleich.
4. Später: Ampel gelb/rot → Klartext-Banner mit Lösungs-Knopf (»neu verbinden«); Sync-Verlauf zeigt jeden Lauf in Klartext, Lauf-Detail jeden Datensatz.
### Meldungs-/Error-States (validiert)
| Ereignis | UI-Form | Blockiert? | Bauen? | Copy/Notiz |
|---|---|---|---|---|
| Verbindung hakt / kaputt / Schema geändert | Klartext-Banner + Lösungs-Knopf | nein | Nur dokumentieren | auf App-Seite + Katalog-Ampel |
| Verbindungs-Test im Assistent fehlgeschlagen | Schritt-Fehler mit Klartext + zurück | ja (Schritt) | Nur dokumentieren | im Wizard |
| Lauf fehlgeschlagen | rote Zeile + Fehl-Detail je Datensatz | nein | Nur dokumentieren | in S03/S04 |
| Kein Zugriff | A7 »kein Zugriff« | ja | Wiederverwenden | `integrations.read` |
| Katalog-Filter ohne Treffer | Leer-Zustand | nein | Nur dokumentieren | Filter zurücksetzen |
---
## 7. Validierte Screen-Liste
| ID | Screen/Zustand | Typ | Umsetzung | Ort | Status |
|---|---|---|---|---|---|
| S01 | App-Katalog | Screen | Bauen | `/admin/integrations` | Validiert |
| S02 | App-Seite (Verbindungs-Verwaltung) | Screen | Bauen | `/admin/integrations/:app` | Validiert |
| S03 | Sync-Verlauf (eigene Seite) | Screen | Bauen | `…/syncs` | Validiert |
| S04 | Lauf-Detail (eigene Seite) | Screen | Bauen | `…/syncs/:id` | Validiert |
| M01 | Assistent — OAuth-Weg | Modal/Wizard | Bauen | aus S02 | Validiert |
| M02 | Assistent — API-Schlüssel-Weg | Modal/Wizard | Bauen | aus S02 | Validiert |
| M03 | Trennen-Bestätigung | Modal (mehrstufig) | Bauen | aus S02 | Validiert |
| D01–D05 | Banner/Fehler-Zustände (s. Tabelle) | Inline/Banner | Nur dokumentieren | — | Validiert |
---
## 8. Grid
```text
Sidebar -> S01 -> S02 -> S03 -> S04
S02 -> M01 (OAuth) / M02 (API-Schluessel) / M03 (Trennen)
Connection-Card + Assistent = wiederverwendbar fuer P14/P15/P16
```
---
## 9. Screen-Pakete
- [[S01 App-Katalog]]
- [[S02 App-Seite]]
- [[S03 Sync-Verlauf]]
- [[S04 Lauf-Detail]]
- [[M01 Assistent OAuth]]
- [[M02 Assistent API-Schluessel]]
- [[M03 Trennen-Bestaetigung]]
---
## 10. Offene Fragen
- Zeigt der Katalog auch noch nicht verfügbare/kommende Apps als Teaser (mit Schloss, analog Abo-Gating)? → David/Dev
- Genaue App-Liste v1 (welche Karten sind zum Start drin) → Dev
## Handoff-Check
- [x] Jeder Screen ist mit Umsetzung markiert.
- [x] Meldungs-/Error-State-Matrix ist ausgefüllt.
- [ ] Subframe-Link ist eingetragen. *(Subframe erst nach explizitem OK)*