• V2.7.0-stability&Cleanup cdcaff184f

    Mindnet v2.7.0 (Smart Stability & Clean Code Update)
    All checks were successful
    Deploy mindnet to llm-node / deploy (push) Successful in 4s
    Stable

    Lars released this 2025-12-16 18:56:34 +01:00 | 295 commits to main since this release

    Release Note: Mindnet v2.7.0 (Smart Stability & Clean Code Update)

    Datum: 2025-12-16
    Workpackages: WP-14 (Stability), WP-15 (Smart Allocation) & Refactoring
    Status: Major Feature & Architecture Release

    🚀 Zusammenfassung

    Dieses Release kombiniert höhere Intelligenz (Smart Edge Allocation, präzises Chunking) mit massiver Stabilität (Async I/O, Traffic Control). Das System ist nun in der Lage, während intensiver Hintergrundprozesse reaktionsschnell zu bleiben und strukturiertes Wissen ("Leitbild", "ADRs") logisch korrekt zu zerlegen.

    Zusätzlich wurde eine umfassende Code-Bereinigung durchgeführt: Legacy-Artefakte (V0.1/V1) wurden entfernt und die Architektur strikt auf das 4-Säulen-Modell (Backend, Frontend, Ops, Tests) ausgerichtet.


    Neue Features

    1. Smart Edge Allocation & Traffic Control (WP-15)

    • Präzision: Kanten (Links) einer Notiz werden nicht mehr blind allen Textabschnitten zugeordnet. Ein LLM (SemanticAnalyzer) prüft im Hintergrund, welcher Chunk für welchen Link relevant ist.
    • Traffic Control: Der neue MINDNET_LLM_BACKGROUND_LIMIT Parameter (Default: 2) drosselt parallele Import-Tasks via Semaphore. Chat-Anfragen erhalten Vorfahrt (priority="realtime").

    2. Hybrid Chunking Strategies (WP-15)

    Die Zerlegung von Texten wurde fundamental überarbeitet:

    • Strict Heading Split: Für strukturierte Daten (Profile, Werte) wird strikt an Überschriften getrennt (z.B. H2). Kein Vermischen von Themen mehr.
    • Safety Net: Auch im strikten Modus werden "Monster-Abschnitte" (> max_tokens) zwangsweise geteilt, um das Kontextfenster nicht zu sprengen.
    • Konfigurierbar: Neue Profile in types.yaml (z.B. structured_smart_edges_strict_L3).

    3. Async Ingestion ("Fire & Forget") (WP-14)

    • UI-Performance: Der Editor blockiert beim Speichern nicht mehr. Der Server meldet sofort 202 Queued, während die KI im Hintergrund (FastAPI BackgroundTasks) arbeitet.
    • Robustheit: Timeouts im Frontend durch lange LLM-Analysen gehören der Vergangenheit an.

    4. Flexible Change Detection (WP-14)

    • Multi-Hash: Das System berechnet nun zwei Prüfsummen pro Datei:
      • body: Nur Textinhalt.
      • full: Text + Metadaten (Tags, Type, Title).
    • Config: Über MINDNET_CHANGE_DETECTION_MODE kann gesteuert werden, wie sensibel der Importer auf Änderungen reagiert.

    5. Config-Hierarchie Fix (WP-14)

    Die Priorität von Einstellungen ist nun strikt geregelt:

    1. Frontmatter: (Überschreibt alles)
    2. Type Config: (types.yaml)
    3. Global Default: (Fallback)

    6. Codebase Hygiene & Architecture (Refactoring)

    • Zombie-Code entfernt: Über 15 ungenutzte Dateien (Legacy Embedding-Server, alte V1-Router, tote UI-Module wie ui_api.py, embed_server.py) wurden gelöscht.
    • Klare Struktur: Das Projekt folgt nun strikt dem 4-Säulen-Modell (Backend, Frontend, Batch/Ops, Tests).
    • Developer Guide: Die Dokumentation wurde um eine präzise Referenztabelle aller aktiven Module erweitert.

    🔧 Technische Änderungen (Breaking Changes)

    • Entfernte Module (Legacy Clean-Up):
      • app/embed_server.py & app/embeddings.py
      • app/routers/embed_router.py & app/routers/qdrant_router.py
      • app/frontend/ (ui_api.py, ui_editor.py, ui_callbacks.py, ui_sidebar.py)
      • app/core/env_vars.py
    • Neue Environment Variablen:
      • MINDNET_LLM_BACKGROUND_LIMIT=2 (Pflicht für Traffic Control)
      • MINDNET_CHANGE_DETECTION_MODE=full (Empfohlen)
    • Schema Update: Die chunks Collection in Qdrant erhält neue Felder (chunk_profile, suggested_edges).
    • Chunker Logic: Die Datei app/core/chunker.py wurde massiv erweitert (Hybrid-Logik).

    ⚠️ Action Items (Upgrade Guide)

    1. Environment aktualisieren:
      Fügen Sie folgende Zeilen zu Ihrer .env hinzu:
      MINDNET_LLM_BACKGROUND_LIMIT=2
      MINDNET_CHANGE_DETECTION_MODE=full
      
    2. Lokale Bereinigung (Wichtig):
      Da viele Dateien gelöscht wurden, entfernen Sie bitte verwaiste Dateien, um Import-Fehler zu vermeiden:
      # Vorsicht: Löscht alle nicht getrackten Dateien!
      git clean -fdX
      # Alternativ: Manuelles Löschen der "embed_server.py" und alter Router.
      
    3. Full Rebuild (Zwingend):
      Da sich die Chunking-Strategie und die Hash-Berechnung geändert haben, ist ein vollständiger Re-Index notwendig, um Inkonsistenzen zu vermeiden.
      python3 -m scripts.reset_qdrant --mode wipe --prefix "mindnet" --yes
      python3 -m scripts.import_markdown --vault ./vault --prefix "mindnet" --apply --force
      
    Downloads