From 241436306483045454cd08125a9baa4eff6329cd Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 6 Aug 2026 02:15:44 +0100 Subject: tea: End turn with refusal if LLM query fails. --- kaagum/tea.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/kaagum/tea.scm b/kaagum/tea.scm index d6108da..12d455c 100644 --- a/kaagum/tea.scm +++ b/kaagum/tea.scm @@ -36,6 +36,7 @@ #:use-module (kaagum tools) #:use-module (kaagum trace) #:use-module (kaagum utils) + #:use-module (kaagum web) #:export (run-tea-loop)) (define %tool-allow-once @@ -950,6 +951,15 @@ in @code{tea-loop}." request-id state))))) (client-request-effects json-message models tools))))) + ;; End turn if message is an LLM response containing an HTTP error. + ((and (llm-response? message) + (http-error? (llm-response-json message))) + (end-turn-effects (llm-response-session-id message) + models + ;; TODO: The v2 version of the protocol allows custom stop + ;; reasons. Perhaps we can use that here to be more + ;; specific about the cause of the failure. + "refusal")) ((llm-response? message) (llm-response-effects message tools models)) ((tool-call-result? message) -- cgit 1.4.1