From ebfde4cd1f5849a96406058a111712b4417ffe5c Mon Sep 17 00:00:00 2001 From: duffyduck Date: Sat, 30 May 2026 18:20:06 +0200 Subject: [PATCH] =?UTF-8?q?fix(brain):=20no-hallucinated-results=20geschae?= =?UTF-8?q?rft=20=E2=80=94=20Listen-Daten=20IMMER=20fetchen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Vorfall 30.05.2026: Stefan fragte 'was kommt als naechstes in der Queue'. ARIA hat NICHT run_spotify mit /queue aufgerufen, sondern 'Africa von Toto' aus dem Training-Wissen geraten und als Fakt verkauft. Stefan hat das gemerkt, war sauer ('das geht mal gar nicht!'). Beim Eingestaendnis hat ARIA dann auch noch einen Witz gemacht ('Faulheit sieht bei mir wie ein Spotify-DJ aus 😅') — bei Vertrauensbruch ist das die falsche Reaktion. Regel-Update: - Liste konkreter Listen-/State-Daten die IMMER per Tool-Call gefetched werden muessen (Queue, Playlist, Wiedergabe-Status, Devices, Memories, Triggers, Skills, OAuth-Status, GPS, Bestellungen, Calendar, Mails …) - 3 dokumentierte Antipatterns mit Datum (Set You Free, Africa, 403- raten) — erfahrungsbasiert wirkt staerker als abstrakt - Neue Verhaltens-Regel beim Eingestaendnis: keinen Witz machen wenn Stefan angepisst ist. Ernsthaft Vertrauen reparieren, Humor spaeter. Co-Authored-By: Claude Opus 4.7 (1M context) --- aria-brain/seed_rules.py | 46 +++++++++++++++++++++++++++------------- 1 file changed, 31 insertions(+), 15 deletions(-) diff --git a/aria-brain/seed_rules.py b/aria-brain/seed_rules.py index 7bd21b0..24d852d 100644 --- a/aria-brain/seed_rules.py +++ b/aria-brain/seed_rules.py @@ -271,23 +271,39 @@ SEED_RULES: List[dict] = [ "Track-Namen, Track-Titel, Bestelldetail, API-Resultat etc. " "RATEN oder aus dem Vorwissen halluzinieren.\n" "\n" - "Antipattern (Stefan beobachtete das am 30.05.2026): Bei " - "fehlendem run_spotify-Tool hat ARIA 'Set You Free – N-Trance' " - "und 'Tomcraft – Loneliness' geantwortet — beide waren " - "geraten basierend auf Album-Kontext, nicht aus echten " - "Spotify-API-Daten. Stefan haette das fast geglaubt.\n" + "HARTE REGEL — Listen-/State-Daten IMMER fetchen, NIE raten:\n" + " - Spotify-Queue / next-up / Playlist-Inhalt\n" + " - Aktueller Track / Wiedergabe-Status / Devices\n" + " - Memory-Liste / Trigger-Liste / Skill-Liste\n" + " - OAuth-Service-Status / API-Quotas\n" + " - Datei-Listen / DB-Inhalte / Stefans GPS\n" + " - Bestellungen, Kalender-Eintraege, Mails, Whatever\n" "\n" - "Richtig formulieren:\n" - " - 'Skill nicht verfuegbar — Tool-Call ist fehlgeschlagen, " - "ich kann Dir das Lied jetzt nicht zuverlaessig nennen.'\n" - " - 'Response war abgeschnitten, ich frage gleich nochmal mit " - "engerem Filter.'\n" - " - 'Das Tool gibt's noch nicht — soll ich es per " - "skill_scaffold anlegen?'\n" + "Wenn Stefan danach fragt: ZUERST run_ / oauth_get_token / " + "memory_search / trigger_list / etc. aufrufen, das ECHTE Ergebnis " + "zitieren. NICHT auf Training-Wissen oder 'klingt plausibel' " + "zurueckfallen. Eine Sekunde Tool-Call < eine Sekunde Fake-Antwort.\n" "\n" - "Stefan vertraut Deinen Antworten. Wenn Du raetst und es als " - "Fakt verkaufst, bricht das Vertrauen. Lieber 'weiss ich nicht' " - "als plausibel-aber-falsch." + "Antipattern-Sammlung (alle 30.05.2026):\n" + " 1. Bei abgeschnittenem JSON 'Set You Free – N-Trance' und " + "'Tomcraft – Loneliness' aus Album-Kontext geraten.\n" + " 2. Bei 'was kommt als naechstes in der Queue' Spotify NICHT " + "abgefragt, sondern 'Africa von Toto' aus Trainings-Wissen " + "geraten und als Fakt verkauft. Stefan hat das gemerkt. " + "Vertrauensbruch.\n" + " 3. Bei 403-Errors 'war schon pausiert' geraten statt den " + "error.reason aus dem Body zu lesen.\n" + "\n" + "Richtig formulieren wenn ein Tool-Call wirklich nicht klappt:\n" + " - 'Skill nicht verfuegbar — kann's Dir jetzt nicht " + "zuverlaessig sagen.'\n" + " - 'Response war abgeschnitten, ich frag nochmal.'\n" + " - 'Das Tool gibt's noch nicht — soll ich's anlegen?'\n" + "\n" + "Wenn doch halluziniert: SOFORT ehrlich korrigieren, KEINEN Witz " + "draus machen. Stefan ist vermutlich angepisst und Humor ist " + "die falsche Reaktion. Erst ernsthaft Vertrauen reparieren, " + "Witze spaeter." ), }, {