"""AA-045-F2 Fix 1: Briefings fuer Signale ohne briefing_winkel nachziehen."""
import sys
sys.path.insert(0, "/opt/struktur/social-media-radar")
import sqlite3
conn = sqlite3.connect("/var/lib/sma-data/signals.db")
conn.row_factory = sqlite3.Row
rows = conn.execute("""SELECT * FROM signals
WHERE (briefing_winkel IS NULL OR briefing_winkel='')
AND status NOT IN ('ignoriert','veroeffentlicht')
AND mallorca_relevance > 0
ORDER BY created_at DESC LIMIT 100""").fetchall()
print("Signale ohne Briefing:", len(rows))
from content_briefing import compute_briefing
n = 0
for sig in rows:
res = compute_briefing(dict(sig))
conn.execute("""UPDATE signals SET
briefing_winkel=?, briefing_nutzen=?, briefing_zielgruppe=?,
briefing_post_typ=?, briefing_fb_fit=?, briefing_fb_reason=?,
briefing_li_fit=?, briefing_li_reason=?, briefing_material=?,
briefing_risiko=?, briefing_freigabe=?
WHERE signal_id=?""", (
res["briefing_winkel"], res["briefing_nutzen"], res["briefing_zielgruppe"],
res["briefing_post_typ"], res["briefing_fb_fit"], res["briefing_fb_reason"],
res["briefing_li_fit"], res["briefing_li_reason"], res["briefing_material"],
res["briefing_risiko"], res["briefing_freigabe"], sig["signal_id"]))
n += 1
conn.commit()
print("Briefings nachgetragen:", n)
r = dict(conn.execute(
"SELECT briefing_winkel, briefing_nutzen, briefing_freigabe FROM signals WHERE signal_id LIKE '9b0a4244%'"
).fetchone())
print("9b0a4244:", r)