alf
7f999a06f0
feat(store): branchement API — déverrouillage opérateur, labels patients, audit
...
- API : /api/lock-status, /api/unlock, /api/lock, PUT /api/devices/{serial}/label,
/api/audit ; /api/devices enrichi du label patient quand le store est déverrouillé.
- db.py thread-safe (check_same_thread=False + RLock) pour le threadpool FastAPI ;
ajout lock(), device_labels().
- UI : barre de déverrouillage opérateur, affichage 👤 label, édition ✎ du nom.
- Sécurité : labels chiffrés (jamais en clair en base ni dans l'audit), opérations
journalisées, store re-verrouillable.
- tests : +5 intégration API↔store (dont non-fuite PII dans l'audit). 19/19.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 22:49:43 +02:00
alf
465ddd4e7a
feat: store chiffré, dashboard web flotte, accès réseau + durcissements
...
- store/ : archive clinique chiffrée (sqlite3 + PyNaCl SecretBox/Argon2id),
mapping serial→label patient, audit. Choix sqlite+PyNaCl plutôt que SQLCipher
(wheels Linux-only) pour rester facilement installable Mac/Win.
- web/ + montage StaticFiles : dashboard flotte en lecture (état, profils,
sessions, RAG, updates, crashes), HTML+JS vanilla sans build.
- __main__.py : `python -m kazeia_central`, host/port via env + auth HTTP Basic
optionnelle (KAZEIA_USER/PASS) pour exposition réseau (0.0.0.0).
- adb : devices() robuste au bruit daemon, réveil/retry du provider (§3.5).
- models : champs non-clés optionnels (résilience flotte hétérogène).
- spec : RAG à plat (miroir ConfigStore.toJson), ajout rag_dump_json, note PIN.
- tests : 14/14 (parsing adb + store chiffré).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 22:41:55 +02:00
Kazeia Team
311236cecc
chore: socle Kazeia-central (étapes 0-1 lecture) + spec provider RPC
...
- CLAUDE.md fondateur (archi, contrat protocole §4, décisions figées)
- docs/PROVIDER_RPC_SPEC.md : extensions call() base64-JSON à livrer à l'app
patiente (dump/apply config·presets·profils·RAG, export conversations file-drop
chiffré, handshake capabilities, token d'accès) — 100% additif, compat FROZEN
- kazeia_central/adb : wrapper adb (découverte, content query/call, push/pull)
- kazeia_central/provider : client typé pydantic des endpoints provider existants
(lecture) ; écritures/texte riche en NotImplemented explicite (dépend du RPC)
- kazeia_central/api : squelette FastAPI (lecture de flotte)
- tests/ : parsing content query + coercion pydantic
Repo autonome sibling de /opt/Kazeia et /opt/Kazeia-engine.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 14:51:41 +02:00