feat: add secure secret provider

This commit is contained in:
2026-07-30 17:47:36 +02:00
parent a28e2d8bc9
commit 570e7fa153
7 changed files with 471 additions and 7 deletions
+10 -6
View File
@@ -66,6 +66,10 @@ Rootserver:
- Offizielle Gemini-Prüfung abgeschlossen: `gemini-3.6-flash` und
`gemini-3.5-flash-lite` sind stabile GA-Modelle mit Free-Tier-Textnutzung;
Standard dieses Pakets wird ausschließlich `gemini-3.6-flash`.
- Sicherer Secret-Provider mit `keyring` 25.7.0 implementiert; unter Windows wird
der Windows Credential Locker verwendet.
- Secret-CLI: `javis secrets set gemini`, `status` und `delete gemini`; Setzen
verwendet verdeckte Eingabe und kein Befehl gibt den Schlüsselwert aus.
## Aktuelle Architektur
@@ -110,6 +114,7 @@ Rootserver:
- Aktuelle offizielle Gemini-Modelle, Free-Tier-Preise, dynamische Quoten,
Auth-Keys, GA-SDK, Fehlercodes und Datenschutzbedingungen geprüft und unter
`docs/GEMINI_PROVIDER.md` kompakt dokumentiert.
- Betriebssystemgebundenen Secret-Provider und isolierte Fake-Backend-Tests ergänzt.
## Aktuelle Tests
@@ -124,7 +129,7 @@ Letzter bestätigter Projektstand:
- uv-Lock und `uv sync --dev`: bestanden
- Python in `.venv`: 3.12.13
- Ruff in `.venv`: 0.16.0
- Unit-Tests: 13 bestanden
- Unit-Tests: 18 bestanden, davon 5 für Secret-Speicher und Secret-CLI
- Ruff Lint: bestanden
- Ruff Formatprüfung: bestanden
@@ -154,7 +159,7 @@ Abnahmestatus:
## Git-Stand
- aktueller Branch: `main`
- aktueller Branch: `feat/gemini-privacy-router`
- stabiler Branch: `main`
- Grundgerüstcommit: `6d04171`
- letzter Commit vor der Handoff-Verdichtung: `0e82748`
@@ -209,11 +214,10 @@ Abnahmestatus:
Als separates nächstes Featurepaket auf neuem Branch:
1. offizielle aktuelle Gemini-Free-Tier-Modelle und Kontingente neu prüfen
2. Secret-Provider ohne Schlüsselzugriff des Modells implementieren
3. Datenschutzrouting `allowed`/`ask`/`never` vor jedem Cloudaufruf erzwingen
4. Gemini als kostenlosen bevorzugten Provider und Ollama als lokalen
2. Datenschutzrouting `allowed`/`ask`/`never` vor jedem Cloudaufruf erzwingen
3. Gemini als kostenlosen bevorzugten Provider und Ollama als lokalen
Datenschutz-/Offline-/429-Fallback implementieren
5. `free_only = true`, keine Billing-Aktivierung und alle geforderten Erfolgs-,
4. `free_only = true`, keine Billing-Aktivierung und alle geforderten Erfolgs-,
Key-, 429-, Netzwerk-, Fallback- und Datenschutztests nachweisen
Keinen API-Key in Chat, Git, Obsidian, Logs oder Dokumentation übernehmen.