docs: update chat comfort status
This commit is contained in:
@@ -24,6 +24,10 @@ Alle wesentlichen Projektänderungen werden hier in verständlicher Form dokumen
|
|||||||
- Strikter Nullkostenmodus, lokale Schutzlimits und inhaltsfreies Provider-Audit.
|
- Strikter Nullkostenmodus, lokale Schutzlimits und inhaltsfreies Provider-Audit.
|
||||||
- Bereinigte CLI-Befehle `/provider`, `/privacy` und `/status`.
|
- Bereinigte CLI-Befehle `/provider`, `/privacy` und `/status`.
|
||||||
- Sicheres PowerShell-Startskript ohne Systemänderungen.
|
- Sicheres PowerShell-Startskript ohne Systemänderungen.
|
||||||
|
- Gemeinsames Streaming für Ollama und Gemini mit atomarer Speicherung,
|
||||||
|
Gedankenfilter, lesbarer Terminalausgabe und sicherem Strg+C-Abbruch.
|
||||||
|
- Automatische lokale Sitzungstitel, `/rename`, nummerierte `/sessions`,
|
||||||
|
`/load <NR|ID>` und begrenzte `/search`-Suche.
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
@@ -42,6 +46,8 @@ Alle wesentlichen Projektänderungen werden hier in verständlicher Form dokumen
|
|||||||
- Allgemeine unpersönliche Technikfragen werden präziser als `allowed`
|
- Allgemeine unpersönliche Technikfragen werden präziser als `allowed`
|
||||||
klassifiziert; persönliche, interne und geheime Inhalte behalten Vorrang.
|
klassifiziert; persönliche, interne und geheime Inhalte behalten Vorrang.
|
||||||
- Privacy-Ausgabe unterscheidet lokalen Modus von technischem Fallback.
|
- Privacy-Ausgabe unterscheidet lokalen Modus von technischem Fallback.
|
||||||
|
- SQLite-Sitzungen werden verlustfrei und idempotent um Titel und zuletzt
|
||||||
|
verwendeten Provider migriert.
|
||||||
|
|
||||||
### Security
|
### Security
|
||||||
|
|
||||||
@@ -51,5 +57,7 @@ Alle wesentlichen Projektänderungen werden hier in verständlicher Form dokumen
|
|||||||
Nicht-Billing deaktiviert; Javis aktiviert niemals Billing.
|
Nicht-Billing deaktiviert; Javis aktiviert niemals Billing.
|
||||||
- Cloudkontext wird lokal klassifiziert und minimiert; 429, Netzwerk-, Timeout-,
|
- Cloudkontext wird lokal klassifiziert und minimiert; 429, Netzwerk-, Timeout-,
|
||||||
Key- und Modellfehler fallen auf Ollama zurück.
|
Key- und Modellfehler fallen auf Ollama zurück.
|
||||||
|
- Gesundheits-, Symptom-, Verletzungs-, Medikamenten-, Diagnose-, Behandlungs-
|
||||||
|
und medizinische Notfallfragen werden vor Cloudclient-Erstellung strikt lokal behandelt.
|
||||||
- Gemini-/Datenschutzablauf wurde am 30.07.2026 zusätzlich von Pascal manuell
|
- Gemini-/Datenschutzablauf wurde am 30.07.2026 zusätzlich von Pascal manuell
|
||||||
erfolgreich abgenommen; kein Keywert erschien in der Ausgabe.
|
erfolgreich abgenommen; kein Keywert erschien in der Ausgabe.
|
||||||
|
|||||||
+8
-11
@@ -189,12 +189,15 @@ Letzter bestätigter Projektstand:
|
|||||||
- uv-Lock und `uv sync --dev`: bestanden
|
- uv-Lock und `uv sync --dev`: bestanden
|
||||||
- Python in `.venv`: 3.12.13
|
- Python in `.venv`: 3.12.13
|
||||||
- Ruff in `.venv`: 0.16.0
|
- Ruff in `.venv`: 0.16.0
|
||||||
- Unit-Tests: 91 bestanden; zusätzlich Navigation, eindeutige/mehrdeutige
|
- Unit-Tests: 91 bestanden; Navigation, Streaming, Migration, Datenschutz,
|
||||||
ID-Präfixe, begrenzte Suche und SQL-Sonderzeichen abgedeckt
|
ID-Präfixe, begrenzte Suche und SQL-Sonderzeichen abgedeckt
|
||||||
- PowerShell-Syntax des Startskripts: erfolgreich geparst
|
- PowerShell-Syntax des Startskripts: erfolgreich geparst
|
||||||
- Ruff Lint: bestanden
|
- Ruff Lint: bestanden
|
||||||
- Ruff Formatprüfung: bestanden
|
- Ruff Formatprüfung: bestanden
|
||||||
- lokaler CLI-Smoke ohne Secretzugriff: bestanden
|
- lokaler CLI-Smoke ohne Secretzugriff: bestanden
|
||||||
|
- echter Ollama-CLI-Streaming-Smoke mit Neustart/Laden: bestanden
|
||||||
|
- echter Gemini-Streaming-Smoke mit öffentlichem Inhalt: bestanden; ein Abschnitt,
|
||||||
|
20 sichtbare Zeichen, 14 Eingabe- und 4 Ausgabetoken; kein Keywert ausgegeben
|
||||||
- Obsidian-Vault unverändert: 1 Markdown-, 11 Gesamtdateien, letzter
|
- Obsidian-Vault unverändert: 1 Markdown-, 11 Gesamtdateien, letzter
|
||||||
Schreibzeitpunkt weiterhin 30.07.2026 15:42:31
|
Schreibzeitpunkt weiterhin 30.07.2026 15:42:31
|
||||||
- Rootserver und Ubuntu-Laptop wurden nicht kontaktiert
|
- Rootserver und Ubuntu-Laptop wurden nicht kontaktiert
|
||||||
@@ -237,18 +240,12 @@ Abnahmestatus:
|
|||||||
- medizinischer Datenschutz-Fix: `9148193`
|
- medizinischer Datenschutz-Fix: `9148193`
|
||||||
- Provider- und CLI-Streaming: `00a5a6c`
|
- Provider- und CLI-Streaming: `00a5a6c`
|
||||||
- SQLite-Titel und Migration: `112ae6d`
|
- SQLite-Titel und Migration: `112ae6d`
|
||||||
|
- Sitzungsnavigation: `43c1f76`
|
||||||
- Feature-Branch ist als `7a14fe8` zu
|
- Feature-Branch ist als `7a14fe8` zu
|
||||||
`origin/feat/gemini-privacy-router` gepusht
|
`origin/feat/gemini-privacy-router` gepusht
|
||||||
- konfliktfreier Merge nach `main`: `564a3fd`
|
- konfliktfreier Merge nach `main`: `564a3fd`
|
||||||
- 66 Unit-Tests, Ruff und Strukturprüfung auf dem gemergten `main` bestanden
|
- 66 Unit-Tests, Ruff und Strukturprüfung auf dem gemergten `main` bestanden
|
||||||
- `main` erfolgreich zu `origin/main` gepusht; Remote-Tracking ist synchron
|
- `main` erfolgreich zu `origin/main` gepusht; Remote-Tracking ist synchron
|
||||||
- Python-Entwicklungsumgebung auf dem Feature-Branch: `fa90a5c`
|
|
||||||
- Laufzeit-/Modelldokumentation: `10d7cd7`
|
|
||||||
- Chatkern und CLI: `ec9b2f9`
|
|
||||||
- Unit-Tests: `b153daa`
|
|
||||||
- Feature-Dokumentation: `5d567e5`
|
|
||||||
- lokaler Merge nach `main`: `f3d6dfb`
|
|
||||||
- geprüfter und gepushter Abschlussstand vor diesem Handoff-Update: `0a550e6`
|
|
||||||
- Secret-Provider: `570e7fa`
|
- Secret-Provider: `570e7fa`
|
||||||
- Datenschutz/Nullkosten: `286d96d`
|
- Datenschutz/Nullkosten: `286d96d`
|
||||||
- isolierter Gemini-Provider: `f3e1183`
|
- isolierter Gemini-Provider: `f3e1183`
|
||||||
@@ -266,7 +263,7 @@ Abnahmestatus:
|
|||||||
|
|
||||||
- endgültiger Produkt-/Repositoryname bleibt offen
|
- endgültiger Produkt-/Repositoryname bleibt offen
|
||||||
- Startskript startet Ollama bei Bedarf pro Prozess; kein Autostart oder Dienst
|
- Startskript startet Ollama bei Bedarf pro Prozess; kein Autostart oder Dienst
|
||||||
- Antworten werden gestreamt; Sitzungen besitzen noch keine Titel oder Suche
|
- Antworten werden gestreamt; Titel, Navigation und Suche sind implementiert
|
||||||
- genauer späterer Obsidian-Schreibbereich ist nicht freigegeben
|
- genauer späterer Obsidian-Schreibbereich ist nicht freigegeben
|
||||||
- normaler Secret-Provider ist festgelegt: Betriebssystem-Keyring; eine
|
- normaler Secret-Provider ist festgelegt: Betriebssystem-Keyring; eine
|
||||||
Klartext-XML wird nicht für API-Schlüssel verwendet
|
Klartext-XML wird nicht für API-Schlüssel verwendet
|
||||||
@@ -290,8 +287,8 @@ Abnahmestatus:
|
|||||||
|
|
||||||
## Nächster sinnvoller Auftrag
|
## Nächster sinnvoller Auftrag
|
||||||
|
|
||||||
Auf `feat/chat-comfort` als Nächstes Gesamtsicherheitsprüfungen sowie lokale
|
Auf `feat/chat-comfort` als Nächstes Dokumentation committen, Branch pushen,
|
||||||
Ollama-/Neustart-Smokes und kleinen echten Gemini-Streaming-Test ausführen.
|
nach `main` mergen, dort erneut testen und `main` pushen.
|
||||||
Medizinische Antwortqualität bleibt ein späteres Sicherheits-/Systemprompt-Thema.
|
Medizinische Antwortqualität bleibt ein späteres Sicherheits-/Systemprompt-Thema.
|
||||||
Noch keine Obsidian-Integration oder Tools beginnen.
|
Noch keine Obsidian-Integration oder Tools beginnen.
|
||||||
|
|
||||||
|
|||||||
+12
-12
@@ -2,22 +2,22 @@
|
|||||||
|
|
||||||
## Ausgangsstand
|
## Ausgangsstand
|
||||||
|
|
||||||
Der Core-Chat und der Gemini-/Datenschutz-Meilenstein sind automatisiert durch
|
Der Core-Chat, Gemini-/Datenschutz-Meilenstein und das Chatkomfort-Paket sind
|
||||||
Codex und am 30.07.2026 manuell durch Pascal abgenommen. Der Featurestand ist zum
|
automatisiert geprüft. Pascal hat Core-Chat sowie Gemini/Datenschutz am
|
||||||
Merge freigegeben.
|
30.07.2026 manuell abgenommen.
|
||||||
|
|
||||||
Bestätigt sind echter Gemini-Erfolg, verdeckte Key-Speicherung, Nullkostenmodus,
|
Chatkomfort umfasst sicheres Ollama-/Gemini-Streaming, Strg+C ohne Teilpersistenz,
|
||||||
bereinigter Status, Cloudzähler, `ask`- und `never`-Routing, erzwungener lokaler
|
medizinisches `never`, automatische und manuelle Sitzungstitel, nummerierte
|
||||||
Modus sowie das Startskript.
|
Listen, Laden per Nummer/ID-Präfix und begrenzte Suche in Titeln/Benutzertexten.
|
||||||
|
|
||||||
## Nächstes sinnvolles Paket
|
91 Unit-Tests, Ruff, Struktur-, Secret-, Gitignore- und Auditprüfungen sowie
|
||||||
|
echte Ollama- und Gemini-Streaming-Smokes sind erfolgreich.
|
||||||
|
|
||||||
Nur ein kleines Chatkomfort-/Robustheitsthema auswählen, zum Beispiel:
|
## Nächster sinnvoller Schritt
|
||||||
|
|
||||||
- automatische, lokal erzeugte Sitzungstitel und Sitzungssuche oder
|
Zuerst nur den Git-Abschluss des Chatkomfort-Branches prüfen beziehungsweise
|
||||||
- Streaming lokaler und Cloudantworten mit sauberem Abbruchverhalten
|
den finalen Stand aus `docs/CHATGPT_HANDOFF.md` übernehmen. Danach mit Pascal
|
||||||
|
ein einzelnes nächstes Paket festlegen; noch keine Folgephase automatisch beginnen.
|
||||||
Vorher wie immer Branch, Arbeitsbaum, aktuellen Handoff und Tests prüfen.
|
|
||||||
|
|
||||||
## Weiterhin nicht beginnen
|
## Weiterhin nicht beginnen
|
||||||
|
|
||||||
|
|||||||
+34
-19
@@ -1,6 +1,6 @@
|
|||||||
# Projektstatus
|
# Projektstatus
|
||||||
|
|
||||||
Stand: Gemini-Free-Feature automatisiert geprüft, 30.07.2026.
|
Stand: Chatkomfort-Feature vollständig automatisiert geprüft, 30.07.2026.
|
||||||
|
|
||||||
## Erreicht
|
## Erreicht
|
||||||
|
|
||||||
@@ -20,10 +20,15 @@ Stand: Gemini-Free-Feature automatisiert geprüft, 30.07.2026.
|
|||||||
- zwei echte deutsche Modellantworten erfolgreich vollständig auf der RTX 3060 erzeugt
|
- zwei echte deutsche Modellantworten erfolgreich vollständig auf der RTX 3060 erzeugt
|
||||||
- kalter Test 36,19 s, warmer Kurztest 0,56 s; geladene GPU-Belegung 6.842 MiB
|
- kalter Test 36,19 s, warmer Kurztest 0,56 s; geladene GPU-Belegung 6.842 MiB
|
||||||
- lokaler Ollama-Provider, zentrale Konfiguration und SQLite-Sitzungsspeicher implementiert
|
- lokaler Ollama-Provider, zentrale Konfiguration und SQLite-Sitzungsspeicher implementiert
|
||||||
- CLI mit `/new`, `/sessions`, `/load`, `/clear`, `/help` und `/exit` implementiert
|
- CLI streamt Antworten und unterstützt `/new`, nummerierte `/sessions`,
|
||||||
|
`/load <NR|ID>`, `/search`, `/rename`, `/clear`, `/help` und `/exit`
|
||||||
|
- bestehende SQLite-Datenbanken werden automatisch, transaktional und
|
||||||
|
wiederholbar um Sitzungstitel und zuletzt verwendeten Provider migriert
|
||||||
|
- lokale Titelbildung ohne Modellaufruf; offensichtliche Secrets und medizinische
|
||||||
|
Inhalte werden nicht wörtlich in automatische Titel übernommen
|
||||||
- echte CLI-Modellantwort sowie Laden und Fortsetzen derselben Sitzung in einem
|
- echte CLI-Modellantwort sowie Laden und Fortsetzen derselben Sitzung in einem
|
||||||
neuen Prozess bestätigt
|
neuen Prozess bestätigt
|
||||||
- 13 Unit-Tests, Ruff und Strukturprüfung erfolgreich
|
- 91 Unit-Tests, Ruff, Struktur-, Gitignore-, Secret- und Auditprüfung erfolgreich
|
||||||
- lokaler Core-Chat am 30.07.2026 zusätzlich von Pascal manuell erfolgreich
|
- lokaler Core-Chat am 30.07.2026 zusätzlich von Pascal manuell erfolgreich
|
||||||
geprüft: deutsche Antworten, Sitzungskontext, `/sessions`, `/exit`, Neustart,
|
geprüft: deutsche Antworten, Sitzungskontext, `/sessions`, `/exit`, Neustart,
|
||||||
`/load <UUID>`, vollständiger Verlauf und Fortsetzung
|
`/load <UUID>`, vollständiger Verlauf und Fortsetzung
|
||||||
@@ -38,6 +43,22 @@ Stand: Gemini-Free-Feature automatisiert geprüft, 30.07.2026.
|
|||||||
- für produktive Nutzung freigegeben: nicht separat erklärt; keine spätere Tool-,
|
- für produktive Nutzung freigegeben: nicht separat erklärt; keine spätere Tool-,
|
||||||
Obsidian- oder Autonomiefunktion
|
Obsidian- oder Autonomiefunktion
|
||||||
|
|
||||||
|
## Chatkomfort-Meilenstein
|
||||||
|
|
||||||
|
- Branch `feat/chat-comfort`
|
||||||
|
- Ollama und Gemini verwenden denselben optionalen Streamingvertrag; Provider
|
||||||
|
ohne Streaming bleiben kompatibel
|
||||||
|
- keine versteckten Gedanken; Terminal-Markdown wird lesbar bereinigt
|
||||||
|
- vollständige Antwort wird genau einmal gespeichert; Strg+C und Streamfehler
|
||||||
|
hinterlassen keine unvollständige Nachricht
|
||||||
|
- medizinische Fragen werden vor jeder Cloudclient-Erstellung zwingend `never`
|
||||||
|
- Sitzungsliste zeigt Nummer, kurze ID, Titel, Datum, Nachrichtenanzahl und Provider
|
||||||
|
- Laden per letzter Listennummer oder eindeutigem ID-Präfix; Mehrdeutigkeit wird erklärt
|
||||||
|
- Suche ist auf 20 Ergebnisse begrenzt, parametrisiert und durchsucht nur Titel
|
||||||
|
sowie Benutzernachrichten
|
||||||
|
- echter Ollama-CLI-Streaming-/Neustart-Smoke und echter kleiner
|
||||||
|
Gemini-Streaming-Smoke mit öffentlichem Inhalt erfolgreich
|
||||||
|
|
||||||
## Gemini-/Datenschutz-Meilenstein
|
## Gemini-/Datenschutz-Meilenstein
|
||||||
|
|
||||||
- Branch `feat/gemini-privacy-router`
|
- Branch `feat/gemini-privacy-router`
|
||||||
@@ -67,7 +88,7 @@ Stand: Gemini-Free-Feature automatisiert geprüft, 30.07.2026.
|
|||||||
- `/privacy` trennt lokalen Modus von einem technischen Provider-Fallback
|
- `/privacy` trennt lokalen Modus von einem technischen Provider-Fallback
|
||||||
- sicheres `scripts/start-javis.ps1` mit relativer Repositoryprüfung,
|
- sicheres `scripts/start-javis.ps1` mit relativer Repositoryprüfung,
|
||||||
Loopback-Ollama und überschreibbaren externen Pfaden
|
Loopback-Ollama und überschreibbaren externen Pfaden
|
||||||
- 66 Unit-Tests aktuell erfolgreich; PowerShell-Syntax, Lockfile, Sync,
|
- 91 Unit-Tests aktuell erfolgreich; PowerShell-Syntax, Lockfile, Sync,
|
||||||
Strukturprüfung, Secret-Scan, Gitignore, Ruff-Format und Lint sauber
|
Strukturprüfung, Secret-Scan, Gitignore, Ruff-Format und Lint sauber
|
||||||
|
|
||||||
## Nicht implementiert
|
## Nicht implementiert
|
||||||
@@ -77,24 +98,18 @@ Living-Mind-Frontend.
|
|||||||
|
|
||||||
## Git
|
## Git
|
||||||
|
|
||||||
- aktueller Branch: `main`
|
- aktueller Branch: `feat/chat-comfort`
|
||||||
- Feature-Commit: `7a14fe8`
|
- Basis: `main` bei `77b510b`
|
||||||
- Merge-Commit: `564a3fd`
|
- medizinisches Routing: `9148193`
|
||||||
- Tests auf dem gemergten `main`: 66 bestanden
|
- Streaming: `00a5a6c`
|
||||||
- `main` erfolgreich zu `origin/main` gepusht
|
- Titelmigration: `112ae6d`
|
||||||
- Grundgerüstcommit: `6d04171`
|
- Sitzungsnavigation: `43c1f76`
|
||||||
- Basis des Feature-Branches: `e6eb995`
|
- vorheriger Gemini-/Datenschutz-Merge auf `main`: `564a3fd`
|
||||||
- Toolchain: `fa90a5c`
|
|
||||||
- Laufzeit/Modell: `10d7cd7`
|
|
||||||
- Chatkern: `ec9b2f9`
|
|
||||||
- Tests: `b153daa`
|
|
||||||
- Dokumentation: `5d567e5`
|
|
||||||
- Merge nach `main`: `f3d6dfb`
|
|
||||||
|
|
||||||
## Bekannte Einschränkung
|
## Bekannte Einschränkung
|
||||||
|
|
||||||
Das Startskript startet Ollama bei Bedarf lokal. Antworten werden noch nicht
|
Das Startskript startet Ollama bei Bedarf lokal. Eine Löschfunktion ist nicht
|
||||||
gestreamt; Sitzungen haben noch keine Titel, Suche oder Löschfunktion.
|
Bestandteil dieses Pakets.
|
||||||
`qwen3:8b` ist nicht automatisch für die GTX 1050 des späteren Zielhosts geeignet.
|
`qwen3:8b` ist nicht automatisch für die GTX 1050 des späteren Zielhosts geeignet.
|
||||||
Der Gemini-Key liegt ausschließlich im Betriebssystem-Keyring; sein Wert wurde
|
Der Gemini-Key liegt ausschließlich im Betriebssystem-Keyring; sein Wert wurde
|
||||||
von Codex weder gelesen noch ausgegeben. Pascal hat den echten Cloud- und
|
von Codex weder gelesen noch ausgegeben. Pascal hat den echten Cloud- und
|
||||||
|
|||||||
Reference in New Issue
Block a user