# Teilaufgabe 02 – Bessere Vorschläge aus allen Berichtsheften Lies zuerst `prompts/00-MASTER.md`. Dann setze genau diese Aufgabe um. ## Problem Vorschläge sind teilweise schon extrahiert, aber noch nicht gut genug: - zu generisch / künstlich wirkende Varianten - Stil weicht von Nicos echten Formulierungen ab - zu wenig Gewichtung häufiger, typischer Einträge - Schulthemen und Betriebsthemen vermischen sich falsch ## Ziel Eine Vorschlagsdatenbank, die sich **anfühlt wie aus den echten Heften** von Nico. ## Vorgehen 1. **Alle** `.docx` in `1. Ausbildungsjahr/` und `2. Ausbildungsjahr/` erneut parsen (Skript unter `web/scripts/`, Ausgabe z. B. `clean-phrases.json`). 2. Extrahiere sauber getrennt: - **Betriebliche Tätigkeiten** (kurze Sätze wie in den Heften) - **Thema der Woche** - **Berufsschule**-Themen - Häufigkeit je Phrase 3. Qualitätsfilter: - Header/Unterschriften/Nummern-Müll entfernen (`43180`, `Lfd. Nr.`, `…………`, IDs) - Duplikate (case-insensitive) entfernen - Länge typisch halten (wie Originale: oft 1 kurze Zeile, manchmal 1 längerer Satz) - Orte/Firmen aus den Heften behalten: Crailsheim, Feuchtwangen, Rothenburg, WM, Guardey, Bosch-Mobilität, … 4. Aufbau `web/src/data/suggestions.ts`: ```ts { id, text, type: 'betrieb' | 'schule', category, weight?: number } ``` - `weight` = Häufigkeit aus den Heften (für bessere Random-Auswahl) - Nur stilgleiche Varianten ergänzen, wenn nötig – **nicht** erfundene Büro-Floskeln 5. Auswahl-Logik in `web/src/lib/suggest.ts`: - Gewichtet random (häufige Phrasen öfter) - Keine Wiederholung in derselben Woche / bereits genutzte IDs meiden - In Schulwochen: überwiegend Betrieb + passende Schule-Themen - In Ferienwochen: **nur Betrieb**, Schule-Feld = `Ferien` 6. Themen der Woche: echte Liste aus den Heften (`Lagerhaltung`, `Rechnungswesen`, `Büroabläufe`, …). ## Abnahme - [ ] Stichprobe 20 Vorschläge: klingen wie Nico-Hefte - [ ] Keine Müll-Strings / XML-Reste - [ ] Ferienwoche zeigt keine Schul-Vorschläge als Pflicht - [ ] „4 neue“ / „8 neue“ / Auto-füllen liefert abwechslungsreiche, realistische Sets - [ ] Skript reproduzierbar: `npm run generate:suggestions` ## Beispiele guter Stil (Orientierung) - `Termine vereinbart` - `Ablage einsortiert` - `Reifen bestellt` - `Kassenbuch geführt und die Kasse gezählt` - `Teil beim WM in Crailsheim abgeholt` - `Mobilitätsgarantien abgeschlossen` - `Polypolpreisbildung` / `Introducing a Company` (Schule)