From 56673ad78f59cdaf194e14474491cbcc984e0022 Mon Sep 17 00:00:00 2001 From: Soulter <905617992@qq.com> Date: Mon, 15 Dec 2025 15:33:40 +0800 Subject: [PATCH] fix: prevent duplicate result content type after streaming finishes in RespondStage --- astrbot/core/pipeline/respond/stage.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/astrbot/core/pipeline/respond/stage.py b/astrbot/core/pipeline/respond/stage.py index 8f1b87efc..bfbcaf33a 100644 --- a/astrbot/core/pipeline/respond/stage.py +++ b/astrbot/core/pipeline/respond/stage.py @@ -158,7 +158,11 @@ class RespondStage(Stage): result = event.get_result() if result is None: return + if event.get_extra("_streaming_finished", False): + # prevent some plugin make result content type to LLM_RESULT after streaming finished, lead to send again + return if result.result_content_type == ResultContentType.STREAMING_FINISH: + event.set_extra("_streaming_finished", True) return logger.info(