bug: Code-Snippets werden nicht gespeichert #257

Closed
opened 2026-01-25 10:36:25 +00:00 by jack · 1 comment
Owner

Beschreibung

Code-Snippets werden aktuell nicht (mehr?) gespeichert. Es ist unklar ob das Feature nie funktioniert hat oder ob es durch kürzliche Änderungen kaputt gegangen ist.

Zu prüfen

  • Werden Code-Snippets überhaupt erkannt/extrahiert?
  • Gibt es eine Tabelle/Entity für Code-Snippets?
  • Funktioniert die Extraktion im Worker/Summarizer?
  • Werden Snippets in Observations mit Typ "code" gespeichert?
  • Gibt es UI-Komponenten zur Anzeige von Code-Snippets?

Erwartetes Verhalten

  • Code-Blöcke aus Claude-Sessions sollten erkannt werden
  • Relevante Snippets sollten als Observations gespeichert werden
  • Snippets sollten in der UI durchsuchbar/anzeigbar sein

Mögliche Ursachen

  • Feature nie vollständig implementiert
  • Durch Database-Refactoring kaputt gegangen
  • Worker-Task für Snippet-Extraktion fehlt/deaktiviert
  • Observation-Typ "code" wird nicht korrekt verarbeitet

Debugging-Schritte

  1. Prüfen ob type: 'code' Observations in DB existieren
  2. Worker-Logs auf Snippet-Extraktion prüfen
  3. Prompt/Summarizer auf Code-Erkennung prüfen
## Beschreibung Code-Snippets werden aktuell nicht (mehr?) gespeichert. Es ist unklar ob das Feature nie funktioniert hat oder ob es durch kürzliche Änderungen kaputt gegangen ist. ## Zu prüfen - [ ] Werden Code-Snippets überhaupt erkannt/extrahiert? - [ ] Gibt es eine Tabelle/Entity für Code-Snippets? - [ ] Funktioniert die Extraktion im Worker/Summarizer? - [ ] Werden Snippets in Observations mit Typ "code" gespeichert? - [ ] Gibt es UI-Komponenten zur Anzeige von Code-Snippets? ## Erwartetes Verhalten - Code-Blöcke aus Claude-Sessions sollten erkannt werden - Relevante Snippets sollten als Observations gespeichert werden - Snippets sollten in der UI durchsuchbar/anzeigbar sein ## Mögliche Ursachen - Feature nie vollständig implementiert - Durch Database-Refactoring kaputt gegangen - Worker-Task für Snippet-Extraktion fehlt/deaktiviert - Observation-Typ "code" wird nicht korrekt verarbeitet ## Debugging-Schritte 1. Prüfen ob `type: 'code'` Observations in DB existieren 2. Worker-Logs auf Snippet-Extraktion prüfen 3. Prompt/Summarizer auf Code-Erkennung prüfen
Author
Owner

Root Cause Found

The extractCodeBlocks method in task-dispatcher.ts uses a regex to match fenced code blocks:

const fencedCodeRegex = /```(\w+)?\s*\n([\s\S]*?)```/g;

This regex expects real newline characters (\n = char 10).

However, tool outputs from the API contain escaped newlines (\\n = chars 92+110, the literal string \n).

Fix

Added normalization before running the regex:

const normalizedText = text.replace(/\\n/g, '\n');

Verified the fix works - code blocks are now matched correctly.

## Root Cause Found The `extractCodeBlocks` method in `task-dispatcher.ts` uses a regex to match fenced code blocks: ```typescript const fencedCodeRegex = /```(\w+)?\s*\n([\s\S]*?)```/g; ``` This regex expects **real newline characters** (`\n` = char 10). However, tool outputs from the API contain **escaped newlines** (`\\n` = chars 92+110, the literal string `\n`). ## Fix Added normalization before running the regex: ```typescript const normalizedText = text.replace(/\\n/g, '\n'); ``` Verified the fix works - code blocks are now matched correctly.
jack closed this issue 2026-01-25 10:43:54 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
customable/claude-mem#257
No description provided.