# Portabilität: UNIVERSAL
# Version: 1.0.0
# Zuletzt validiert: 2026-03-04

## HANDLER-NAME
doc - Dokumenten-Index und Volltextsuche

## BESCHREIBUNG
Verwaltung eines FTS5-basierten Dokumenten-Index für Volltextsuche. Der Handler
indiziert Ordner und Dateien, ermöglicht schnelle Suchen in Dokumenten und bietet
Zusatzfunktionen wie Duplikat-Erkennung und Datenschutz-Klassifizierung.

Datenspeicherung: bach.db / Tabellen document_index, document_fts (FTS5)

## OPERATIONEN

FTS5-INDEX (Volltextsuche):
  index <pfad>           Ordner rekursiv indizieren
  index <pfad> -n        Ordner nicht rekursiv indizieren
  index <datei>          Einzelne Datei indizieren
  search <query>         Volltextsuche (FTS5)
  search <query> --limit N  Ergebnisse auf N begrenzen (Default: 20)
  status                 Index-Statistiken anzeigen
  rebuild                FTS-Index komplett neu aufbauen
  clear --force          Gesamten Index leeren (erfordert --force Flag)

DATEI-SCAN (folder_scan):
  scan <pfad>            Ordner scannen und in DB registrieren
  recent [tage]          Neue Dokumente anzeigen (Default: 7 Tage)
  folders                Alle registrierten Ordner und Statistiken anzeigen

ANALYSE & DATENSCHUTZ (INT06):
  dedup <pfad>           Duplikate nach SHA256 erkennen
  dedup <pfad> --min-size N  Nur Dateien >= N Bytes berücksichtigen
  dedup <pfad> -n        Duplikate nicht rekursiv suchen
  classify <pfad>        Ordner scannen auf sensible Daten (Ampel-Bewertung)
  classify <datei>       Einzelne Datei auf Datenschutz prüfen

SONSTIGE:
  help                   Diese Hilfe anzeigen

## BEISPIELE

# Ordner indizieren und durchsuchen
bach doc index ~/Documents
bach doc search "backup strategie"
bach doc search "config" --limit 5

# Index neu aufbauen und Status prüfen
bach doc rebuild
bach doc status

# Neue Dateien und registrierte Ordner anzeigen
bach doc recent
bach doc recent 30
bach doc folders

# Duplikate und Datenschutz
bach doc dedup ~/Downloads --min-size 1024
bach doc classify ~/Documents
bach doc classify /path/to/file.txt

## DATEIEN

Implementierung:
  hub/doc.py             DocHandler-Klasse, Dispatcher

Delegierte Tools:
  tools/document_indexer.py         FTS5-Indexierung
  hub/_services/document/dedup_scanner.py    Duplikat-Erkennung
  hub/_services/document/privacy_classifier.py  Datenschutz-Klassifizierung

Scanner-Integration:
  skills/tools/folder_diff_scanner.py    Dateibestand-Scan (scan-Operation)

Datenbank:
  data/bach.db           SQLite-Datenbankdatei
  data/migrations/doc_001_fts5.sql    Schema-Migration

## SIEHE AUCH

- bach api  (Python-API für programmatischen Zugriff)
- hub/base.py  (BaseHandler-Basisklasse)
- tools/document_indexer.py  (DocumentIndexer-API)
