refactor: Jitsi/Matrix/Voice von Core übernommen, Camunda/BPMN gelöscht, Kommunikation-Nav
Some checks failed
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-school (push) Successful in 25s
CI / test-go-edu-search (push) Successful in 26s
CI / test-python-klausur (push) Failing after 1m55s
CI / test-python-agent-core (push) Successful in 16s
CI / test-nodejs-website (push) Successful in 18s

- Voice-Service von Core nach Lehrer verschoben (bp-lehrer-voice-service)
- 4 Jitsi-Services + 2 Synapse-Services in docker-compose.yml aufgenommen
- Camunda komplett gelöscht: workflow pages, workflow-config.ts, bpmn-js deps
- CAMUNDA_URL aus backend-lehrer environment entfernt
- Sidebar: Kategorie "Compliance SDK" + "Katalogverwaltung" entfernt
- Sidebar: Neue Kategorie "Kommunikation" mit Video & Chat, Voice Service, Alerts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-03-05 17:01:47 +01:00
parent 2ec4d8aabd
commit 9912997187
68 changed files with 12992 additions and 1432 deletions

View File

@@ -0,0 +1,161 @@
# Golden Test Suite - Multi-Turn Workflow Tests
# Tests for conversation context and follow-up handling
workflow_tests:
- id: WF-001
name: "Worksheet Creation Workflow"
steps:
- input: "Erstelle Arbeitsblatt zu Bruchrechnung"
expected_intent: "worksheet_generate"
expected_response_contains: "Arbeitsblatt"
- input: "Mit 5 Aufgaben"
expected_intent: "worksheet_modify"
context_required: true
expected_slots:
task_count: 5
- input: "Zwei Schwierigkeitsstufen bitte"
expected_intent: "worksheet_differentiate"
context_required: true
- input: "Fertig, speichern"
expected_intent: "confirmation"
expected_response_contains: "gespeichert"
- id: WF-002
name: "Student Observation to Letter"
steps:
- input: "Notiz zu Max: heute dreimal gestört"
expected_intent: "student_observation"
expected_response_contains: "notiert"
- input: "Mach daraus einen Elternbrief"
expected_intent: "parent_letter"
context_required: true
expected_slots:
source: "previous_observation"
- id: WF-003
name: "Quiz with Refinement"
steps:
- input: "Vokabeltest erstellen"
expected_intent: "quiz_generate"
- input: "Lektion 5"
expected_intent: "context_addition"
context_required: true
- input: "Mit Loesungsbogen"
expected_intent: "quiz_modify"
context_required: true
expected_slots:
with_solutions: true
- id: WF-004
name: "Reminder Chain"
steps:
- input: "Erinner mich morgen an Elterngespraech"
expected_intent: "reminder_schedule"
- input: "Und uebermorgen an die Nachbereitung"
expected_intent: "reminder_schedule"
context_required: true
- id: WF-005
name: "Canvas Editing Session"
steps:
- input: "Oeffne das Arbeitsblatt von gestern"
expected_intent: "document_open"
- input: "Ueberschrift groesser"
expected_intent: "canvas_edit"
context_required: true
- input: "Bild nach links"
expected_intent: "canvas_edit"
context_required: true
- input: "Drucklayout A4"
expected_intent: "canvas_layout"
context_required: true
- input: "Als PDF exportieren"
expected_intent: "export"
- id: WF-006
name: "Correction Assistance"
steps:
- input: "Zeig Operatoren fuer Textanalyse"
expected_intent: "operator_checklist"
is_actionable: false
- input: "Was sagt der EH dazu?"
expected_intent: "eh_passage"
context_required: true
is_actionable: false
- input: "Formuliere kurzes Feedback"
expected_intent: "feedback_suggest"
- id: WF-007
name: "Error Recovery"
steps:
- input: "Arbeitsblatt mit Vokablen"
expected_intent: "worksheet_generate"
- input: "Nein, mit Grammatik"
expected_intent: "correction"
context_required: true
expected_slots:
new_topic: "Grammatik"
- input: "Genau, das meinte ich"
expected_intent: "confirmation"
- id: WF-008
name: "Multi-Class Communication"
steps:
- input: "Nachricht an 7a"
expected_intent: "class_message"
expected_slots:
class_name: "7a"
- input: "Auch an 7b"
expected_intent: "class_message"
context_required: true
expected_slots:
class_name: "7b"
- input: "Hausaufgaben bis Freitag abgeben"
expected_intent: "context_addition"
context_required: true
- id: WF-009
name: "Weekly Summary"
steps:
- input: "Was habe ich diese Woche notiert?"
expected_intent: "task_summary"
is_actionable: false
- input: "Zeig nur die zu Max"
expected_intent: "filter"
context_required: true
expected_slots:
filter_student: "Max"
- id: WF-010
name: "Interruption Handling"
steps:
- input: "Erstelle Arbeitsblatt zu"
expected_intent: "incomplete"
- input: "Moment, erst Notiz zu Lisa"
expected_intent: "interrupt"
- input: "Lisa war heute super"
expected_intent: "student_observation"
- input: "Jetzt weiter mit dem Arbeitsblatt"
expected_intent: "resume"
context_required: true