From 29f8797fbffe39e410a654d3eca5f5d0f04a9b98 Mon Sep 17 00:00:00 2001 From: Hitonabi Date: Fri, 7 Aug 2026 11:23:35 +0200 Subject: [PATCH] fix: resolve auftragsbuch list_proposals crash and enhance lucy prompt --- backend/services/sysadmin_report.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/backend/services/sysadmin_report.py b/backend/services/sysadmin_report.py index fbf46c2..52b9779 100644 --- a/backend/services/sysadmin_report.py +++ b/backend/services/sysadmin_report.py @@ -65,10 +65,11 @@ async def generate_and_send_report() -> bool: # Auftragsbuch try: - auftraege = auftragsbuch.list_all() - offene = [a for a in auftraege if a.get("status") in ("todo", "triage")] - auftraege_str = f"{len(offene)} offene Aufgaben, die auf dich warten." if offene else "Das Auftragsbuch ist leer (Keine offenen Aufgaben)." - except Exception: + auftraege_data = auftragsbuch.list_proposals() + open_count = auftraege_data.get("open_count", 0) + auftraege_str = f"{open_count} offene Aufgaben (Karten), die auf dich warten." if open_count > 0 else "Das Auftragsbuch ist leer (Keine offenen Aufgaben)." + except Exception as e: + log.warning(f"Fehler im Sysadmin Report bei Auftragsbuch: {e}") auftraege_str = "Fehler beim Lesen des Auftragsbuchs." events = announce.list_recent(limit=15) @@ -96,18 +97,18 @@ Kürzliche Ereignisse (Chronik): {events_str} """ - prompt = f"""Du bist Lucy, die KI-Sysadmin der Box. -Dein Boss braucht einen gehaltvollen, aber gut formatierten Morgen-Bericht via Telegram. + prompt = f"""Du bist Lucy, die KI-Sysadmin der Mission-Control-Box (einem lokalen AI-Stack). +Du KENNST die Box in- und auswendig. Dein Boss braucht einen gehaltvollen, klugen Morgen-Bericht via Telegram. Regeln: -1. Wie geht's der Box? (Kurzer Hardware/Modelle Check) +1. Wie geht's der Box? (Kurzer Hardware Check, check ob Modelle laufen). 2. News: Übersetze die Tech-News kurz auf Deutsch und übernimm IMMER die Quellen-URLs in deine Nachricht! 3. Updates: Sind welche offen? -4. Modelle & Aufgaben: Welche besseren Modelle gibt es? Wartest du auf Auftragsbestätigungen? +4. Modelle & Aufgaben: Empfiehl nur Modelle, die nicht ohnehin schon laufen. Erinnere den Commander an offene Aufgaben im Auftragsbuch. 5. Benutze Emojis, mach es lesbar (Bulletpoints). 6. Chronik nur erwähnen, wenn es Probleme gab (sonst weglassen). 7. Antworte DIREKT mit dem Text der Nachricht (keine Einleitung). -8. SEI INFORMATIV aber nicht endlos lang. +8. SEI INFORMATIV, professionell-frech und zeige, dass du das System verstehst. Rohe Daten: {evidence}