Application de gestion centralisée
Go to file
alf 23033384c7 feat(voice): verrou voix↔profil + sync verrou-conscient + déclencheur auto
- store : colonne locked_profile_id (+ migration ALTER idempotente), lock_voice/
  unlock_voice. Verrou = assignation exclusive à un profil ; NULL = voix généraliste.
- orchestrator : list_voices expose locked_profile_id + used_by_profiles (croise
  profile.voice_id) ; sync_device enrôle+déploie les voix en attente, REFUSE de
  déployer une voix verrouillée sur une tablette sans le profil propriétaire.
- autosync : VoiceAutoSync — watcher de connexions armable depuis l'UI (désarmé par
  défaut), statut par tablette, ne fait rien si store verrouillé (PII), delete opt-in.
- API : lock/unlock, POST /{serial}/sync, GET/POST /voices/autosync (déclarées AVANT
  /{serial} pour éviter la capture "autosync" comme serial).
- tests : +8 (verrou, sync verrou-conscient, autosync). 39/39.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 16:20:55 +02:00
docs feat: store chiffré, dashboard web flotte, accès réseau + durcissements 2026-06-18 22:41:55 +02:00
kazeia_central feat(voice): verrou voix↔profil + sync verrou-conscient + déclencheur auto 2026-06-19 16:20:55 +02:00
tests feat(voice): verrou voix↔profil + sync verrou-conscient + déclencheur auto 2026-06-19 16:20:55 +02:00
.gitignore chore: socle Kazeia-central (étapes 0-1 lecture) + spec provider RPC 2026-06-18 14:51:41 +02:00
CLAUDE.md chore: socle Kazeia-central (étapes 0-1 lecture) + spec provider RPC 2026-06-18 14:51:41 +02:00
README.md chore: socle Kazeia-central (étapes 0-1 lecture) + spec provider RPC 2026-06-18 14:51:41 +02:00
pyproject.toml chore: socle Kazeia-central (étapes 0-1 lecture) + spec provider RPC 2026-06-18 14:51:41 +02:00

README.md

Kazeia-central

Console de poste (PC/Mac) qui pilote les tablettes Kazeia branchées en USB : récupération des conversations cliniques, gestion du corpus RAG, et parité avec Kazeia-admin (config, presets, profils, voix, mises à jour).

Architecture, contrat de protocole et décisions : voir CLAUDE.md. Spec des extensions provider à livrer à l'app patiente : docs/PROVIDER_RPC_SPEC.md.

État

Socle (étapes 0-1, lecture de flotte) en place :

  • kazeia_central/adb/ — wrapper adb (découverte, content query/call, push/pull).
  • kazeia_central/provider/ — client typé (pydantic) des endpoints provider existants.
  • kazeia_central/api/ — API FastAPI + (à venir) UI web locale.

Les écritures (config/presets/profils/RAG) et l'export des conversations attendent les méthodes call() base64-JSON côté app patiente (cf. docs/PROVIDER_RPC_SPEC.md).

Démarrer

python -m venv .venv && . .venv/bin/activate
pip install -e ".[dev]"
pytest -q                                   # tests unitaires (parsing)
uvicorn kazeia_central.api.app:app --reload # API sur http://127.0.0.1:8000

Prérequis : adb dans le PATH, tablette en débogage USB autorisé.

Repo

/opt/Kazeia-centralsibling de /opt/Kazeia et /opt/Kazeia-engine, repo git autonome (ne PAS placer sous /opt/Kazeia, cf. CLAUDE.md §7).