# Golden Test Suite - Intent Classification Tests # Each test validates correct intent detection for teacher voice commands tests: # Gruppe 1: Kurze Notizen - id: INT-001 name: "Student Observation - Simple" input: "Notiz zu Max: heute wiederholt gestoert" expected_intent: "student_observation" expected_slots: student_name: "Max" observation: "heute wiederholt gestoert" min_score: 4.0 - id: INT-002 name: "Student Observation - Needs Help" input: "Anna braucht extra Uebungsblatt Bruchrechnung" expected_intent: "student_observation" expected_slots: student_name: "Anna" min_score: 4.0 - id: INT-003 name: "Reminder - Simple" input: "Erinner mich morgen an Hausaufgabenkontrolle" expected_intent: "reminder" expected_slots: time: "morgen" min_score: 4.0 - id: INT-004 name: "Homework Check - With Time" input: "7b Mathe Hausaufgabe kontrollieren, morgen 7:30" expected_intent: "homework_check" expected_slots: class_name: "7b" subject: "Mathe" time: "7:30" min_score: 4.0 - id: INT-005 name: "Conference Topic" input: "Thema Lehrerkonferenz: iPad-Regeln Klasse 6" expected_intent: "conference_topic" min_score: 4.0 - id: INT-006 name: "Correction Note" input: "Aufgabe 3: haeufiger Fehler, naechste Stunde erklaeren" expected_intent: "correction_note" expected_slots: task_number: 3 min_score: 3.5 # Gruppe 2: Arbeitsblatt-Generierung - id: INT-007 name: "Worksheet Generate - Vocabulary" input: "Nimm Vokabeln Lektion 4, mach 3 Lueckentexte" expected_intent: "worksheet_generate" expected_slots: source: "Vokabeln Lektion 4" count: 3 type: "Lueckentexte" min_score: 4.0 - id: INT-008 name: "Worksheet Generate - Simple" input: "Erstelle Arbeitsblatt zu Bruchrechnung" expected_intent: "worksheet_generate" expected_slots: topic: "Bruchrechnung" min_score: 4.0 - id: INT-009 name: "Worksheet Differentiate" input: "Zwei Schwierigkeitsstufen: Basis und Plus" expected_intent: "worksheet_differentiate" min_score: 3.5 # Gruppe 3: Situatives Arbeiten - id: INT-010 name: "Quick Activity - With Time" input: "10 Minuten Einstieg, 5 Aufgaben, leichte Progression" expected_intent: "quick_activity" expected_slots: duration_minutes: 10 task_count: 5 min_score: 4.0 - id: INT-011 name: "Quiz Generate - Vocabulary" input: "10-Minuten Vokabeltest mit Loesungen" expected_intent: "quiz_generate" expected_slots: duration_minutes: 10 with_solutions: true min_score: 4.0 - id: INT-012 name: "Quiz Generate - Short Test" input: "Kurzer Test zu Kapitel 5" expected_intent: "quiz_generate" min_score: 3.5 - id: INT-013 name: "Parent Letter - Neutral" input: "Neutraler Elternbrief wegen wiederholter Stoerungen" expected_intent: "parent_letter" expected_slots: tone: "neutral" reason: "wiederholte Stoerungen" min_score: 4.0 - id: INT-014 name: "Parent Letter - Simple" input: "Schreib einen Elternbrief wegen fehlender Hausaufgaben" expected_intent: "parent_letter" min_score: 4.0 - id: INT-015 name: "Class Message" input: "Nachricht an 8a: Hausaufgaben bis Mittwoch" expected_intent: "class_message" expected_slots: class_name: "8a" deadline: "Mittwoch" min_score: 4.0 # Gruppe 4: Canvas-Editor - id: INT-016 name: "Canvas Edit - Size" input: "Ueberschriften groesser, Zeilenabstand kleiner" expected_intent: "canvas_edit" min_score: 4.0 - id: INT-017 name: "Canvas Edit - Move" input: "Bild 2 nach links, Pfeil von Bild 2 auf Aufgabe 3" expected_intent: "canvas_edit" min_score: 3.5 - id: INT-018 name: "Canvas Layout - A4" input: "Alles auf eine Seite, Drucklayout A4" expected_intent: "canvas_layout" min_score: 4.0 # Gruppe 5: Korrektur & RAG-Assistenz - id: INT-019 name: "Operator Checklist" input: "Operatoren-Checkliste fuer diese Aufgabe" expected_intent: "operator_checklist" is_actionable: false min_score: 4.0 - id: INT-020 name: "EH Passage" input: "Erwartungshorizont-Passage zu diesem Thema" expected_intent: "eh_passage" is_actionable: false min_score: 4.0 - id: INT-021 name: "Feedback Suggest" input: "Kurze Feedbackformulierung vorschlagen" expected_intent: "feedback_suggest" min_score: 3.5 # Gruppe 6: Follow-up - id: INT-022 name: "Reminder Schedule - Tomorrow" input: "Erinner mich morgen an das Gespraech mit Max" expected_intent: "reminder_schedule" expected_slots: time: "morgen" min_score: 4.0 - id: INT-023 name: "Task Summary" input: "Fasse alle offenen Tasks dieser Woche zusammen" expected_intent: "task_summary" is_actionable: false min_score: 4.0