docs: update core chat status

This commit is contained in:
2026-07-30 17:04:46 +02:00
parent b153daa989
commit 5d567e5301
13 changed files with 173 additions and 63 deletions
+32 -15
View File
@@ -45,8 +45,8 @@ Rootserver:
## Aktueller technischer Stand
- Projektgrundgerüst ist auf `main` vorhanden und nach Gitea gepusht.
- Paketstruktur unter `src/javis` ist angelegt, enthält aber noch keinen Chatkern.
- Der erste lokale Textchat ist auf `feat/core-chat` implementiert und abgenommen.
- `uv run javis chat` liefert echte lokale Antworten und speichert Sitzungen in SQLite.
- Konfigurationsbeispiel, Sicherheitsdokumente, ADRs und Strukturtest sind vorhanden.
- Living-Mind-Verzeichnis ist ausschließlich ein inaktiver Vertrag ohne Frontend oder Fantasiedaten.
- Projektbezogene Codex-Rollen Scout, Architect, Builder, Verifier und Security Reviewer sind konfiguriert; maximal zwei Unteragenten, nur Builder schreibend.
@@ -58,15 +58,19 @@ Rootserver:
- Modelle liegen außerhalb von Git unter `D:\Javis-Data\ollama-models`.
- Der lokale Ollama-Dienst bindet nur an `127.0.0.1:11434`; PATH, Registry,
Autostart und Windows-Dienste blieben unverändert.
- CLI-Befehle: `/new`, `/sessions`, `/load <ID>`, `/clear`, `/help`, `/exit`.
- Sitzungsdaten liegen über `JAVIS_DATA_DIR` außerhalb von Git; der bestätigte
Smoke-Test nutzte `D:\Javis-Data\runtime\core-chat-smoke`.
- Kein Obsidian-, Laptop- oder Rootserverzugriff wurde implementiert.
- Keine KI-, Sprach-, Mobil- oder Statusfunktion ist implementiert.
- Keine Tool-, Sprach-, Mobil-, Status- oder Living-Mind-Funktion ist implementiert.
## Aktuelle Architektur
- modularer Monolith, bevorzugt Python
- plattformunabhängige Pfade und zentrale Konfiguration
- Modell-Provider als kleine austauschbare Schnittstelle
- SQLite für ersten Sitzungsspeicher
- Ollama-Provider akzeptiert nur lokale HTTP-Loopback-Adressen
- SQLite-Sitzungsspeicher mit atomaren Benutzer-/Assistentenpaaren
- Laufzeitdaten außerhalb von Git über `JAVIS_DATA_DIR` oder sicheren Plattformstandard
- lokale Modelle zuerst; keine kostenpflichtige API und kein stiller Cloud-Fallback
- Secret-Werte außerhalb von Code, Git, Prompts und Logs
@@ -92,11 +96,15 @@ Rootserver:
- Ollama-Archiv gegen die offizielle SHA-256-Prüfsumme verifiziert und portabel installiert.
- `qwen3:8b` außerhalb des Repositories geladen und mit zwei echten deutschen
Modellantworten auf der RTX 3060 geprüft.
- Chatkern, Ollama-Provider, zentrale Konfiguration, SQLite-Speicher und CLI implementiert.
- 13 Unit-Tests für Konfiguration, Speicher, Verlauf, Providervertrag und CLI ergänzt.
- Echten CLI-Chat ausgeführt und dieselbe Sitzung in einem neuen Prozess geladen,
aufgelistet und erfolgreich mit einer weiteren Modellantwort fortgesetzt.
- Obsidian, Ubuntu-Laptop und Rootserver blieben unverändert.
## Aktuelle Tests
Letzter bestätigter Grundgerüststand:
Letzter bestätigter Projektstand:
- Strukturprüfung: bestanden
- Unit-Test des Paketgerüsts: bestanden
@@ -107,6 +115,9 @@ Letzter bestätigter Grundgerüststand:
- uv-Lock und `uv sync --dev`: bestanden
- Python in `.venv`: 3.12.13
- Ruff in `.venv`: 0.16.0
- Unit-Tests: 13 bestanden
- Ruff Lint: bestanden
- Ruff Formatprüfung: bestanden
Lokaler Modell-Smoke-Test:
@@ -117,9 +128,12 @@ Lokaler Modell-Smoke-Test:
- GPU-Belegung: 1.418 MiB vorher, 6.842 MiB mit geladenem Modell
- Ollama meldet 100 % GPU und 5,6 GB Modellbelegung
Zwölf vorbereitete Unit-Tests für Konfiguration, SQLite, Kern, Provider und CLI
laufen in der Arbeitskopie bereits erfolgreich; sie sind noch nicht in den
Feature-Branch übernommen.
CLI-/Persistenz-Smoke:
- neuer CLI-Prozess erzeugte eine Sitzung und erhielt eine echte Modellantwort
- zweiter CLI-Prozess lud dieselbe UUID und zeigte zwei gespeicherte Nachrichten
- `/sessions` listete Provider, Modell und Nachrichtenanzahl korrekt
- fortgesetzte Frage erhielt die echte lokale Antwort `4`
## Git-Stand
@@ -129,6 +143,9 @@ Feature-Branch übernommen.
- letzter Commit vor der Handoff-Verdichtung: `0e82748`
- Handoff-Verdichtung auf `main`: `e6eb995`
- Python-Entwicklungsumgebung auf dem Feature-Branch: `fa90a5c`
- Laufzeit-/Modelldokumentation: `10d7cd7`
- Chatkern und CLI: `ec9b2f9`
- Unit-Tests: `b153daa`
- `origin` verwendet HTTPS
- kein Force-Push und keine umgeschriebene Historie
@@ -140,11 +157,13 @@ Feature-Branch übernommen.
- `e6eb995`: einmalige Archivierung und Verdichtung des Handoffs
- aktuell: isolierte Python-Toolchain und reproduzierbare Entwicklungsumgebung
- aktuell: portable Ollama-Laufzeit und `qwen3:8b` außerhalb von Git verifiziert
- aktuell: lokaler CLI-Chat und persistente SQLite-Sitzungen vollständig abgenommen
## Offene Entscheidungen und Fehler
- endgültiger Produkt-/Repositoryname bleibt offen
- Startmechanismus für Ollama ist noch bewusst manuell und nur pro Prozess konfiguriert
- Antworten werden noch nicht gestreamt; Sitzungen besitzen noch keine Titel oder Suche
- genauer späterer Obsidian-Schreibbereich ist nicht freigegeben
- endgültiger Secret-Provider ist offen; lokale Klartext-XML wäre nur restriktiv geschützt und Git-ignoriert zulässig
- Gaming-PC zeigt derzeit nur 8 statt 16 logische CPU-Prozessoren; Ursache ungeklärt
@@ -162,12 +181,10 @@ Feature-Branch übernommen.
## Nächster sinnvoller Auftrag
Der genehmigte nächste Meilenstein ist `feat/core-chat`:
1. vorbereiteten lokalen CLI-Chat mit Provider-Schnittstelle und SQLite-Sitzungen
in den Feature-Branch übernehmen
2. Unit-, Ruff-, Persistenz-, Secret- und echten CLI-Modell-Smoke-Test ausführen
3. Dokumentation und Handoff auf den tatsächlichen Endstand bringen
4. Feature-Branch pushen und nur bei vollständig erfüllter Abnahme nach `main` mergen
Nach Merge von `feat/core-chat` den Chat gemeinsam im Alltag benutzen und zuerst
konkrete Bedienungs- oder Stabilitätsprobleme sammeln. Mögliche kleine Folgepakete
sind ein klarer Start-/Stoppablauf, Streaming, Sitzungstitel oder eine explizite
lokale TOML-Konfiguration. Das spätere Laptop-Modell wird erst auf dessen Hardware
gemessen und separat entschieden.
Nicht Teil dieses Meilensteins: Obsidian-Integration, Serverzugriff, Sprache, Mobile Client oder Living-Mind-Code.