From c52905c28c3a2061ce57be4368bfd86240bc5fd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=8E=BD=E4=B8=8D=E7=BE=81?= Date: Thu, 16 Jul 2026 18:46:57 +0800 Subject: [PATCH] fix(ga): count only consecutive incomplete turns --- ga.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ga.py b/ga.py index c7c20309d..ec2dcdc6d 100644 --- a/ga.py +++ b/ga.py @@ -470,7 +470,9 @@ def do_update_working_checkpoint(self, args, response): return StepOutcome({"result": "working key_info updated"}, next_prompt=next_prompt) def _retry_or_exit(self, prompt): - self._empty_ct = getattr(self, '_empty_ct', 0) + 1 + consecutive = getattr(self, '_empty_turn', -1) == self.current_turn - 1 + self._empty_ct = getattr(self, '_empty_ct', 0) + 1 if consecutive else 1 + self._empty_turn = self.current_turn if self._empty_ct >= 3: return StepOutcome({}, should_exit=True) return StepOutcome({}, next_prompt=prompt)