docs(skill): Mehrrunden-Rückfragen + verständlicher Laien-Changelog

- Mehrrundiger Dialog (Open→NeedsInfo→Answered→…→Resolved): jede weitere Antwort
  bringt das Ticket wieder in Bearbeitung. Kontext-Träger ist das TICKET (voller
  Verlauf + Triage-Eintrag), nicht der Subagent (sitzungsgebunden) — ein
  wiederaufgreifender Agent rekonstruiert denselben Kontext; echte Agent-
  Fortsetzung nur innerhalb einer Session via SendMessage. Datenmodell:
  Frage/Antwort als Thread (mehrere Runden), nicht nur ein Paar.
- fixNote-Changelog: harte Regel „nur für die Züchterin, kein Technik-Geschwafel"
  + Gut/Schlecht-Beispiele (Tiernamen statt IDs, keine Datei-/Feldnamen).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-22 21:13:51 +02:00
parent 5edd84046d
commit 8bfa2a7911

View File

@@ -104,10 +104,20 @@ ab — aber erst **nachdem der Fix verifiziert und (bei Daten-/Import-Fixes) liv
eingespielt ist** (Schritt 5), damit „erledigt" auch stimmt: eingespielt ist** (Schritt 5), damit „erledigt" auch stimmt:
`PUT /feedback/{id}` mit `{"status": "Resolved", "fixNote": "<verständliche `PUT /feedback/{id}` mit `{"status": "Resolved", "fixNote": "<verständliche
Erklärung, was korrigiert wurde>"}`. Erklärung, was korrigiert wurde>"}`.
Die `fixNote` ist ein **Changelog für die Züchterin**: einfache, freundliche **Die `fixNote` ist ein Changelog AUSSCHLIESSLICH für die Züchterin (Laiin) —
Sprache, keine Code-/Fachbegriffe, sagt was korrigiert wurde und ggf. was sie tun kein technisches Geschwafel.** Harte Regel:
soll. Beispiel: „Die Mutter von Yuki wurde auf Izumi korrigiert (vorher fälschlich - Schreib, **was sich für SIE sichtbar geändert hat**, in Alltagssprache; 13 Sätze.
Benjiro). Bitte den Stammbaum neu laden." - KEINE Dateinamen, Funktionen, Feldnamen, IDs, Status-Codes, „Resolver/Migration/
Genotyp-Parser/isResident/conflict-decisions" o. Ä. Nenne Tiere/Würfe bei ihrem
**Namen**, nicht per ID.
- Sag ggf., was sie tun soll (z. B. „Seite neu laden").
Gut: „Die Mutter von **Yuki** war falsch — sie ist jetzt **Izumi** (vorher stand
da Benjiro). Bitte den Stammbaum neu laden."
Gut: „**Hagrid** wird nicht mehr als dein eigenes Tier geführt, sondern nur noch
als Vorfahre — seine Würfe und der Charakter-Bereich werden nicht mehr angezeigt."
Schlecht (NICHT so): „assign_parent_roles korrigiert, motherId via
conflict-decisions.json gesetzt, re-ingest." / „isResident=false gesetzt."
### Abschluss-Regel (wichtig) ### Abschluss-Regel (wichtig)
**Kein bearbeitetes Ticket bleibt offen liegen.** Jedes `Open`/`Answered`-Ticket **Kein bearbeitetes Ticket bleibt offen liegen.** Jedes `Open`/`Answered`-Ticket
@@ -117,6 +127,29 @@ endet nach einem Lauf in genau einem Endzustand:
Kann ein Ticket weder gefixt noch sinnvoll erfragt werden, stelle trotzdem eine Kann ein Ticket weder gefixt noch sinnvoll erfragt werden, stelle trotzdem eine
klärende Rückfrage (NeedsInfo) statt es offen zu lassen. klärende Rückfrage (NeedsInfo) statt es offen zu lassen.
## Mehrrundige Rückfragen & Kontext-Kontinuität
Der Dialog kann mehrere Runden haben: `Open → (Rückfrage) NeedsInfo → (Antwort)
Answered → (KI prüft) ggf. neue Rückfrage NeedsInfo → Answered → … → Resolved`.
Jede **weitere Antwort** der Züchterin bringt das Ticket wieder auf `Answered` und
damit erneut in die Bearbeitung (Schritt 1 filtert `Answered` immer mit ein).
**Kontext-Träger ist das Ticket, nicht der Subagent.** Subagenten sind
sitzungsgebunden — antwortet die Züchterin später (neue Session), existiert der
ursprüngliche Agent nicht mehr. Daher MUSS der gesamte Verlauf am Ticket hängen
(Frage/Antwort je Runde) + der Triage-Eintrag in `docs/ticket-triage.md`. Beim
Wiederaufgreifen eines `Answered`-Tickets lädt der Subagent diesen vollständigen
Verlauf + die frühere Triage und macht **mit demselben Kontext** weiter (statt bei
null neu zu untersuchen) — praktisch „derselbe Vorgang, fortgesetzt".
**Innerhalb derselben Session** kann man stattdessen denselben Subagenten direkt
fortsetzen (SendMessage an seine Agent-ID, Kontext bleibt erhalten) — nur dann ist
echte Agent-Kontinuität möglich.
Das Datenmodell unterstützt Mehrrunden über einen **Verlauf/Thread** am Ticket
(mehrere Frage/Antwort-Einträge mit Autor + Zeit), nicht nur ein einzelnes
Frage/Antwort-Paar — so geht bei weiteren Antworten nichts verloren.
## Verifikation vor „fertig" ## Verifikation vor „fertig"
- Code-Fixes: `npx tsc --noEmit`, `npx vitest run`, betroffene `npx playwright test`, - Code-Fixes: `npx tsc --noEmit`, `npx vitest run`, betroffene `npx playwright test`,
`dotnet build`/`dotnet test`, Python-`test_*.py` — grün. `dotnet build`/`dotnet test`, Python-`test_*.py` — grün.