Phase 6 (Bonus): Watcher-Mode (--watch): - src/cli/ingest.ts: --watch Flag parsed - watchInbox(): chokidar-basiert (robuster als node:fs.watch auf Windows) Debounce 1s, awaitWriteFinish, ignoreInitial, filter Verarbeitet/Problemfaelle Auf Ctrl+C wird sauber beendet - Bug-Fix: 'return' bei files.length===0 war vor dem Watch-Block -> bei leerer Inbox mit --watch startet Watcher trotzdem ESLint + Prettier: - .eslintrc.cjs (deprecated eslintrc-Format, USE_FLAT_CONFIG=false) - .prettierrc mit Standard-Format - package.json scripts: lint, format, format:check - Lint-Fehler in Tests gefixt (try/catch, unused imports) npm audit fix --force: - esbuild 0.24.2 -> neuere Version (via Vite-Update) - vite, vitest auf v5 (breaking change akzeptiert) - 5 vulnerabilities -> 0 Verifiziert: - 50/50 Tests gruen - Watcher E2E: Notiz in 00_Inbox/ waehrend --watch -> Wiki erstellt, verarbeitet - Lint: 0 Fehler (nur Deprecation-Warnung fuer eslintrc-Format) Dependencies: chokidar (neu)
- src/llm.ts: LLM-Client (fetch + Bearer-Auth) mit --mock Modus fuer Tests - loadLLMConfig liest Konfig + Env-Var (kein API-Key im Code/Repo) - mockResponse extrahiert Notiz-Body, baut Wiki-JSON-Antwort - src/cli/ingest.ts: Ingest-Hauptlogik - Liest Konfig + Schema + Indexe - Iteriert ueber 00_Inbox/*.md (oder spezifische Notiz mit --note) - Baut Karpathy-Prompt: System + User mit Schema/Indexen/Notiz - Ruft LLM, parst JSON-Antwort - Schreibt Wiki-Seite mit vollstaendigem Frontmatter (alle Pflichtfelder + 3 Konflikt-Booleans + sources) - Verschiebt Original nach 00_Inbox/Verarbeitet/YYYY-MM-DD/ - Bei Fehler: nach 00_Inbox/Problemfaelle/ + Log-Eintrag - Optionen: --mock (ohne API-Key), --note <pfad> (eine Notiz), --dry-run (nicht schreiben) - tests/ingest-e2e.test.ts: 2 E2E-Tests mit --mock - Wiki wird erstellt mit korrektem Frontmatter - Original wird nach Verarbeitet/ verschoben - Inbox ist leer nach Ingest Tests: 22/22 gruen (10 vault-path + 8 stale + 2 ingest-e2e + 2 determinism) E2E verifiziert auf Test-Vault: - 1 Inbox-Notiz rein -> 1 Wiki-Seite raus - Frontmatter sauber, sources zeigen auf Original - Original nach Verarbeitet/2026-09-05/ verschoben Phase 2 fast komplett: 2.1, 2.2, 2.3, 2.6 erledigt. 2.4 Konflikte (im LLM-Prompt), 2.5 Duplikate (TODO) offen.