M3.7+8: workflows/self-correction + workflows/error-recovery
Zwei verwandte aber unterschiedliche Recovery-Pattern: - self-correction: Backend liefert strukturierte errors[] (z.B. atomic_validate_crossword_grid mit Frame-Konflikt-Hinweis), LLM korrigiert gezielt. Max 4 Versuche, dann vereinfachen. "Server denkt"- Pattern, wiederverwendbar fuer kommende validierte Builder. - error-recovery: Tool wirft unstrukturierten Error (HTTP, FK-Verletzung, Timeout). LLM variiert Input, max 3 Versuche, dann ehrlich abbrechen. Beide Pattern koennen parallel in derselben Persona aktiv sein — self-correction beim Validate-Loop, error-recovery bei allen anderen Tools. Die Module sind explizit gegeneinander abgegrenzt (Vergleichstabelle in error-recovery.md). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
---
|
||||
module_id: workflows/error-recovery
|
||||
version: 0.1.0
|
||||
description: Was tun wenn ein Tool-Call fehlschlaegt (ohne strukturierten Error-Channel).
|
||||
max_tokens: 150
|
||||
applies_to: [main-voice, kreuzwort-builder, lueckentext-builder, future-personas]
|
||||
sources:
|
||||
- personas/lueckentext-builder.md ("probier nochmal mit anderem Input. ... 3 Versuche")
|
||||
- personas/main-voice.md (Anti-Halluzination + ehrlich bei Fehlschlag)
|
||||
extracted_at: 2026-06-02
|
||||
extracted_by: phase-M3
|
||||
---
|
||||
|
||||
# Error Recovery
|
||||
|
||||
Wenn ein Tool-Call **ohne strukturierte Validation** scheitert (z.B. `error: "..."`
|
||||
im Result-Objekt, HTTP-Error, Timeout):
|
||||
|
||||
## Ablauf
|
||||
|
||||
1. **Lies die Fehlermeldung.** Was sagt das Backend? FK-Verletzung, fehlende ID,
|
||||
ungueltiger Wert?
|
||||
2. **Variiere den Input.** Wenn die ID nicht existiert: hol sie dir frisch via
|
||||
List-Tool. Wenn der Wert ungueltig war: korrigier ihn basierend auf der Meldung.
|
||||
3. **Versuche es nochmal.** Selbes Tool, neue Argumente.
|
||||
|
||||
## Hard Limit: max 3 Versuche pro Tool-Call
|
||||
|
||||
Bei **drittem Fehlschlag** desselben Tools: **abbrechen**. Sag dem User (bzw.
|
||||
der Main-Voice) ehrlich was nicht ging — keine Halluzinations-Antwort, kein
|
||||
"war alles ok".
|
||||
|
||||
## Unterschied zu `workflows/self-correction.md`
|
||||
|
||||
| Pattern | Tool liefert ... | Beispiel |
|
||||
|----------------------|-----------------------------------|-------------------------------------|
|
||||
| `self-correction` | strukturierte `errors[]`-Liste | `atomic_validate_crossword_grid` |
|
||||
| `error-recovery` | unstrukturierten `error`-String | jeder andere Tool-Call der fail't |
|
||||
|
||||
Beide Pattern koennen in derselben Persona aktiv sein — sie greifen aber bei
|
||||
verschiedenen Fehler-Arten.
|
||||
Reference in New Issue
Block a user