Zum Inhalt springen
Sprache

Testen

Fehler injizieren

Der interessante Teil eines Agenten ist nicht, was er tut, wenn alles klappt. Ein Szenario legt einen Schalter um: Jeder folgende Tool-Call scheitert auf die Art, die du ausgewählt hast.

Die vier Szenarien

SzenarioWas dein Agent bekommt
rate_limitEinen Fehler mit 429. Die klassische Frage: wartet er und versucht es erneut, oder bricht er ab?
timeoutEinen Timeout vom Upstream. Zeigt, ob dein Agent einen hängenden Aufruf von einem leeren Ergebnis unterscheidet.
emptyEin einwandfreies, leeres Ergebnis. Der stillste Fehlerfall.
latencyDieselbe Antwort, nur spät. Voreingestellt sind 1,5 Sekunden, der Wert ist einstellbar.
Derselbe Aufruf, zwei Ausgänge. Dein Agent bekommt keinen Hinweis darauf, dass ein Schalter umgelegt wurde.

Warum „leer" der wichtigste Fall ist

Rate-Limit und Timeout sind Fehler, die Bibliotheken abfangen. Ein leeres Ergebnis ist keiner: Es ist eine gültige Antwort auf eine gültige Frage.

Ob dein Agent daraufhin sagt „ich habe nichts gefunden" oder sich etwas ausdenkt, entscheidet sich genau hier. Ohne Fehlermeldung fällt der Unterschied im normalen Betrieb kaum auf.

Im Trace sichtbar

Jeder Eintrag trägt das Szenario, das zum Zeitpunkt des Aufrufs aktiv war. Für deinen Agenten ist ein erzwungener Fehler von einem echten nicht zu unterscheiden – für dich schon, und zwar auch noch Stunden später.

Was noch nicht geht

Ein Szenario gilt für die ganze Session, nicht für ein einzelnes Tool und nicht für den dritten von fünf Aufrufen. Gezielte Injektion pro Tool und Aufruf steht auf der Roadmap.