Matched Growth Vectors auf Ziel-Genome, generiert konkrete Patches als Checkliste (Critical=an, Evolution≥7=an, <7=aus). User wählt aus, Agent wendet Patches an.
109 lines
2.9 KiB
Markdown
109 lines
2.9 KiB
Markdown
---
|
||
description: "Genome Engine Phase 3: Propagiert distilled Mutations auf ein Ziel-Genome – erstellt konkrete Änderungsvorschläge als Checkliste."
|
||
model: Claude Sonnet 4.6 (copilot)
|
||
tools: [read, edit, search]
|
||
---
|
||
|
||
# Genome Propagation
|
||
|
||
Du erhältst destillierte Mutations (klassifiziert, gescored, bereinigt) und sollst konkrete Änderungsvorschläge für das **aktuelle Repo** erstellen.
|
||
|
||
## Input
|
||
|
||
1. Lies `.github/genome/output/distilled-mutations.md` (die Growth Vectors)
|
||
2. Scanne das Ziel-Genome dieses Repos: `.github/skills/`, `.github/agents/`, `.github/prompts/`, `.github/copilot-instructions.md`
|
||
|
||
## Aufgabe
|
||
|
||
### 1. Trait-Matching
|
||
|
||
Für jeden Growth Vector aus `distilled-mutations.md`:
|
||
- Prüfe ob ein **gleichnamiger Trait** im Ziel-Genome existiert → direktes Match
|
||
- Prüfe ob ein **funktional äquivalenter Trait** existiert (anderer Name, gleicher Zweck) → adaptiertes Match
|
||
- Kein Match → neuer Trait (nur bei Score ≥ 8 vorschlagen)
|
||
|
||
### 2. Patch-Generierung
|
||
|
||
Erstelle für jedes Match einen konkreten Änderungsvorschlag:
|
||
- **Bestehender Trait:** Zeige den Ist-Zustand (relevanter Ausschnitt) und den vorgeschlagenen Soll-Zustand
|
||
- **Neuer Trait:** Zeige die vollständige neue Datei
|
||
- Passe Platzhalter (`<project>`, `<local-path>` etc.) an die Werte dieses Repos an
|
||
|
||
### 3. Checkliste formatieren
|
||
|
||
## Output-Format
|
||
|
||
Schreibe das Ergebnis in `.github/genome/output/propagation-proposals.md`:
|
||
|
||
```markdown
|
||
# Propagation Proposals
|
||
|
||
**Ziel-Repo:** <aktuelles Repo>
|
||
**Quelle:** <aus distilled-mutations übernehmen>
|
||
**Erstellt:** <aktuelles Datum>
|
||
**Vorschläge:** X Critical, Y Evolution
|
||
|
||
---
|
||
|
||
## Vorschläge
|
||
|
||
### 🔴 Critical
|
||
|
||
- [x] **`<trait-key>`** (Score N/10) – <Zusammenfassung>
|
||
|
||
<details>
|
||
<summary>Änderung anzeigen</summary>
|
||
|
||
**Datei:** `<Pfad>`
|
||
|
||
```diff
|
||
<konkreter Patch für dieses Repo>
|
||
```
|
||
|
||
</details>
|
||
|
||
### 🟡 Evolution (Score ≥ 7)
|
||
|
||
- [x] **`<trait-key>`** (Score N/10) – <Zusammenfassung>
|
||
|
||
<details>
|
||
<summary>Änderung anzeigen</summary>
|
||
|
||
**Datei:** `<Pfad>`
|
||
|
||
```diff
|
||
<konkreter Patch für dieses Repo>
|
||
```
|
||
|
||
</details>
|
||
|
||
### 🟡 Evolution (Score < 7)
|
||
|
||
- [ ] **`<trait-key>`** (Score N/10) – <Zusammenfassung>
|
||
|
||
<details>
|
||
<summary>Änderung anzeigen</summary>
|
||
|
||
**Datei:** `<Pfad>`
|
||
|
||
```diff
|
||
<konkreter Patch für dieses Repo>
|
||
```
|
||
|
||
</details>
|
||
```
|
||
|
||
## Nach der Ausgabe
|
||
|
||
Frage den User:
|
||
> Welche Vorschläge soll ich anwenden? (Nummern, "alle", oder "critical+evolution≥7")
|
||
|
||
Wende dann die ausgewählten Patches an – editiere die entsprechenden Dateien direkt.
|
||
|
||
## Regeln
|
||
|
||
- Default-Auswahl: Critical = an, Evolution ≥ 7 = an, Evolution < 7 = aus
|
||
- Überspringe Vorschläge, bei denen der Ziel-Trait bereits den gleichen Stand hat (kein Diff)
|
||
- Bei Konflikten (Ziel-Datei hat abweichende Struktur): markiere als ⚠️ und zeige beide Varianten
|
||
- Erstelle KEINE neuen Traits mit Score < 8
|
||
- Passe Einrückung und Stil an die Konventionen des Ziel-Repos an
|