A previous `git pull --rebase origin main` dropped 177 local commits,
losing 3400+ files across admin-v2, backend, studio-v2, website,
klausur-service, and many other services. The partial restore attempt
(660295e2) only recovered some files.
This commit restores all missing files from pre-rebase ref 98933f5e
while preserving post-rebase additions (night-scheduler, night-mode UI,
NightModeWidget dashboard integration).
Restored features include:
- AI Module Sidebar (FAB), OCR Labeling, OCR Compare
- GPU Dashboard, RAG Pipeline, Magic Help
- Klausur-Korrektur (8 files), Abitur-Archiv (5+ files)
- Companion, Zeugnisse-Crawler, Screen Flow
- Full backend, studio-v2, website, klausur-service
- All compliance SDKs, agent-core, voice-service
- CI/CD configs, documentation, scripts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
172 lines
4.8 KiB
Markdown
172 lines
4.8 KiB
Markdown
# BreakPilot BPMN Prozesse
|
|
|
|
Dieses Verzeichnis enthaelt die BPMN 2.0 Prozessdefinitionen fuer BreakPilot.
|
|
|
|
## Prozess-Uebersicht
|
|
|
|
| Datei | Prozess | Beschreibung | Status |
|
|
|-------|---------|--------------|--------|
|
|
| `classroom-lesson.bpmn` | Unterrichtsstunde | Phasenbasierte Unterrichtssteuerung | Entwurf |
|
|
| `consent-document.bpmn` | Consent-Dokument | DSB-Approval, Publishing, Monitoring | Entwurf |
|
|
| `klausur-korrektur.bpmn` | Klausurkorrektur | OCR, AI-Grading, Export | Entwurf |
|
|
| `dsr-request.bpmn` | DSR/GDPR | Betroffenenanfragen (Art. 15-20) | Entwurf |
|
|
|
|
## Verwendung
|
|
|
|
### Im BPMN Editor laden
|
|
|
|
1. Navigiere zu http://localhost:3000/admin/workflow oder http://localhost:8000/app (Workflow)
|
|
2. Klicke "Oeffnen" und waehle eine .bpmn Datei
|
|
3. Bearbeite den Prozess im Editor
|
|
4. Speichere und deploye zu Camunda
|
|
|
|
### In Camunda deployen
|
|
|
|
```bash
|
|
# Camunda starten (falls noch nicht aktiv)
|
|
docker compose --profile bpmn up -d camunda
|
|
|
|
# Prozess deployen via API
|
|
curl -X POST http://localhost:8000/api/bpmn/deployment/create \
|
|
-F "deployment-name=breakpilot-processes" \
|
|
-F "data=@classroom-lesson.bpmn"
|
|
```
|
|
|
|
### Prozess starten
|
|
|
|
```bash
|
|
# Unterrichtsstunde starten
|
|
curl -X POST http://localhost:8000/api/bpmn/process-definition/ClassroomLessonProcess/start \
|
|
-H "Content-Type: application/json" \
|
|
-d '{
|
|
"variables": {
|
|
"teacherId": {"value": "teacher-123"},
|
|
"classId": {"value": "class-7a"},
|
|
"subject": {"value": "Mathematik"}
|
|
}
|
|
}'
|
|
```
|
|
|
|
## Prozess-Details
|
|
|
|
### 1. Classroom Lesson (classroom-lesson.bpmn)
|
|
|
|
**Phasen:**
|
|
- Einstieg (Motivation, Problemstellung)
|
|
- Erarbeitung I (Einzelarbeit, Partnerarbeit, Gruppenarbeit)
|
|
- Erarbeitung II (optional)
|
|
- Sicherung (Tafel, Digital, Schueler-Praesentation)
|
|
- Transfer (Anwendungsaufgaben)
|
|
- Reflexion & Abschluss (Hausaufgaben, Notizen)
|
|
|
|
**Service Tasks:**
|
|
- `contentSuggestionDelegate` - Content-Vorschlaege basierend auf Phase
|
|
- `lessonProtocolDelegate` - Automatisches Stundenprotokoll
|
|
|
|
**Timer Events:**
|
|
- Phasen-Timer mit Warnungen
|
|
|
|
---
|
|
|
|
### 2. Consent Document (consent-document.bpmn)
|
|
|
|
**Workflow:**
|
|
1. Dokument bearbeiten (Autor)
|
|
2. DSB-Pruefung (Vier-Augen-Prinzip)
|
|
3. Bei Ablehnung: Zurueck an Autor
|
|
4. Bei Genehmigung: Veroeffentlichen
|
|
5. Benutzer benachrichtigen
|
|
6. Consent sammeln mit Deadline-Timer
|
|
7. Monitoring-Subprocess fuer jaehrliche Erneuerung
|
|
8. Archivierung bei neuer Version
|
|
|
|
**Service Tasks:**
|
|
- `publishConsentDocumentDelegate`
|
|
- `notifyUsersDelegate`
|
|
- `sendConsentReminderDelegate`
|
|
- `checkConsentStatusDelegate`
|
|
- `triggerRenewalDelegate`
|
|
- `archiveDocumentDelegate`
|
|
|
|
---
|
|
|
|
### 3. Klausur Korrektur (klausur-korrektur.bpmn)
|
|
|
|
**Workflow:**
|
|
1. OCR-Verarbeitung der hochgeladenen Klausuren
|
|
2. Qualitaets-Check (Confidence >= 85%)
|
|
3. Bei schlechter Qualitaet: Manuelle Nachbearbeitung
|
|
4. Erwartungshorizont definieren
|
|
5. AI-Bewertung mit Claude
|
|
6. Lehrer-Review mit Anpassungsmoeglichkeit
|
|
7. Noten berechnen (15-Punkte-Skala)
|
|
8. Notenbuch aktualisieren
|
|
9. Export (PDF, Excel)
|
|
10. Optional: Eltern benachrichtigen
|
|
11. Archivierung
|
|
|
|
**Service Tasks:**
|
|
- `ocrProcessingDelegate`
|
|
- `ocrQualityCheckDelegate`
|
|
- `aiGradingDelegate`
|
|
- `calculateGradesDelegate`
|
|
- `updateGradebookDelegate`
|
|
- `generateExportDelegate`
|
|
- `notifyParentsDelegate`
|
|
- `archiveExamDelegate`
|
|
- `deadlineWarningDelegate`
|
|
|
|
---
|
|
|
|
### 4. DSR Request (dsr-request.bpmn)
|
|
|
|
**GDPR Artikel:**
|
|
- Art. 15: Recht auf Auskunft (Access)
|
|
- Art. 16: Recht auf Berichtigung (Rectification)
|
|
- Art. 17: Recht auf Loeschung (Deletion)
|
|
- Art. 20: Recht auf Datenuebertragbarkeit (Portability)
|
|
|
|
**Workflow:**
|
|
1. Anfrage validieren
|
|
2. Bei ungueltig: Ablehnen
|
|
3. Je nach Typ:
|
|
- Access: Daten sammeln → Anonymisieren → Review → Export
|
|
- Deletion: Identifizieren → Genehmigen → Loeschen → Verifizieren
|
|
- Portability: Sammeln → JSON formatieren
|
|
- Rectification: Pruefen → Anwenden
|
|
4. Betroffenen benachrichtigen
|
|
5. Audit Log erstellen
|
|
|
|
**30-Tage Frist:**
|
|
- Timer-Event nach 25 Tagen fuer Eskalation an DSB
|
|
|
|
**Service Tasks:**
|
|
- `validateDSRDelegate`
|
|
- `rejectDSRDelegate`
|
|
- `collectUserDataDelegate`
|
|
- `anonymizeDataDelegate`
|
|
- `prepareExportDelegate`
|
|
- `identifyUserDataDelegate`
|
|
- `executeDataDeletionDelegate`
|
|
- `verifyDeletionDelegate`
|
|
- `collectPortableDataDelegate`
|
|
- `formatPortableDataDelegate`
|
|
- `applyRectificationDelegate`
|
|
- `notifyDataSubjectDelegate`
|
|
- `createAuditLogDelegate`
|
|
- `escalateToDSBDelegate`
|
|
|
|
## Naechste Schritte
|
|
|
|
1. **Delegates implementieren**: Java/Python Service Tasks
|
|
2. **Camunda Connect**: REST-Aufrufe zu Backend-APIs
|
|
3. **User Task Forms**: Camunda Forms oder Custom UI
|
|
4. **Timer konfigurieren**: Realistische Dauern setzen
|
|
5. **Testing**: Prozesse mit Testdaten durchlaufen
|
|
|
|
## Referenzen
|
|
|
|
- [Camunda 7 Docs](https://docs.camunda.org/manual/7.21/)
|
|
- [BPMN 2.0 Spec](https://www.omg.org/spec/BPMN/2.0/)
|
|
- [bpmn-js](https://bpmn.io/toolkit/bpmn-js/)
|