feat(translator): Feature-Flag TRANSLATOR_ENABLED zum Abschalten
Ueber die ENV-Variable TRANSLATOR_ENABLED (default true) kann der Translator-Agent komplett deaktiviert werden. Wenn false: - translate_articles steigt mit return [] aus, ohne Claude-Calls - Fremdsprachige Artikel bleiben unuebersetzt (headline_de/content_de NULL) Hintergrund: Bei Lage 6 Irankonflikt sind 10.210 Artikel ohne DE-Uebersetzung aufgelaufen. Pro Refresh werden 2042 Batches sequentiell gestreamt (~25s/Batch -> 13.5h Gesamtdauer pro Refresh), was den Pipeline-Step factcheck blockiert und die Queue lahmlegt. Bis das Performance-Thema geloest ist (Parallelisierung, Relevanz-Filter, Hard-Cap), wird der Agent live deaktiviert. Zustand spaeter ueber .env wieder aktivierbar. Live-.env wurde mit TRANSLATOR_ENABLED=false ergaenzt.
Dieser Commit ist enthalten in:
@@ -12,7 +12,7 @@ import logging
|
||||
import re
|
||||
|
||||
from agents.claude_client import call_claude, ClaudeUsage, UsageAccumulator
|
||||
from config import CLAUDE_MODEL_FAST
|
||||
from config import CLAUDE_MODEL_FAST, TRANSLATOR_ENABLED
|
||||
|
||||
logger = logging.getLogger("osint.translator")
|
||||
|
||||
@@ -230,6 +230,13 @@ async def translate_articles(
|
||||
if not articles:
|
||||
return []
|
||||
|
||||
if not TRANSLATOR_ENABLED:
|
||||
logger.info(
|
||||
"Translator deaktiviert (TRANSLATOR_ENABLED=false), %d Artikel uebersprungen",
|
||||
len(articles),
|
||||
)
|
||||
return []
|
||||
|
||||
all_translations = []
|
||||
for i in range(0, len(articles), batch_size):
|
||||
batch = articles[i : i + batch_size]
|
||||
|
||||
@@ -41,6 +41,10 @@ OUTPUT_LANGUAGE = "Deutsch"
|
||||
# In Kundenversion auf False setzen oder Env-Variable entfernen
|
||||
DEV_MODE = os.environ.get("DEV_MODE", "true").lower() == "true"
|
||||
|
||||
# Feature-Flag: Translator-Agent (Haiku) komplett deaktivieren.
|
||||
# False = keine Uebersetzungen mehr, fremdsprachige Artikel bleiben unuebersetzt.
|
||||
TRANSLATOR_ENABLED = os.environ.get("TRANSLATOR_ENABLED", "true").lower() == "true"
|
||||
|
||||
# RSS-Feeds (Fallback, primär aus DB geladen)
|
||||
RSS_FEEDS = {
|
||||
"deutsch": [
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren