From b3b5dbf37d9f5e8b87a17015bbf9870b548fe236 Mon Sep 17 00:00:00 2001 From: team3 Date: Mon, 22 Jun 2026 17:43:31 +0200 Subject: [PATCH] update --- backend/bausteine.py | 4 ++-- backend/config.py | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/backend/bausteine.py b/backend/bausteine.py index 7856d15..1bf1035 100644 --- a/backend/bausteine.py +++ b/backend/bausteine.py @@ -18,7 +18,7 @@ import subprocess from pathlib import Path from agents import kill_process, cancel_scope, clear_scope -from config import KONSENS_GRACE, KONSENS_MAX_RUNDEN, DEFAULT_PROVIDER +from config import KONSENS_GRACE, RECHERCHE_GRACE, KONSENS_MAX_RUNDEN, DEFAULT_PROVIDER from fsutil import atomic_write_text, atomic_write_json from jsonio import read_json_file as _json_datei from lernen import FRAGETYPEN @@ -1143,7 +1143,7 @@ async def generate_bausteine(topic: str, instructions: str = "", provider: str = neue = await _race( topic, "Recherche", slots, 3 - vorhanden, _timeout("recherche"), provider, on_update=lambda c: set_p(f"Recherche läuft ({vorhanden + c} gültig, min. 3)…"), - cancelled=is_cancelled, grace=KONSENS_GRACE, + cancelled=is_cancelled, grace=RECHERCHE_GRACE, ) if is_cancelled(): abgebrochen() diff --git a/backend/config.py b/backend/config.py index 3a893a2..45d77cc 100644 --- a/backend/config.py +++ b/backend/config.py @@ -32,6 +32,11 @@ MAX_CONCURRENT_INTERACTIVE = 4 # werden (Kill nur, wenn das Minimum schon steht). KONSENS_GRACE = 300 +# Recherche-Race: längeres Grace-Fenster. Recherche treibt die ganze Bausteine-Anzahl; +# bei langsamen Providern (z.B. MiniMax) sollen ALLE 5 Agenten fertig werden, nicht nur +# das Quorum von 3. Pro-Agent-Timeout (TIMEOUTS["recherche"]=1800s) deckelt echte Hänger. +RECHERCHE_GRACE = 900 + # Cap der Klärungs- und Prüf-Loops: maximale Runden, bis alles entschieden sein # muss. In der letzten Runde MUSS der Mapping-Agent jeden Eintrag entscheiden; # Prüf-Loops lassen Rest-Beanstandungen danach stehen.