Skip to content

feat(hook): Session-Startup-Anzeige auf Task-Anzahl + Fehlerstatus reduzieren - #67

Open
markus7h wants to merge 1 commit into
mainfrom
feat/startup-anzeige-reduzieren
Open

feat(hook): Session-Startup-Anzeige auf Task-Anzahl + Fehlerstatus reduzieren#67
markus7h wants to merge 1 commit into
mainfrom
feat/startup-anzeige-reduzieren

Conversation

@markus7h

Copy link
Copy Markdown
Owner

Warum

Die Startzeile zeigte für ai-rem ai-rem: 412 Entities, 908 Relationen plus ein unbeschriftetes 🧠 12 Entities, 30 Rel → Foo, Bar…. Keine der Zahlen hilft am Sitzungsstart, und das Gehirn-Emoji war ohne Label nicht zu deuten.

Neu — nur Anzahl offener Tasks und ob ai-rem grundsätzlich erreichbar ist:

ai-rem ✓ 29 offene Tasks | settings ✓ | Auto-Memory ✓
ai-rem ✗ nicht erreichbar | settings ✓ | Auto-Memory ✗ gestört

Was

  • check_ai_rem(): memory_status entfällt, die Task-Anzahl kommt aus dem ## Offene Tasks (N)-Header von memory_get_context. Der Call läuft über MCP gegen die Kuzu-DB — gelingt er, sind Transport, Auth und DB nachweislich in Ordnung, scheitert er, ist genau das der Fehlerfall. Kein Write-Probe: der schriebe bei jedem Sitzungsstart Datenmüll für einen Fall, der beim ersten echten memory_add ohnehin auffällt.
  • offene_tasks_section() gelöscht: matchte exakt "## Offene Tasks", während der Server seit 8c46d70 (feat(#49): offene Tasks in memory_get_context nach Projekt gruppieren #52) ## Offene Tasks [private] (7) erzeugt — die Funktion lieferte seitdem immer "", der Task-Block war toter Code.
  • check_auto_memory(): Klartext-Status statt Emoji, Detailzahlen raus. Die volle Diagnose geht weiterhin als additionalContext in den Kontext. Zusätzlich Fehlalarm-Fix: ist auto-memory.py gar nicht in settings.json registriert, ist das Feature bewusst aus und wird nicht mehr als „hat noch nie erfolgreich gespeichert" gemeldet.
  • Regressionstest bindet den Server-Header an die Hook-Regex — der nächste Format-Drift fällt auf, statt die Anzeige still zu killen.
  • Doku in beiden Sprachfassungen nachgezogen.

Verifikation

  • pytest -q tests/ — 47 passed (inkl. neuem test_header_matches_hook_regex)
  • ruff check --select E9,F63,F7,F82 . — clean
  • Hook live gegen die Instanz: ai-rem ✓ 29 offene Tasks | settings ✓ | Auto-Memory ✓
  • Fehlerfall mit totem Endpoint: ai-rem ✗ nicht erreichbar | …
  • Auto-Memory gegen eine Fake-CLAUDE_CONFIG_DIR: nicht registriert → gar keine Anzeige; registriert und nie gelaufen → Auto-Memory ✗ gestört + Diagnose im additionalContext

🤖 Generated with Claude Code

https://claude.ai/code/session_01EB2o1oDFzAmm9Faua4oVG2

…duzieren

Die Startzeile zeigte für ai-rem die Entity-/Relations-Zählung und ein
unbeschriftetes 🧠 mit Auto-Memory-Detailzahlen — beides sagt am Sitzungsstart
nichts. Jetzt: "ai-rem ✓ N offene Tasks" bzw. "ai-rem ✗ nicht erreichbar",
Auto-Memory als Klartext-Status statt Emoji.

- check_ai_rem(): memory_status raus, Task-Anzahl aus dem get_context-Header.
  Der Call geht über MCP gegen die DB — gelingt er, sind Transport, Auth und
  DB in Ordnung; scheitert er, ist genau das der Fehlerfall.
- offene_tasks_section() gelöscht: matchte seit 8c46d70 (#52) auf ein Header-
  Format, das der Server nicht mehr erzeugt, und lieferte immer "".
- check_auto_memory(): nur noch "Auto-Memory ✓" / "✗ gestört"; Details bleiben
  in last-run.json, die Diagnose weiterhin als additionalContext. Ist der Hook
  nicht in settings.json registriert, ist Auto-Memory bewusst aus und wird
  nicht mehr als Störung gemeldet.
- Regressionstest bindet den Server-Header an die Hook-Regex, damit der
  nächste Format-Drift nicht wieder still durchgeht.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EB2o1oDFzAmm9Faua4oVG2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant