feat: Adhoc-Recherche bekommt bestehende Artikel als Kontext
- RESEARCH_PROMPT_TEMPLATE: {existing_context} Platzhalter eingefügt
- search(): Baut bei Adhoc-Folge-Refreshes Kontextblock mit bis zu 30 bekannten Headlines auf
- orchestrator: Übergibt bestehende Artikel jetzt für ALLE Incident-Typen, nicht nur Research
Effekt: Bei Adhoc-Auto-Refreshes findet Claude WebSearch gezielt neue Quellen statt immer dieselben Mainstream-Treffer
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Dieser Commit ist enthalten in:
@@ -624,9 +624,9 @@ class AgentOrchestrator:
|
||||
async def _web_search_pipeline():
|
||||
"""Claude WebSearch-Recherche."""
|
||||
researcher = ResearcherAgent()
|
||||
# Bei Research: bestehende Artikel als Kontext mitgeben
|
||||
# Bestehende Artikel als Kontext mitgeben (Research + Adhoc)
|
||||
existing_for_context = None
|
||||
if incident_type == "research" and existing_db_articles_full:
|
||||
if existing_db_articles_full:
|
||||
existing_for_context = [
|
||||
{"source": row["source"] if "source" in row.keys() else "",
|
||||
"headline": row["headline"],
|
||||
|
||||
@@ -14,7 +14,7 @@ WICHTIG: Verwende IMMER echte UTF-8-Umlaute (ä, ö, ü, ß) — NIEMALS Umschre
|
||||
AUFTRAG: Suche nach aktuellen Informationen zu folgendem Vorfall:
|
||||
Titel: {title}
|
||||
Kontext: {description}
|
||||
|
||||
{existing_context}
|
||||
REGELN:
|
||||
- Suche nur bei seriösen Nachrichtenquellen (Nachrichtenagenturen, Qualitätszeitungen, öffentlich-rechtliche Medien, Behörden)
|
||||
- KEIN Social Media (Twitter/X, Facebook, Instagram, TikTok, Reddit)
|
||||
@@ -331,9 +331,21 @@ class ResearcherAgent:
|
||||
)
|
||||
else:
|
||||
lang_instruction = LANG_INTERNATIONAL if international else LANG_GERMAN_ONLY
|
||||
# Bestehende Artikel als Kontext: bei Folge-Refreshes findet Claude andere Quellen
|
||||
existing_context = ""
|
||||
if existing_articles:
|
||||
known_lines = []
|
||||
for art in existing_articles[:30]: # Max 30 bei adhoc (kompakter als research)
|
||||
source = art.get("source", "Unbekannt")
|
||||
headline = art.get("headline", "")
|
||||
known_lines.append(f"- {source}: {headline}")
|
||||
existing_context = (
|
||||
"BEREITS BEKANNTE QUELLEN (aus RSS-Feeds und vorherigen Recherchen) — suche ANDERE Blickwinkel und Quellen:\n"
|
||||
+ "\n".join(known_lines) + "\n"
|
||||
)
|
||||
prompt = RESEARCH_PROMPT_TEMPLATE.format(
|
||||
title=title, description=description, language_instruction=lang_instruction,
|
||||
output_language=OUTPUT_LANGUAGE,
|
||||
output_language=OUTPUT_LANGUAGE, existing_context=existing_context,
|
||||
)
|
||||
|
||||
try:
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren