# 🎯 Wie Taskr eigentlich funktioniert

## 3.4 Notizen – Das Gedächtnissystem deiner KI

### Was Notizen wirklich sind

Notizen sind nicht nur beliebiger Text – sie sind strukturierte Erinnerungen, die deiner KI helfen zu verstehen, was zuvor passiert ist. Denk an sie wie:
- **Haftnotizen** auf wichtigen Seiten
- **Randnotizen** in einem Lehrbuch
- **Laborbuch-Einträge** für Experimente

### Die fünf Notiztypen

**FILE_LIST** 📁
- „Ich habe diese 5 Dateien geändert“
- Listet auf, was geändert wurde und warum
- Hilft, den Umfang der Änderungen zu verfolgen

**PROGRESS** 📈
- „Ich habe das Login-System fertiggestellt!“
- Wichtige Meilensteine und Erfolge
- Nur für große Siege, nicht für jede winzige Aufgabe

**CONTEXT** 📚
- „Wir verwenden JWT-Token, weil...“
- Hintergrundinfos und Entscheidungen
- Das „Warum“ hinter den Entscheidungen

**FINDING** 🔍
- „Fehler in der Validierung gefunden“
- „Die API gibt Daten anders zurück als erwartet“
- Entdeckungen, Probleme und Lösungen

**OTHER** 📝
- Alles andere
- Allgemeine Beobachtungen
- Kategorie für den letzten Ausweg

### Wie Notizen mit Aufgaben verknüpft sind

Jede Notiz kann mithilfe der `task_id` an eine Aufgabe „angehängt“ werden. Dies erstellt eine Zeitachse:

```
Aufgabe 1.2: "Login-Formular erstellen"
  └─ NOTE (FILE_LIST): login.tsx, auth.css geändert
  └─ NOTE (FINDING): Formular-Bibliothek hat integrierte Validierung
  └─ NOTE (PROGRESS): Login-Formular fertig und funktionsfähig
```

Zukünftige Agenten können genau sehen, was während jeder Aufgabe passiert ist!

### Notiz-IDs

Jede Notiz erhält eine eindeutige ID wie `NT_ABC123XYZ...` (NT = Note). Du siehst diese in der Ecke der Notizkarten in der Web-Oberfläche. Du kannst dich auf sie beziehen wie: „Wie in Notiz NT_ABC123 erwähnt...“

### Datenbank-Implementierung

Notizen werden in der Tabelle `notes` gespeichert mit:
- Strenger Typisierung via PostgreSQL-Enum für Notiztypen
- Volltextsuche-Indizierung für die Funktion `search_notes`
- Soft-Deletion (`deleted_at`-Feld), um den Verlauf zu bewahren
- Aufgaben-Assoziation durch Foreign-Key-Beziehung

---
