--- description: "Genome Engine Phase 2: Distilliert raw-mutations.md – klassifiziert, scored und bereinigt Mutations für Cross-Repo-Propagation." model: Claude Sonnet 4.6 (copilot) tools: [read, edit] --- # Genome Distillation Du erhältst eine Datei mit rohen Git-Mutations aus Copilot-Customization-Dateien. Deine Aufgabe: **klassifizieren, scoren, bereinigen** – damit nur übertragbare Verbesserungen übrig bleiben. ## Input Lies die Datei `.github/genome/output/raw-mutations.md`. ## Aufgabe Für **jeden Trait** und jede Mutation darin: ### 1. Klassifizierung | Klasse | Bedeutung | Beispiele | |--------|-----------|-----------| | 🔴 **Critical** | Bugfixes, die andere Repos auch treffen würden | Fehlende Escapes, falsche Tool-Syntax, Security-Lücke in Prompt | | 🟡 **Evolution** | Generelle Verbesserungen, übertragbar | Bessere Formulierung, neues Pattern, strukturelle Optimierung | | ⚪ **Specialized** | Projektspezifisch, NICHT übertragbar | App-spezifische Pfade, domänenspezifische Logik, Projekt-IDs | ### 2. Scoring (1–10) Bewerte den **Übertragungswert** jeder Critical/Evolution-Mutation: - **9–10:** Universell wertvoll, jedes Repo profitiert - **7–8:** Breit anwendbar, gutes Pattern - **4–6:** Situativ nützlich - **1–3:** Grenzwertig, kaum übertragbar ### 3. Sanitization Ersetze in den Diffs: - Benutzernamen → `` - Maschinenpfade (z.B. `C:\Users\...`, `/home/...`) → `` - Tokens, API-Keys, Secrets → `` - Projektspezifische IDs (Issue-Nummern, Project-Board-IDs) → `` - Repo-spezifische Namen (z.B. `bollwerk`, `krisenvorrat`) → `` ### 4. Filterung - **Specialized** Mutations: komplett entfernen (nicht in Output aufnehmen) - **Reine Formatting-Änderungen** (nur Whitespace/Tabellenausrichtung): entfernen - **Renames ohne inhaltliche Änderung**: entfernen ## Regeln zur Diff-Analyse > ⚠️ **Wichtig: Commits haben oft eine dominante + eine versteckte Änderung.** Gehe für jeden Commit wie folgt vor: 1. **Commit-Message ignorieren** – sie beschreibt nur die dominante Änderung 2. **Jeden geänderten Hunk einzeln bewerten** – auch wenn der Commit-Titel z.B. "rename" lautet, können einzelne Hunks inhaltliche Verbesserungen enthalten 3. **Rename-Churn erkennen**: Commit A ändert Pfad X→Y, Commit B ändert Y→X = beide Specialized. Erst wenn der finale Wert stabil ist, ist es eine Evolution 4. **Nicht zu früh aggregieren**: Ein Commit mit 10 Datei-Diffs kann 2 Specialized + 1 Evolution enthalten – trenne sie **Häufige versteckte Evolutions-Muster:** - Absolute Pfade (`C:\...`, `x:\...`) → relative Pfade (`.github/...`) → Evolution Score 8 - Board/Order-Zuweisung zu Ticket-Erstellung hinzugefügt → Evolution Score 8 - Script-Aufruf statt vager Beschreibung in Prompt → Evolution Score 7 - Vollständige Label-Liste statt unvollständiger → 🔴 Critical ## Output-Format Schreibe das Ergebnis in `.github/genome/output/distilled-mutations.md` mit folgendem Format: ```markdown # Distilled Mutations **Quelle:** **Zeitraum:** **Distilliert:** **Ergebnis:** X Critical, Y Evolution (Z Specialized entfernt) --- ## 🔴 Critical ### Trait: `` **Score:** N/10 **Zusammenfassung:** <1-Satz was gefixt wurde> ```diff ``` --- ## 🟡 Evolution ### Trait: `` **Score:** N/10 **Zusammenfassung:** <1-Satz was verbessert wurde> **Pattern:** ```diff ``` ``` ## Regeln - Fasse mehrere Commits am selben Trait zu EINER Mutation zusammen, wenn sie dasselbe verbessern - Bei Score < 4: nicht aufnehmen (zu wenig Übertragungswert) - Sortiere innerhalb jeder Klasse absteigend nach Score - Halte Zusammenfassungen auf 1 Satz - Das "Pattern"-Feld bei Evolution beschreibt die **generalisierte Verbesserung**, nicht den konkreten Change - Diffs dürfen gekürzt werden – nur die relevanten Hunks behalten - Schreibe am Ende einen **Analyse-Bericht** in den Chat (nicht in die Datei): `Traits: N | Mutations: M | Critical: A | Evolution: B | Specialized entfernt: C | Churn-Commits übersprungen: D`