feat(admin): D-11 Ollama VLM caché par défaut + module admin_mode
## Module admin_mode.py Nouveau module qui détecte si l'application tourne en mode admin : - Variable d'environnement `ANON_ADMIN=1` (ou `true`/`yes`/`on`) - OU fichier `.admin` à la racine de l'application Expose : - `is_admin()` — retourne bool, caché en module - `admin_required(feature_name)` — garde qui lève RuntimeError si pas admin Pas de mot de passe — c'est un verrou "interdit aux distraits" pour ne pas exposer au bêta-testeur des options sensibles (envoi à Ollama, conf critique). Le vrai durcissement viendra avec D-13 (mode admin complet). ## GUI — VLM Ollama caché par défaut (D-11) Dans Pseudonymisation_Gui_V5.py, après l'import classique de VlmManager, on force VlmManager = None et VlmConfig = None **si le mode admin n'est pas actif**. Effet : - Bêta-testeur lambda : VLM Ollama complètement invisible et inactif (économise aussi la RAM du modèle CamemBERT-bio + downloads Ollama) - Mode admin activé : comportement actuel inchangé Tests manuels : - import GUI sans env : VlmManager = None ✅ - `ANON_ADMIN=1 python -c "import Pseudonymisation_Gui_V5"` : VlmManager est <class 'vlm_manager.VlmManager'> ✅ ## Reste à faire (D-13) - Mode admin = mot de passe / fingerprint - Cacher dans l'UI les widgets liés au VLM (cases à cocher, etc.) - Cacher d'autres réglages sensibles (stopwords personnalisés, regex_overrides, force_terms) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -77,6 +77,18 @@ except Exception:
|
||||
VlmManager = None # type: ignore
|
||||
VlmConfig = None # type: ignore
|
||||
|
||||
# D-11 : VLM Ollama caché par défaut. Activé seulement en mode admin
|
||||
# (env ANON_ADMIN=1 ou fichier .admin à côté de l'EXE). Empêche le bêta
|
||||
# d'envoyer du contenu à Ollama externe sans en avoir conscience.
|
||||
try:
|
||||
from admin_mode import is_admin as _is_admin_mode
|
||||
except Exception:
|
||||
def _is_admin_mode() -> bool:
|
||||
return False
|
||||
if not _is_admin_mode():
|
||||
VlmManager = None # type: ignore
|
||||
VlmConfig = None # type: ignore
|
||||
|
||||
try:
|
||||
import yaml
|
||||
except Exception:
|
||||
|
||||
Reference in New Issue
Block a user